Скрытое распределение Дирихле против иерархического процесса Дирихле


49

Скрытое выделение Дирихле (LDA) и иерархический процесс Дирихле (HDP) являются темами процессов моделирования. Основное различие заключается в том, что LDA требует уточнения количества тем, а HDP - нет. Почему это так? И каковы различия, плюсы и минусы обоих тематических методов моделирования?


Предполагается ли, что HDP зависит от количества выбранных тем? С практической стороны, я пытался запустить реализацию Blei HDP, и он просто съел всю память, пока я не убил процесс. У меня 16 ГБ оперативной памяти и более 100 тыс. Коротких документов для анализа.
Владислав Довгальец

Ответы:


35

HDP - это расширение LDA, предназначенное для рассмотрения случая, когда количество компонентов смеси (количество «тем» в терминах моделирования документов) априори не известно. Так вот почему есть разница.

Используя LDA для моделирования документов, каждый рассматривает каждую «тему» ​​как распределение слов в некотором известном словаре. Для каждого документа из раздела Dirichlet берется смесь тем, а затем каждое слово в документе является независимым рисунком из этой смеси (то есть, выбирая тему, а затем используя ее для создания слова).

Для HDP (применяется к моделированию документов) также используется процесс Дирихле, чтобы зафиксировать неопределенность в количестве тем. Таким образом, выбирается общее базовое распределение, представляющее счетно-бесконечный набор возможных тем для корпуса, и затем из этого базового распределения выбирается конечное распределение тем для каждого документа.

Что касается плюсов и минусов, то у HDP есть то преимущество, что максимальное количество тем может быть неограниченным и извлечено из данных, а не указано заранее. Полагаю, что это сложнее реализовать и не нужно в случае, когда допустимо ограниченное количество тем.


22

Как ни странно, меня никогда не впечатлили результаты иерархического LDA. Кажется, он просто не находит оптимальный уровень детализации для выбора количества тем. Я добился гораздо лучших результатов, выполнив несколько итераций обычного LDA, вручную проверяя созданные им темы, решая, увеличивать или уменьшать количество тем, и продолжая итерации, пока не получу нужную гранулярность.

Помните: иерархический LDA не может читать ваши мысли ... он не знает, для чего вы на самом деле собираетесь использовать тему моделирования. Как и в случае с кластеризацией k-средних, вы должны выбрать k, наиболее подходящий для вашего варианта использования.


16

Я хотел бы отметить, поскольку это один из лучших запросов Google по данной теме: скрытое распределение дирихле (LDA), иерархические процессы дирихле (HDP) и иерархическое скрытое распределение дирихле (hLDA) - все это разные модели.

LDA моделирует документы как смеси дирихле с фиксированным количеством тем, выбранных пользователем в качестве параметра модели, которые, в свою очередь, представляют собой смеси слов дирихле. Это создает плоскую, мягкую вероятностную группировку терминов в темы и документов в темы.

HDP моделирует темы как смеси слов, во многом как LDA, но вместо того, чтобы документы представляли собой смеси фиксированного числа тем, число тем генерируется процессом дирихле, в результате чего число тем также является случайной величиной. «Иерархическая» часть имени относится к другому уровню, добавляемому к генеративной модели (процесс дирихле, создающий количество тем), а не к самим темам - они все еще остаются плоскими кластеризациями.

hLDA, с другой стороны, представляет собой адаптацию LDA, которая моделирует темы как смеси нового, отдельного уровня тем, взятых из дистрибутивов дирихле.а не процессы. Он по-прежнему рассматривает количество тем как гиперпараметр, т. Е. Не зависит от данных. Разница в том, что кластеризация теперь иерархическая - она ​​изучает кластеризацию самого первого набора тем, давая более общие, абстрактные отношения между темами (и, следовательно, словами и документами). Думайте об этом, как о кластеризации обмена стеками по математике, естественным наукам, программированию, истории и т. Д., В отличие от кластеризации науки о данных и перекрестной проверки в абстрактной теме статистики и программирования, которая разделяет некоторые понятия, скажем, с разработкой программного обеспечения, но с разработкой программного обеспечения. обмен кластеризован на более конкретном уровне с обменом информатики, и сходство между всеми упомянутыми обменами проявляется не так сильно, как в верхнем слое кластеров.


0

У меня ситуация, когда HDP работает хорошо по сравнению с LDA. У меня около 16000 документов, которые относятся к разным классам. Поскольку я не знаю, сколько разных тем я могу собрать для каждого класса, HDP действительно полезен в этом случае.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.