В настоящее время я работаю над слоем перевода, чтобы перевести многочисленные уникальные названия цветов в общее имя цвета. Например, METALLIC RED будет RED, а NAVY BLUE будет BLUE. У меня есть список цветов из источника, который я пытаюсь перевести, и базовый набор названий цветов, которые я хотел бы, чтобы они идентифицировались как. В настоящее время используется быстрый текст, когда я создаю модель, контролируемую или не контролируемую. Я получаю model.words как [''] независимо от того, маркирую я линии или нет. Я пытался удалить все специальные символы и т. Д. В словах. Я использую библиотеку fasttext и
Я пытался преобразовать мой набор данных для включения меток из моего фрейма данных:
__label__beige beige
__label__black black
__label__blue blue
__label__brown blue
__label__gold gold
__label__gray gray
__label__green green
__label__orange orange
__label__purple purple
__label__red red
__label__silver silver
__label__white white
__label__yellow yellow
__label__other other
Я также пытался удалить метки.
import joblib
import fasttext
import numpy as np
from pyfasttext import FastText
from tensorflow.keras.preprocessing.text import Tokenizer
model = fasttext.train_unsupervised('base_colors.txt')
Показывает все основные цвета, которые я перечислил.
Я ожидал бы при запуске model.words я получил бы:
бежевый черный синий коричневый золотой серый серый зеленыйоранжевый фиолетовый красный серебряный белый желтый другой
Вместо этого я получаю:
['</s>']
Пример набора данных, который я пытаюсь перевести:
ultra silv met
sunrise orange
polo grn met
red jewel tint
charcaol
cream ivory
lt driftwd met
blue mist
silvermist
charoal
3gcpkte77dg146719
blue granilte met
steele green
cosmic silv
whitwe diamond
blue granit
Решение. Использование предварительно обученного вектора вместе с вводом с несколькими цветами, помеченными.
./fasttext supervised -input base_colors.txt -output model -pretrainedVectors cc.en.300.vec -dim 300