@vitalykhy
http://webinnews.ru/

Fasttext и «похожесть» строк. Как найти?

Есть хорошая библиотека от facebook под названием fasttext. Я совсем недавно приступил к изучению и мне необходима помощь.
Сейчас не совсем понимаю как можно найти по строке (допустим заголовок новости, как в яндексе) похожую новость.
Если я все верно понимаю, то данное сопоставление ищется по векторам. То есть на основании модели (тут тоже не совсем понятно как составить обучение такой модели на основании fasttext) мы получаем вектора на предложение (заголовок новости).
Далее мы берем новую новость и строим вектор по ней. По обоим векторам находим косинус и получаем итоговое соотношение похожести. Но в таком случае мы получаем, что у нас есть миллионы новостей в БД и мы получается должны для каждой новости строить такой вектор и где величина попадает в определенный процент - туда и относить?

В общем мне нужно помочь в понимании того:
1) как производить обучение такой модели на основании fasttext. В официальной документации я не понял принцип составление данных для обучения через label. Ведь в таком случае у меня будет масса лэйблов, так как новостей тоже может очень много. Как добавлять новую новость в модель? И нужно ли это делать?
2) как производить сопоставление. Тут достаточно будет описание алгоритма. Если есть возможность подкрепить формулой или выдуманным примером - буду очень признателен.

Также буду признателен, если подскажете где почитать. Углубляться в дебри не нужно, так как "магия" реализованная в библиотеке - это для саморазвития. Небольшое понимание основ у меня есть. А суть библиотеки - это скрыть от пользователя сложные расчеты. То есть примерно такую информацию хотел бы получить: вот статья - в ней рассказано как на основании такой-то информации получить такие-то результаты.

Очень жду от вас направлений (но не в гугл).
  • Вопрос задан
  • 422 просмотра
Пригласить эксперта
Ответы на вопрос 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
NetworkTopology-FullyConnected.png
Full-mesh нужных строк прогоняем через Stumper API - Compare с записью каждой пары в базу и нет проблем.
Затем, локально строим нужный граф с любого узла к любому.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы