Ответ 1
fastText предлагает больше, чем моделирование темы, это инструмент для генерации вложений слов и классификации текста с использованием мелкой нейронной сети. Авторы заявляют, что его производительность сопоставима с гораздо более сложными алгоритмами "глубокого обучения", но время обучения значительно ниже.
Плюсы:
= > Очень легко обучить вашу собственную модель fastText,
$ ./fasttext skipgram -input data.txt -output model
Просто укажите свой файл ввода и вывода, используемую архитектуру и все, но если вы хотите немного настроить свою модель, fastText предоставляет возможность также изменять гиперпараметры.
= > При создании словарных векторов fastText учитывает подчасти слов, называемых символьными n-граммами, так что похожие слова имеют схожие векторы, даже если они происходят в разных контекстах. Например, "контролируемые", "контролирующие" и "супервизор" все назначаются аналогичными векторами.
= > Предварительно подготовленную модель можно использовать для вычисления векторов слов для слов вне словарного запаса. Этот - мой любимый. Даже если словарь вашего тела конечен, вы можете получить вектор для почти любого слова, которое существует в мире.
= > fastText также предоставляет возможность генерировать векторы для абзацев или предложений. Подобные документы можно найти, сравнив векторы документов.
= > Также была включена опция предсказать вероятные метки для фрагмента текста.
= > Предварительно подготовленные векторы слов для примерно 90 языков, обучающихся в Википедии, доступны в официальном репо.
Минусы:
= > Поскольку fastText - это командная строка, я изо всех сил пытался включить это в свой проект, но это может быть не проблемой для других.
= > Нет встроенного метода для поиска похожих слов или абзацев.
Для тех, кто хочет больше узнать, вот ссылки на официальные научные статьи:
1) https://arxiv.org/pdf/1607.04606.pdf
2) https://arxiv.org/pdf/1607.01759.pdf
И ссылка на официальное репо: