Скрытое размещение Дирихле - Latent Dirichlet allocation

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

История

В контексте популяционная генетика, LDA был предложен Дж. К. Притчард, М. Стивенс и П. Доннелли в 2000 г.[1][2]

LDA применялась в машинное обучение к Дэвид Блей, Эндрю Нг и Майкл И. Джордан в 2003 г.[3]

Обзор

Эволюционная биология и биомедицина

В эволюционной биологии и биомедицине модель используется для обнаружения наличия структурированной генетической изменчивости в группе людей. Модель предполагает, что аллели, принадлежащие исследуемым людям, происходят из различных существующих или прошлых популяций. Модель и различные алгоритмы вывода позволяют ученым оценивать частоты аллелей в этих исходных популяциях и происхождение аллелей, переносимых исследуемыми людьми. Исходные популяции можно интерпретировать постфактум с точки зрения различных эволюционных сценариев. В ассоциативные исследования, обнаружение наличия генетической структуры считается необходимым предварительным шагом во избежание сбивать с толку.

Инженерное дело

Одним из примеров LDA в инженерии является автоматическая классификация документов и оценка их соответствия различным темам.

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

Например, в модели LDA могут быть темы, которые можно классифицировать как CAT_related и DOG_related. В теме есть вероятность появления различных слов, например молоко, мяу, и котенок, который может быть классифицирован и интерпретирован зрителем как "CAT_related". Естественно, слово Кот сам будет иметь высокую вероятность с учетом данной темы. В DOG_related Тема также имеет вероятность генерирования каждого слова: щенок, лаять, и кость может иметь высокую вероятность. Слова без особого отношения, например "the" (видеть служебное слово ), будет иметь примерно равную вероятность между классами (или может быть помещен в отдельную категорию). Тема тоже не семантически ни эпистемологически строго определен. Выявляется на основе автоматического определения вероятности совпадения терминов. Лексическое слово может встречаться в нескольких темах с разной вероятностью, однако с разным типичным набором соседних слов в каждой теме.

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

Модель

Обозначение пластины представляющий модель LDA.

С участием обозначение на табличке, который часто используется для обозначения вероятностные графические модели (PGMs) зависимости между многими переменными могут быть кратко зафиксированы. Ящики представляют собой «тарелки», представляющие реплики, которые являются повторяющимися объектами. Внешняя пластина представляет документы, а внутренняя пластина представляет собой повторяющиеся позиции слов в данном документе; каждая позиция связана с выбором темы и слова. Имена переменных определены следующим образом:

M обозначает количество документов
N количество слов в данном документе (документ я имеет слова)
α является параметром Дирихле при распределении тем по документам
β - параметр апора Дирихле по тематическому распределению слов.
это распределение тем для документа я
это распределение слов для темы k
это тема для j-е слово в документе я
это конкретное слово.
Обозначение таблички для LDA с распределением тематических слов по Дирихле

Тот факт, что W неактивен, означает, что слова единственные наблюдаемые переменные, а остальные переменные скрытые переменные.Как предложено в исходной статье[3], редкий априор Дирихле можно использовать для моделирования распределения тематических слов, следуя интуиции, что распределение вероятностей по словам в теме искажено, так что только небольшой набор слов имеет высокую вероятность. Полученная в результате модель является наиболее широко применяемым вариантом LDA на сегодняшний день. Обозначение на табличке для этой модели показано справа, где обозначает количество тем и находятся -мерные векторы, хранящие параметры распределений тематических слов по Дирихле ( количество слов в словаре).

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

Генеративный процесс

Чтобы на самом деле сделать вывод о темах в корпусе, мы представляем процесс генерации, посредством которого создаются документы, чтобы мы могли сделать вывод или реконструировать их. Мы представляем себе порождающий процесс следующим образом. Документы представлены как случайные смеси по скрытым темам, где каждая тема характеризуется распределением по всем словам. LDA предполагает следующий процесс генерации корпуса состоящий из документы каждый длины :

1. Выберите , куда и это Распределение Дирихле с симметричным параметром который обычно разрежен ()

2. Выберите , куда и обычно редкий

3. Для каждой позиции слова , куда , и

(а) Выберите тему
(б) Выберите слово

(Обратите внимание, что полиномиальное распределение здесь относится к полиномиальный только с одним испытанием, которое также известно как категориальное распределение.)

