LDA и тематическая модель
Я изучал LDA и модель темы в течение нескольких недель. Но из-за моих слабых математических способностей я не могу полностью понять его внутренние алгоритмы. Я использовал реализацию GibbsLDA, ввел много документов и установил номер темы равным 100, я получил файл с именем "final.theta", в котором хранится пропорция темы каждой темы в каждом документе. Этот результат хороший, я могу использовать пропорцию темы для выполнения многих других задач. Но когда я попробовал реализацию языка Blei на языке LDA, я получил только файл с именем final.gamma, но я не знаю, как преобразовать этот файл в стиль пропорции темы. Может кто-нибудь мне помочь. И я узнал, что модель LDA имеет много улучшенных версий (таких как CTM,HLDA), если я могу найти модель темы, похожую на LDA, я имею в виду, когда я вводю много документов, она может напрямую выводить пропорцию темы в документах., Большое спасибо!
2 ответа
Я думаю, что проблема с реализацией Blei заключается в том, что вы делаете вариационный вывод, выполняя:
$ lda inf [args...]
Когда вы хотите сделать оценку темы, с помощью:
$ lda est [args...]
Как только это будет выполнено, в текущем каталоге или в каталоге, указанном необязательным последним аргументом, будет находиться файл "final.beta". Затем вы запускаете скрипт python "themes.py", включенный в tar. Читайте здесь: http://www.cs.princeton.edu/~blei/lda-c/readme.txt описывает все это, особенно разделы B и D.
(Если это все еще не имеет смысла, дайте мне знать)
Что касается таких улучшений, как CTM и т. Д. Я ничего не знаю о HLDA, но в прошлом я использовал и LDA, и CTM, и я могу сказать, что ни один из них не является строго лучше, чем другой - это случай улучшения разные данные. CTM предполагает, что документы коррелированы, и использует это предположение для улучшения результатов, пока это правда.
Надеюсь это поможет!
Чтобы получить E[θ], просто нормализуйте гамму в каждом ряду. Это следует из свойств распределения Дирихле.