Я новичок в области моделирования. Моя цель - найти ключевые темы из документа. Я планирую использовать lda для этой цели. Но в lda количество тем должно быть предопределено. Я считаю, что если документ из другого домена, который не был в учебном корпусе, не даст правильных результатов. Есть ли альтернативное решение? Является ли моя мысль правильной?Динамическое количество тем в моделях для темы
ответ
Двумя хорошими кандидатами для изучения тем являются модели с использованием скрытого распределения дирихле (LDA) и иерархического процесса в формате Dirichlet Process (HDP).
Для LDA количество тем K фиксировано и считается известным заранее. Алгоритмы быстрого вывода, такие как алгоритм Вариационного Байеса (VB), реализованный в scikit и gensim, позволяют проводить обучение на очень больших наборах данных (например, New York Times или Wikipedia). Обучаясь на больших корпусах и устанавливая высоту K, мы можем избежать проблемы переустановки и изучения значимых тем из образцов документов. Для LDA кросс-валидация обычно используется для установки K, оценивая недоумение для различного количества тем и выбирая K, который минимизирует недоумение.
В качестве альтернативы, тема темы HDP (реализованная в gensim) автоматически изучает количество тем из данных. Установив параметры концентрации и уровни усечения, количество тем определяется моделью. Эффективные алгоритмы вывода, такие как онлайн-вариационный вывод для HDP, позволяют обучать массивные наборы данных и открывать осмысленные темы.
Возможно, вы имели в виду только один документ, когда вы говорите «документ»? Моделирование темы с помощью LDA имеет смысл только тогда, когда у вас есть корпус, состоящий из многих документов. Также обратите внимание, что «тема» в теме моделирования имеет довольно специфическое значение, она не идентична «задаче маркировки». – jknappen