Длина рассматриваются как независимые от всех других переменных, генерирующих данные ( и ). Нижний индекс часто опускается, как на диаграммах, показанных здесь.

Определение

Формальное описание LDA выглядит следующим образом:

Определение переменных в модели
ПеременнаяТипСмысл
целое числоколичество тем (например, 50)
целое числоколичество слов в словаре (например, 50 000 или 1 000 000)
целое числоколичество документов
целое числоколичество слов в документе d
целое числообщее количество слов во всех документах; сумма всех значения, т.е.
положительный реальныйпредшествующий вес темы k в документе; обычно одинаково для всех тем; обычно число меньше 1, например 0.1, чтобы предпочесть редкое распределение тем, т.е. несколько тем в документе
K-мерный вектор положительных вещественных чиселсбор всех значения, рассматриваемые как один вектор
положительный реальныйпредшествующий вес слова ш в теме; обычно одинаково для всех слов; обычно число намного меньше 1, например 0,001, чтобы отдавать предпочтение разреженному распределению слов, т. Е. Несколько слов на тему.
V-мерный вектор положительных вещественных чиселсбор всех значения, рассматриваемые как один вектор
вероятность (действительное число от 0 до 1)вероятность слова ш происходит в теме k
V-мерный вектор вероятностей, сумма которых должна быть равна 1распределение слов по теме k
вероятность (действительное число от 0 до 1)вероятность темы k встречается в документе d
K-мерный вектор вероятностей, сумма которых должна составлять 1распределение тем в документе d
целое число от 1 до Kидентичность темы слова ш в документе d
N-мерный вектор целых чисел от 1 до Kидентичность темы всех слов во всех документах
целое число от 1 до Vидентичность слова ш в документе d
N-мерный вектор целых чисел от 1 до Vидентичность всех слов во всех документах

Затем мы можем математически описать случайные величины следующим образом:

Вывод

Изучение различных распределений (набор тем, связанные с ними вероятности слов, тема каждого слова и конкретная смесь тем каждого документа) - это проблема статистические выводы.

Моделирование Монте-Карло

В оригинальной статье Pritchard et al.[1] использовали аппроксимацию апостериорного распределения методом Монте-Карло. Альтернативное предложение методов вывода включает: Выборка Гиббса.[5]

Вариационный байесовский

Исходная бумага ML использовала вариационный байесовский приближение апостериорное распределение;[3]

Максимизация правдоподобия

Прямая оптимизация вероятности с помощью алгоритма релаксации блока оказывается быстрой альтернативой MCMC.[6]

Неизвестное количество популяций / тем

На практике заранее не известно наиболее подходящее количество групп населения или тем. Его можно оценить путем оценки апостериорного распределения с помощью [Цепи Маркова с обратимым скачком Монте-Карло][7]

Альтернативные подходы

Альтернативные подходы включают распространение ожидания.[8]


Недавние исследования были сосредоточены на ускорении вывода о скрытом распределении Дирихле для поддержки захвата огромного количества тем в большом количестве документов. Уравнение обновления свернутого пробоотборника Гиббса, упомянутое в предыдущем разделе, имеет естественную разреженность, которой можно воспользоваться. Интуитивно понятно, поскольку каждый документ содержит только подмножество тем , и слово также появляется только в подмножестве тем , приведенное выше уравнение обновления можно переписать, чтобы воспользоваться этой разреженностью.[9]

В этом уравнении у нас есть три члена, из которых два редкие, а другой маленький. Мы называем эти термины и соответственно. Теперь, если мы нормализуем каждый член, суммируя по всем темам, мы получим:

Здесь мы видим, что представляет собой совокупность тем, которые появляются в документе , и также является редким обобщением тем, что слово назначается для всего корпуса. с другой стороны, плотный, но из-за малых значений & , значение очень мало по сравнению с двумя другими членами.

Теперь, при отборе темы, если мы выберем случайную величину равномерно из , мы можем проверить, в какое ведро приземляется наш образец. Поскольку мала, вряд ли мы попадем в это ведро; однако, если мы попадаем в это ведро, выбор темы требует время (то же самое, что и оригинальный сэмплер Collapsed Gibbs). Однако, если мы попадаем в две другие группы, нам нужно будет проверить только подмножество тем, если мы будем вести учет разреженных тем. Тема может быть выбрана из ведро в время, и тема может быть выбрана из ведро в время, когда и обозначает количество тем, назначенных текущему документу и текущему типу слова соответственно.

Обратите внимание, что после выборки каждой темы обновление этих сегментов является основным арифметические операции.

Аспекты вычислительных деталей

Ниже приводится вывод уравнений для свернутая выборка Гиббса, что значит s и s будут интегрированы. Для простоты в этом выводе предполагается, что все документы имеют одинаковую длину. . Вывод также действителен, если длина документа различается.

Согласно модели, полная вероятность модели составляет:

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

Все независимы друг от друга и одинаковы для всех с. Так что мы можем лечить каждого и каждый раздельно. Сейчас мы сосредоточимся только на часть.

В дальнейшем мы можем сосредоточиться только на одном в дальнейшем:

Собственно, это скрытая часть модели для документ. Теперь мы заменяем вероятности в приведенном выше уравнении на выражение истинного распределения, чтобы записать явное уравнение.

Позволять быть количеством токенов слов в документ с тем же символом слова ( слово в словаре) присвоено тема. Так, трехмерный. Если какое-либо из трех измерений не ограничено конкретным значением, мы используем точку в скобках отметить. Например, обозначает количество токенов слов в документ, закрепленный за тема. Таким образом, большую правую часть приведенного выше уравнения можно переписать как:

Итак формулу интегрирования можно изменить на:

Ясно, что уравнение внутри интегрирования имеет тот же вид, что и уравнение Распределение Дирихле. Согласно Распределение Дирихле,

Таким образом,

Теперь обратим внимание на часть. Собственно, вывод часть очень похожа на часть. Здесь мы только перечисляем этапы вывода:

Для наглядности запишем окончательное уравнение с обоими и интегрировано:

Здесь цель Гиббса Сэмплинга - аппроксимировать распределение . С неизменна для любого из Z, уравнения Гиббса-семплинга могут быть получены из прямо. Ключевым моментом является получение следующей условной вероятности:

куда обозначает скрытая переменная слово токен в документ. И далее мы предполагаем, что его словесным символом является слово в словаре. обозначает все с, но . Обратите внимание, что сэмплированию Гиббса необходимо только выбрать значение для , согласно указанной выше вероятности, точное значение

но отношения между вероятностями, которые может иметь значение. Итак, приведенное выше уравнение можно упростить как:

Наконец, пусть иметь то же значение, что и но с не входит. Вышеупомянутое уравнение можно еще больше упростить, используя свойство гамма-функция. Сначала мы разбиваем суммирование, а затем снова объединяем его, чтобы получить -независимое суммирование, которое можно было отбросить:

Обратите внимание, что та же формула выводится в статье о Дирихле-полиномиальное распределение, как часть более общего обсуждения интеграции Распределение Дирихле приоры из Байесовская сеть.

Связанные проблемы

Связанные модели

Тематическое моделирование - классическое решение проблемы поиск информации использование связанных данных и семантических веб-технологий [10]. Связанные модели и методы, среди прочего, скрытое семантическое индексирование, независимый компонентный анализ, вероятностное латентно-семантическое индексирование, неотрицательная матричная факторизация, и Гамма-пуассоновское распределение.

Модель LDA очень модульная и поэтому может быть легко расширена. Основная область интересов - моделирование отношений между темами. Это достигается за счет использования другого распределения на симплексе вместо Дирихле. Коррелированная тематическая модель[11] следует этому подходу, создавая структуру корреляции между темами с помощью логистическое нормальное распределение вместо Дирихле. Другое расширение - иерархический LDA (hLDA),[12] где темы объединены в иерархию с помощью вложенных Китайский ресторанный процесс, структура которого узнается из данных. LDA также может быть расширено до корпуса, в котором документ включает два типа информации (например, слова и имена), как в LDA-двойная модель.[13]Непараметрические расширения LDA включают иерархический процесс Дирихле смешанная модель, которая позволяет неограниченному количеству тем и изучать их на основе данных.

