Я могу неправильно понять, как работают fasttext / deep learning для классификации, я хотел бы принять во внимание ближайших соседей для предсказания меток. Цель моей работы - предугадать ярлык с синонимами.
Я тренирую большой набор данных с помощью fasttext:
fasttext supervised -input data/spam_status.txt -output models/sem -lr 1.0 -wordNgrams 1 -epoch 25
Где spam_status.txt использует регулярное выражение для обозначения сообщения, содержащего слово «скайп»:
__label__skype i dont have skype __NUMBER__ sorry
__label__skype skype
__label__skype si ta un skype si
__label__skype i will give u my skype
__label__skype pv ici no skype
__label__skype skype
И множество других сообщений с другими ярлыками или «ОК», если ничего не найдено.
Ближайшие соседи "скайпа" (с fasttext nn models/sem.bin
):
- Эл. адрес
- вибер
- электронная почта
- skp
Это отлично, Fasttext подскажет хорошие похожие слова. Но если я спрошу предсказание:
fasttext predict-prob ./models/sem.bin -
donne moi ton skype
__label__skype 1.00001
donne moi ton viber
__label__ok 1.00001
donne moi ton emaill
__label__ok 1.00001
Почему здесь не учитывается NN?