Как отмечалось ранее, pLSA похож на LDA. Модель LDA - это, по сути, байесовская версия модели pLSA. Байесовская формулировка обычно лучше работает с небольшими наборами данных, потому что байесовские методы позволяют избежать переобучения данных. Для очень больших наборов данных результаты двух моделей имеют тенденцию сходиться. Одно отличие состоит в том, что pLSA использует переменную для представления документа в обучающей выборке. Итак, в pLSA, когда представлен документ, который модель не видела раньше, мы исправляем - вероятность слов по темам - быть тем, что было изучено из обучающей выборки, и использовать тот же алгоритм EM для вывода - распределение тем в . Блей утверждает, что этот шаг является обманом, поскольку вы, по сути, перестраиваете модель в соответствии с новыми данными.

Пространственные модели

В эволюционной биологии часто естественно предположить, что географическое положение наблюдаемых особей несут некоторую информацию об их происхождении. Это основа различных моделей генетических данных с географической привязкой.[7][14]

Варианты LDA использовались для автоматического разделения естественных изображений на категории, такие как «спальня» или «лес», путем обработки изображения как документа, а небольших участков изображения - как слов;[15] одна из вариаций называется Пространственное скрытое размещение Дирихле.[16]

Смотрите также

Рекомендации

  1. ^ а б Pritchard, J. K .; Стивенс, М .; Доннелли, П. (июнь 2000 г.). «Вывод структуры популяции с использованием данных мультилокусного генотипа». Генетика. 155 (2): стр. 945–959. ISSN  0016-6731. ЧВК  1461096. PMID  10835412.
  2. ^ Falush, D .; Стивенс, М .; Причард, Дж. К. (2003). «Вывод о структуре населения с использованием данных мультилокусного генотипа: сцепленные локусы и коррелированные частоты аллелей». Генетика. 164 (4): стр. 1567–1587. PMID  12930761.
  3. ^ а б c Блей, Дэвид М .; Ng, Andrew Y .; Иордания, Майкл I (Январь 2003 г.). Лафферти, Джон (ред.). «Скрытое размещение Дирихле». Журнал исследований в области машинного обучения. 3 (4–5): стр. 993–1022. Дои:10.1162 / jmlr.2003.3.4-5.993. Архивировано из оригинал на 2012-05-01. Получено 2006-12-19.
  4. ^ Джиролами, Марк; Кабан, А. (2003). Об эквивалентности PLSI и LDA. Труды SIGIR 2003. Нью-Йорк: Ассоциация вычислительной техники. ISBN  1-58113-646-3.
  5. ^ Гриффитс, Томас Л .; Стейверс, Марк (6 апреля 2004 г.). «Поиск научных тем». Труды Национальной академии наук. 101 (Приложение 1): 5228–5235. Bibcode:2004ПНАС..101.5228Г. Дои:10.1073 / pnas.0307752101. ЧВК  387300. PMID  14872004.
  6. ^ Александр, Дэвид Х .; Новембре, Джон; Ланге, Кеннет (2009). «Быстрая модельная оценка происхождения у неродственных людей». Геномные исследования. 19 (9): 1655–1664. Дои:10.1101 / гр.094052.109. ЧВК  2752134. PMID  19648217.
  7. ^ а б Guillot, G .; Estoup, A .; Мортье, Ф .; Коссон, Дж. (2005). «Пространственная статистическая модель ландшафтной генетики». Генетика. 170 (3): стр. 1261–1280. Дои:10.1534 / генетика.104.033803. ЧВК  1451194. PMID  15520263.
  8. ^ Минка, Томас; Лафферти, Джон (2002). Ожидание-распространение для модели генеративного аспекта (PDF). Труды 18-й конференции по неопределенности в искусственном интеллекте. Сан-Франциско, Калифорния: Морган Кауфманн. ISBN  1-55860-897-4.
  9. ^ Яо, Лимин; Мимно, Дэвид; Маккаллум, Эндрю (2009). Эффективные методы вывода тематической модели при потоковой передаче коллекций документов. 15-я международная конференция ACM SIGKDD по обнаружению знаний и интеллектуальному анализу данных.
  10. ^ Ламба, Маника; Мадхусудхан, Маргам (2019). «Сопоставление тем в журнале DESIDOC по библиотечным и информационным технологиям, Индия: исследование». Наукометрия. 120 (2): 477–505. Дои:10.1007 / s11192-019-03137-5. S2CID  174802673.
  11. ^ Блей, Дэвид М .; Лафферти, Джон Д. (2006). «Коррелированные тематические модели» (PDF). Достижения в системах обработки нейронной информации. 18.
  12. ^ Блей, Дэвид М .; Джордан, Майкл И.; Гриффитс, Томас Л .; Тененбаум, Джошуа Б. (2004). Иерархические тематические модели и вложенный китайский ресторанный процесс (PDF). Достижения в системах обработки нейронной информации 16: Материалы конференции 2003 г. MIT Press. ISBN  0-262-20152-6.
  13. ^ Шу, Лянцай; Лонг, Бо; Мэн, Вэйи (2009). Модель скрытой темы для полного разрешения проблем (PDF). 25-я Международная конференция IEEE по инженерии данных (ICDE 2009).
  14. ^ Guillot, G .; Leblois, R .; Coulon, A .; Франц, А. (2009). «Статистические методы в пространственной генетике». Молекулярная экология. 18 (23): стр. 4734–4756. Дои:10.1111 / j.1365-294X.2009.04410.x. PMID  19878454.
  15. ^ Ли, Фэй-Фэй; Перона, Пьетро. «Байесовская иерархическая модель для изучения категорий природных сцен». Труды конференции 2005 IEEE Computer Society по компьютерному зрению и распознаванию образов (CVPR'05). 2: 524–531.
  16. ^ Ван, Сяоган; Гримсон, Эрик (2007). «Пространственное скрытое размещение Дирихле» (PDF). Труды конференции по системам обработки нейронной информации (NIPS).

внешняя ссылка

  • jLDADMM Пакет Java для моделирования тем на обычных или коротких текстах. jLDADMM включает реализации тематической модели LDA и одна тема на документ Модель полиномиальной смеси Дирихле. jLDADMM также предоставляет реализацию для оценки кластеризации документов для сравнения тематических моделей.
  • STTM Пакет Java для моделирования коротких текстовых тем (https://github.com/qiang2100/STTM ). STTM включает следующие алгоритмы: Полиномиальная смесь Дирихле (DMM) на конференции KDD2014, Тематическая модель Битерма (BTM) в журнале TKDE2016, Сетевая тематическая модель Word (WNTM) в журнале KAIS2018, Тематическая модель на основе псевдодокументов (PTM) на конференции KDD2016 , Тематическая модель на основе самоагрегации (SATM) на конференции IJCAI2015, (ETM) на конференции PAKDD2017, Обобщенная модель полиномиальной смеси Дирихле (GPU-DMM) на основе обобщенной урны Поля (GPU) на конференции SIGIR2016, Generalized P´olya Urn (GPU) ) основанная на Пуассоне модель полиномиальной смеси Дирихле (GPU-PDMM) в журнале TIS2017 и модель скрытых функций с DMM (LF-DMM) в журнале TACL2015. STTM также включает шесть коротких текстовых корпусов для оценки. STTM представляет три аспекта о том, как оценивать производительность алгоритмов (то есть согласованность темы, кластеризацию и классификацию).
  • Лекция, в которой рассматриваются некоторые обозначения в этой статье: Видеолекция по LDA и тематическому моделированию Дэвида Блея или та же лекция на YouTube
  • Библиография LDA Д. Мимно Исчерпывающий список ресурсов, связанных с LDA (включая документы и некоторые реализации)
  • Gensim, Python +NumPy реализация онлайн-LDA для входов, размер которых превышает доступную RAM.
  • тематические модели и lda два р пакеты для LDA-анализа.
  • «Анализ текста с помощью R», включая методы LDA, видеопрезентация к собранию группы пользователей R в Лос-Анджелесе в октябре 2011 г.
  • МОЛОТОК Пакет на основе Java с открытым исходным кодом от Массачусетского университета в Амхерсте для тематического моделирования с помощью LDA также имеет независимо разработанный графический интерфейс, Инструмент тематического моделирования
  • LDA в Mahout реализация LDA с использованием Уменьшение карты на Hadoop Платформа
  • Учебное пособие по скрытому распределению Дирихле (LDA) для инфраструктуры машинных вычислений Infer.NET Платформа машинного обучения Microsoft Research C #
  • LDA в Spark: Начиная с версии 1.3.0, Apache Spark также имеет реализацию LDA
  • LDA, примерLDA Реализация MATLAB