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

редактировать

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

Содержание
  • 1 История
  • 2 Обзор
    • 2.1 Эволюционная биология и биомедицина
    • 2.2 Инженерия
  • 3 Модель
    • 3.1 Генеративный процесс
    • 3.2 Определение
  • 4 Заключение
    • 4.1 Моделирование Монте-Карло
    • 4.2 Вариационный Байес
    • 4.3 Максимизация правдоподобия
    • 4.4 Неизвестное количество популяций / тем
    • 4.5 Альтернативные подходы
    • 4.6 Аспекты вычислительных деталей
  • 5 Связанные проблемы
    • 5.1 Связанные модели
    • 5.2 Пространственные модели
  • 6 См. Также
  • 7 Ссылки
  • 8 Внешние ссылки
История

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

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

Обзор

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

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

инженерии

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

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

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

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

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

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

M обозначает количество документов
N - количество слов в данном документе (документ i имеет N i {\ displaystyle N_ {i}}N_ {i} слов)
α - параметр предшествующего Дирихле в распределении тем по каждому документу
β - параметр предшествующего Дирихле при распределении слов по темам
θ i {\ displaystyle \ theta _ {i}}\ theta _ {i} - распределение тем для документа i
; φ k {\ displaystyle \ varphi _ {k}}\ varphi _ {k} - это распределение слов для темы k
zij {\ displaystyle z_ {ij}}z_ {ij} - тема для j-го слова в документе i
wij {\ displaystyle w_ {ij}}w_{ij}- это конкретное слово.
Обозначение на табличке для LDA с распределением тематических слов по Дирихле

Тот факт, что W выделен серым цветом, означает, что слова wij {\ displaystyle w_ {ij}}w_{ij}- единственные наблюдаемые переменные, а остальные переменные - скрытые переменные. Как было предложено в исходной статье, редкий априор Дирихле можно использовать для моделирования распределения тематических слов, следуя интуиции, что распределение вероятностей по словам в теме искажено, так что только небольшой набор слов имеет высокую вероятность. Полученная модель является наиболее широко применяемым вариантом LDA сегодня. Обозначение на табличке для этой модели показано справа, где K {\ displaystyle K}K обозначает количество тем, а φ 1,…, φ K {\ displaystyle \ varphi _ {1}, \ dots, \ varphi _ {K}}{\ displaystyle \ varphi _ {1}, \ dots, \ varphi _ {K}} - это V {\ displaystyle V}V -мерные векторы, хранящие параметры тематического слова, распределенного по Дирихле. распределения (V {\ displaystyle V}V - количество слов в словаре).

Полезно рассматривать сущности, представленные θ {\ displaystyle \ theta}\ theta и φ {\ displaystyle \ varphi}\ varphi как матрицы, созданные путем декомпозиции исходной матрицы документа-слова, представляющей корпус моделируемых документов. В этом представлении θ {\ displaystyle \ theta}\ theta состоит из строк, определенных документами, и столбцов, определенных тем, а φ {\ displaystyle \ varphi}\ varphi состоит из строк, определяемых темами, и столбцов, определяемых словами. Таким образом, φ 1,…, φ K {\ displaystyle \ varphi _ {1}, \ dots, \ varphi _ {K}}{\ displaystyle \ varphi _ {1}, \ dots, \ varphi _ {K}} относится к набору строк или векторов, каждый из который является распределением по словам, а θ 1,…, θ M {\ displaystyle \ theta _ {1}, \ dots, \ theta _ {M}}{\ displaystyle \ theta _ {1}, \ dots, \ theta _ {M}} относится к набору строк, каждая из которых представляет собой распределение по темам.

Генерирующий процесс

Чтобы фактически вывести темы в корпусе, мы представляем генерирующий процесс, посредством которого создаются документы, так что мы можем сделать вывод или реконструировать их. Мы представляем себе порождающий процесс следующим образом. Документы представлены как случайные смеси по скрытым темам, где каждая тема характеризуется распределением по всем словам. LDA предполагает следующий процесс генерации для корпуса D {\ displaystyle D}D , состоящего из M {\ displaystyle M}M документов, каждый длиной N i {\ displaystyle N_ {i}}N_ {i} :

1. Выберите θ i ∼ Dir ⁡ (α) {\ displaystyle \ theta _ {i} \ sim \ operatorname {Dir} (\ alpha)}{\ displaystyle \ theta _ {i} \ sim \ operatorname {Dir} (\ alpha)} , где i ∈ {1,…, M} {\ displaystyle i \ in \ {1, \ dots, M \}}i \ in \ {1, \ dots, M \} и D ir (α) {\ displaystyle \ mathrm {Dir} (\ alpha)}\ mathrm {Dir} (\ alpha) - это распределение Дирихле с симметричным параметром α {\ displaystyle \ alpha}\ alpha , который обычно является разреженным (α < 1 {\displaystyle \alpha <1}\ alpha <1 )

2. Выберите φ k ∼ Dir ⁡ (β) {\ displaystyle \ varphi _ {k} \ sim \ operatorname {Dir} (\ beta)}{\ displaystyle \ varphi _ {k} \ sim \ operatorname {D ir} (\ beta)} , где k ∈ {1,…, K} {\ displaystyle k \ in \ {1, \ dots, K \}}k \ in \ {1, \ dots, K \} и β {\ displaystyle \ beta}\ beta обычно разреженные

3. Для каждого позиций слов i, j {\ displaystyle i, j}я, j , где i ∈ {1,…, M} {\ displaystyle i \ in \ {1, \ dots, M \}}i \ in \ {1, \ dots, M \} и j ∈ {1,…, N i} {\ displaystyle j \ in \ {1, \ dots, N_ {i} \}}j \ in \ {1, \ точки, N_ {i} \}

(a) Выберите тему zi, j ∼ многочлен ⁡ (θ i). {\ Displaystyle z_ {i, j} \ sim \ operatorname {Multinomial} (\ theta _ {i}).}{\ displaystyle z_ {i, j} \ sim \ operatorname {полиномиальное} (\ theta _ {i}).}
(b) Выберите слово w i, j ∼ Multinomial ⁡ (φ z i, j). {\ displaystyle w_ {i, j} \ sim \ operatorname {Multinomial} (\ varphi _ {z_ {i, j}}).}{\ displaystyle w_ {i, j} \ sim \ operatorname {Multinomial} (\ varphi _ {z_ {i, j}}).}

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

Длина N i {\ displaystyle N_ {i}}N_ {i} обрабатывается независимо от всех других переменных, генерирующих данные (w {\ displaystyle w}w и z {\ displaystyle z}z). Нижний индекс часто опускается, как на диаграммах, показанных здесь.

Определение

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

Определение переменных в модели
ПеременнаяТипЗначение
K {\ displaystyle K}K integerколичество тем (например, 50)
V {\ displaystyle V}V integerколичество слов в словаре (например, 50 000 или 1 000 000)
M {\ displaystyle M}M integerколичество документов
N d = 1… M {\ displaystyle N_ {d = 1 \ dots M}}N_ {d = 1 \ dots M} integerколичество слов в документе d
N {\ displaystyle N}N integerобщее количество слов во всех документах; сумма всех значений N d {\ displaystyle N_ {d}}N_{d}, т.е. N = ∑ d = 1 MN d {\ displaystyle N = \ sum _ {d = 1} ^ {M} N_ {d}}N = \ sum _ {d = 1} ^ {M} N_ {d}
α k = 1… K {\ displaystyle \ alpha _ {k = 1 \ dots K}}\ alpha _ {k = 1 \ dots K} положительное вещественное числопредшествующий вес темы k в документ; обычно одинаково для всех тем; обычно число меньше 1, например 0.1, чтобы предпочесть редкое распределение тем, то есть несколько тем в документе
α {\ displaystyle {\ boldsymbol {\ alpha}}}{\ boldsymbol {\ alpha}} K-мерный вектор положительных вещественных чиселсовокупность всех α k {\ displaystyle \ alpha _ {k}}\ alpha _ {k} значения, рассматриваемые как один вектор
β w = 1… V {\ displaystyle \ beta _ {w = 1 \ dots V}}\ beta _ {w = 1 \ dots V} положительное действительноепредшествующий вес слова w в теме; обычно одинаково для всех слов; обычно число намного меньше 1, например 0,001, чтобы строго предпочесть редкое распределение слов, то есть несколько слов на тему
β {\ displaystyle {\ boldsymbol {\ beta}}}{\ boldsymbol {\ beta}} V-мерный вектор положительных вещественных чиселсовокупность всех β w {\ displaystyle \ beta _ {w}}\ beta _ {w} значений, рассматриваемых как один вектор
φ k = 1… K, w = 1… V {\ displaystyle \ varphi _ {k = 1 \ точки K, w = 1 \ точки V}}\ varphi _ {k = 1 \ dots К, w = 1 \ точки V} вероятность (действительное число от 0 до 1)вероятность того, что слово w встречается в теме k
φ k = 1… K { \ displaystyle {\ boldsymbol {\ varphi}} _ {k = 1 \ dots K}}{\ boldsymbol {\ varphi}} _ {k = 1 \ dots K} V-мерный вектор вероятностей, который должен суммироваться в 1распределение слов в теме k
θ d = 1… M, k = 1… K {\ displaystyle \ theta _ {d = 1 \ dots M, k = 1 \ dots K}}\ theta _ {d = 1 \ dots M, k = 1 \ dots K} вероятность (действительное число от 0 до 1)вероятность появления темы k в документе d
θ d = 1… M {\ displaystyle {\ boldsymbol {\ theta}} _ {d = 1 \ dots M}}{\ boldsymbol {\ theta}} _ {d = 1 \ dots M} K-мерный вектор вероятностей, что в сумме должно составлять 1распределение тем в документе d
zd = 1… M, w = 1… N d {\ displaystyle z_ {d = 1 \ dots M, w = 1 \ dots N_ {d}}}z_ {d = 1 \ dots M, w = 1 \ dots N_ {d}} целое число от 1 до Kидентичность темы слова w в документе d
Z {\ displaystyle \ mathbf {Z}}\ mathbf {Z} N-мерный вектор целых чисел от 1 до Kидентичность темы всех слов во всех документах
wd = 1… M, w = 1… N d {\ displaystyle w_ {d = 1 \ dots M, w = 1 \ dots N_ {d}}}w_ {d = 1 \ dots M, w = 1 \ точки N_ {d}} целое число от 1 до Vидентичность слова w в документе d
W {\ displaystyle \ mathbf {W}}\ mathbf {W} N-мерный вектор целых чисел от 1 до Vидентичность всех слов во всех документах

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

φ k = 1… K ∼ Dirichlet V ⁡ (β) θ d = 1… M ∼ Dirichlet K ⁡ (α) zd = 1… M, w = 1… N d ∼ категориальный К ⁡ (θ d) wd = 1… M, w = 1… N d ∼ категориальный V ⁡ (φ zdw) {\ displaystyle {\ begin {align} {\ boldsymbol {\ varphi}} _ {k = 1 \ dots K} \ sim \ operatorname {Dirichlet} _ {V} ({\ boldsymbol {\ beta}}) \\ {\ boldsymbol {\ theta}} _ {d = 1 \ dots M} \ sim \ operatorname {Dirichlet} _ {K} ({\ boldsymbol {\ alpha}}) \\ z_ {d = 1 \ dots M, w = 1 \ dots N_ {d}} \ sim \ operatorname {Категориальный } _ {K} ({\ boldsymbol {\ theta}} _ {d}) \\ w_ {d = 1 \ dots M, w = 1 \ dots N_ {d}} \ sim \ operatorname {Категориальный} _ { V} ({\ boldsymbol {\ varphi}} _ {z_ {dw}}) \ end {align}}}{\ displaystyle {\ begin {align} {\ boldsymbol {\ varphi}} _ {k = 1 \ dots K} \ sim \ operatorname {Dirichlet} _ {V} ({\ boldsymbol { \ beta}}) \\ {\ boldsymbol {\ theta}} _ {d = 1 \ dots M} \ sim \ operatorname {Dirichlet} _ {K} ({\ boldsymbol {\ alpha}}) \\ z_ {d = 1 \ dots M, w = 1 \ dots N_ {d}} \ sim \ operatorname {Категориальный} _ {K} ({\ boldsymbol {\ theta}} _ {d}) \\ w_ {d = 1 \ dots M, w = 1 \ dots N_ {d}} \ sim \ operatorname {Категориальный} _ {V} ({\ boldsymbol {\ varphi}} _ {z_ {dw}}) \ end {align}}}
Вывод

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

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

Исходная статья Pritchard et al. использовали аппроксимацию апостериорного распределения методом Монте-Карло. Альтернативные предложения методов вывода включают выборку Гиббса.

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

В исходной статье ML использовалось вариационное байесовское приближение апостериорного распределения ;

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

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

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

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

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

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

. Недавние исследования были сосредоточены на ускорение вывода скрытого распределения Дирихле для поддержки захвата огромного количества тем в большом количестве документов. Уравнение обновления свернутого пробоотборника Гиббса, упомянутое в предыдущем разделе, имеет естественную разреженность, которой можно воспользоваться. Интуитивно понятно, поскольку каждый документ содержит только подмножество тем K d {\ displaystyle K_ {d}}K_ {d} , а слово также появляется только в подмножестве тем K w {\ displaystyle K_ {w}}K_ {w} , приведенное выше уравнение обновления можно переписать, чтобы воспользоваться преимуществом этой разреженности.

p (Z d, n = k) ∝ α β C k ¬ n + V β + C kd β C k ¬ n + V β + C kw (α + C kd) C k ¬ n + V β {\ displaystyle p (Z_ {d, n} = k) \ propto {\ frac {\ alpha \ beta} {C_ {k} ^ {\ neg n} + V \ beta}} + {\ frac {C_ {k} ^ {d} \ beta} {C_ {k} ^ {\ neg n} + V \ beta}} + {\ frac {C_ {k} ^ {w} (\ alpha + C_ {k} ^ {d})} {C_ {k} ^ {\ neg n} + V \ beta}}}p (Z_ {d, n} = k) \ propto {\ frac {\ alpha \ beta} {C_ {k} ^ { \ neg n} + V \ beta}} + {\ frac {C_ {k} ^ {d} \ beta} {C_ {k} ^ {\ neg n} + V \ beta}} + {\ frac {C_ { k} ^ {w} (\ alpha + C_ {k} ^ {d})} {C_ {k} ^ {\ neg n} + V \ beta}}

В этом В уравнении у нас есть три члена, два из которых являются разреженными, а другой - маленькими. Мы называем эти термины a, b {\ displaystyle a, b}a, b и c {\ displaystyle c}c соответственно. Теперь, если мы нормализуем каждый член путем суммирования по всем темам, мы получим:

A = ∑ k = 1 K α β C k ¬ n + V β {\ displaystyle A = \ sum _ {k = 1} ^ {K} {\ frac {\ alpha \ beta} {C_ {k} ^ {\ neg n} + V \ beta}}}A = \ sum _ {k = 1} ^ {K} {\ frac {\ alpha \ beta} {C_ {k} ^ {\ neg n} + V \ beta}}
B = ∑ k = 1 KC kd β C k ¬ n + V β { \ displaystyle B = \ sum _ {k = 1} ^ {K} {\ frac {C_ {k} ^ {d} \ beta} {C_ {k} ^ {\ neg n} + V \ beta}}}B = \ sum _ {k = 1} ^ {K} {\ frac {C_ {k} ^ {d} \ beta} {C_ {k} ^ {\ neg n} + V \ beta }}
C = ∑ К знак равно 1 KC квт (α + C kd) C k ¬ n + V β {\ displaystyle C = \ sum _ {k = 1} ^ {K} {\ frac {C_ {k} ^ { w} (\ alpha + C_ {k} ^ {d})} {C_ {k} ^ {\ neg n} + V \ beta}}}C = \ sum _ {k = 1} ^ {K} {\ frac {C_ {k} ^ {w} (\ alpha + C_ {k} ^ {d})} {C_ {k} ^ {\ neg n} + V \ beta}}

Здесь мы видим, что B {\ displaystyle B}В - это сумма тем, которые появляются в документе d {\ displaystyle d}d и C {\ displaystyle C}Cтакже является разреженным суммированием тем, которым присвоено слово w {\ displaystyle w}w по всему корпусу. A {\ displaystyle A}A, с другой стороны, плотный, но из-за малых значений α {\ displaystyle \ alpha}\ alpha β {\ displaystyle \ beta}\ beta , значение очень мало по сравнению с двумя другими членами.

Теперь, при отборе темы, если мы выбираем случайную величину равномерно из s ∼ U (s | ∣ A + B + C) {\ displaystyle s \ sim U (s | \ mid A + B + C)}{\ displaystyle s \ sim U (s | \ mid A + B + C)} , мы можем проверить, в какую корзину приземляется наш образец. Поскольку A {\ displaystyle A}Aневелик, мы вряд ли попадем в эту ведро; однако, если мы все же попадаем в эту корзину, выборка темы занимает O (K) {\ displaystyle O (K)}{\ displaystyle O (K)} времени (так же, как и исходный сэмплер Collapsed Gibbs). Однако, если мы попадаем в две другие группы, нам нужно будет проверить только подмножество тем, если мы будем вести учет разреженных тем. Выбор темы можно выбрать из сегмента B {\ displaystyle B}В за O (K d) {\ displaystyle O (K_ {d})}O(K_{d})время, и тема может быть выбрана из сегмента C {\ displaystyle C}Cв O (K w) {\ displaystyle O (K_ {w})}{\ displaystyle O (K_ { w})} время, где K d {\ displaystyle K_ {d}}K_ {d} и K w {\ displaystyle K_ {w}}K_ {w} обозначает количество тем, назначенных текущий документ и текущий тип слова соответственно.

Обратите внимание, что после выборки каждой темы обновление этих сегментов - это все основные O (1) {\ displaystyle O (1)}O ( 1) арифметические операции.

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

Ниже приводится вывод уравнений для свернутой выборки Гиббса, что означает φ {\ displaystyle \ varphi}\ varphi s и θ {\ displaystyle \ theta}\ theta s будут интегрированы. Для простоты в этом выводе предполагается, что все документы имеют одинаковую длину N {\ displaystyle N_ {}}N_ {} . Вывод также действителен, если длина документа различается.

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

P (W, Z, θ, φ; α, β) = ∏ i = 1 KP (φ i; β) ∏ j Знак равно 1 МП (θ j; α) ∏ T знак равно 1 NP (Z J, t ∣ θ j) п (W j, t ∣ φ Z j, t), {\ displaystyle P ({\ boldsymbol {W}}, {\ boldsymbol {Z}}, {\ boldsymbol {\ theta}}, {\ boldsymbol {\ varphi}}; \ alpha, \ beta) = \ prod _ {i = 1} ^ {K} P (\ varphi _ {i}; \ beta) \ prod _ {j = 1} ^ {M} P (\ theta _ {j}; \ alpha) \ prod _ {t = 1} ^ {N} P (Z_ {j, t } \ mid \ theta _ {j}) P (W_ {j, t} \ mid \ varphi _ {Z_ {j, t}}),}{\ displaystyle P ( {\ boldsymbol {W}}, {\ boldsymbol {Z}}, {\ boldsymbol {\ theta}}, {\ boldsymbol {\ varphi}}; \ alpha, \ beta) = \ prod _ {i = 1} ^ {K} P (\ varphi _ {i}; \ beta) \ prod _ {j = 1} ^ {M} P (\ theta _ {j}; \ alpha) \ prod _ {t = 1} ^ {N } P (Z_ {j, t} \ mid \ theta _ {j}) P (W_ {j, t} \ mid \ varphi _ {Z_ {j, t}}),}

где жирным шрифтом переменные обозначают векторную версию переменных. Во-первых, φ {\ displaystyle {\ boldsymbol {\ varphi}}}{\ boldsymbol {\ varphi}} и θ {\ displaystyle {\ boldsymbol {\ theta}}}{\ boldsymbol {\ theta}} должны быть интегрирован.

P (Z, W; α, β) = ∫ θ ∫ φ P (W, Z, θ, φ; α, β) d φ d θ = ∫ φ ∏ i = 1 KP (φ i; β) ∏ j = 1 M ∏ t = 1 NP (W j, t ∣ φ Z j, t) d φ ∫ θ ∏ j = 1 MP (θ j; α) ∏ t = 1 NP (Z j, t ∣ θ j) d θ. {\ displaystyle {\ begin {align} P ({\ boldsymbol {Z}}, {\ boldsymbol {W}}; \ alpha, \ beta) = \ int _ {\ boldsymbol {\ theta}} \ int _ {\ boldsymbol {\ varphi}} P ({\ boldsymbol {W}}, {\ boldsymbol {Z}}, {\ boldsymbol {\ theta}}, {\ boldsymbol {\ varphi}}; \ alpha, \ beta) \, d {\ boldsymbol {\ varphi}} \, d {\ boldsymbol {\ theta}} \\ = {} \ int _ {\ boldsymbol {\ varphi}} \ prod _ {i = 1} ^ {K} P (\ varphi _ {i}; \ beta) \ prod _ {j = 1} ^ {M} \ prod _ {t = 1} ^ {N} P (W_ {j, t} \ mid \ varphi _ {Z_ {j, t}}) \, d {\ boldsymbol {\ varphi}} \ int _ {\ boldsymbol {\ theta}} \ prod _ {j = 1} ^ {M} P (\ theta _ {j}; \ alpha) \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j}) \, d {\ boldsymbol {\ theta}}. \ end {выравнивается}} }{\ displaystyle {\ begin {выровнено} P ({\ boldsymbol {Z}}, {\ boldsymbol {W}}; \ alpha, \ beta) = \ int _ {\ boldsymbol {\ theta}} \ int _ {\ boldsymbol {\ varphi}} P ({\ boldsymbol {W }}, {\ boldsymbol {Z}}, {\ boldsymbol {\ theta}}, {\ boldsymbol {\ varphi}}; \ alpha, \ beta) \, d {\ boldsymbol {\ varphi}} \, d { \ boldsymbol {\ theta}} \\ = {} \ int _ {\ boldsymbol {\ varphi}} \ prod _ {i = 1} ^ {K} P (\ varphi _ {i}; \ beta) \ prod _ {j = 1} ^ {M} \ prod _ {t = 1} ^ {N} P (W_ {j, t} \ mid \ varphi _ {Z_ {j, t}}) \, d {\ boldsymbol {\ varphi}} \ int _ {\ boldsymbol {\ theta}} \ prod _ {j = 1} ^ {M} P (\ theta _ {j}; \ alpha) \ prod _ {t = 1} ^ { N} P (Z_ {j, t} \ mid \ theta _ {j}) \, d {\ boldsymbol {\ theta}}. \ End {выравнивается}}}

Все θ {\ displaystyle \ theta}\ theta независимы друг от друга и одинаковы для всех φ {\ displaystyle \ varphi}\ varphi с. Таким образом, мы можем обрабатывать каждый θ {\ displaystyle \ theta}\ theta и каждый φ {\ displaystyle \ varphi}\ varphi отдельно. Теперь мы сосредоточимся только на части θ {\ displaystyle \ theta}\ theta .

∫ θ ∏ j = 1 MP (θ j; α) ∏ t = 1 NP (Z j, t ∣ θ j) d θ = ∏ j = 1 M ∫ θ j P (θ j; α) ∏ t = 1 NP (Z j, t ∣ θ j) d θ j. {\ displaystyle \ int _ {\ boldsymbol {\ theta}} \ prod _ {j = 1} ^ {M} P (\ theta _ {j}; \ alpha) \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j}) \, d {\ boldsymbol {\ theta}} = \ prod _ {j = 1} ^ {M} \ int _ {\ theta _ {j }} P (\ theta _ {j}; \ alpha) \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j}) \, d \ theta _ { j}.}{\ displaystyle \ int _ {\ boldsymbol {\ theta}} \ prod _ {j = 1} ^ {M} P (\ theta _ {j}; \ alpha) \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j}) \, d {\ boldsymbol {\ theta}} = \ prod _ {j = 1} ^ {M} \ int _ {\ theta _ {j}} P (\ theta _ {j}; \ alpha) \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j}) \, d \ theta _ {j}.}

В дальнейшем мы можем сосредоточиться только на одном θ {\ displaystyle \ theta}\ theta , а именно:

∫ θ j P (θ j; α) ∏ t = 1 NP (Z j, t ∣ θ j) d θ j. {\ displaystyle \ int _ {\ theta _ {j}} P (\ theta _ {j}; \ alpha) \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j}) \, d \ theta _ {j}.}{\ displaystyle \ int _ {\ theta _ {j}} P (\ theta _ {j}; \ alpha) \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j}) \, d \ theta _ {j}.}

Фактически, это скрытая часть модели для jth {\ displaystyle j ^ {th}}j ^ {th} документ. Теперь мы заменим вероятности в приведенном выше уравнении истинным выражением распределения, чтобы записать явное уравнение.

∫ θ j P (θ j; α) ∏ t = 1 NP (Z j, t ∣ θ j) d θ j = ∫ θ j Γ (∑ i = 1 K α i) ∏ i = 1 K Γ (α i) ∏ i = 1 K θ j, i α i - 1 ∏ t = 1 NP (Z j, t ∣ θ j) d θ j. {\ displaystyle \ int _ {\ theta _ {j}} P (\ theta _ {j}; \ alpha) \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j}) \, d \ theta _ {j} = \ int _ {\ theta _ {j}} {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (\ alpha _ {i})}} \ prod _ {i = 1} ^ {K} \ theta _ {j, i} ^ {\ alpha _ {i} -1} \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j}) \, d \ theta _ {j }.}{\ displaystyle \ int _ {\ theta _ {j}} P (\ theta _ {j}; \ alpha) \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j}) \, d \ theta _ {j} = \ int _ {\ theta _ {j}} {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K } \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (\ alpha _ {i})}} \ prod _ {i = 1} ^ {K} \ theta _ {j, i} ^ {\ alpha _ {i} -1} \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j }) \, d \ theta _ {j}.}

Пусть nj, ri {\ displaystyle n_ {j, r} ^ {i}}n_ {j, r} ^ {i} будет количеством токенов слов в jth {\ displaystyle j ^ {th}}j ^ {th} документ с тем же символом слова (rth {\ displaystyle r ^ {th}}r ^ {th} слово в словаре), присвоенный iith { \ displaystyle i ^ {th}}i ^ { th} тема. Итак, n j, r i {\ displaystyle n_ {j, r} ^ {i}}n_ {j, r} ^ {i} трехмерно. Если какое-либо из трех измерений не ограничено конкретным значением, мы используем точку в скобках (⋅) {\ displaystyle (\ cdot)}(\ cdot) для обозначения. Например, nj, (⋅) i {\ displaystyle n_ {j, (\ cdot)} ^ {i}}n_ {j, (\ cdot)} ^ {i} обозначает количество токенов слов в jth {\ displaystyle j ^ {th}}j ^ {th} документ, назначенный теме i {\ displaystyle i ^ {th}}i ^ { th} . Таким образом, большая правая часть приведенного выше уравнения может быть переписана как:

∏ t = 1 N P (Z j, t ∣ θ j) = ∏ i = 1 K θ j, i n j, (⋅) i. {\ displaystyle \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j}) = \ prod _ {i = 1} ^ {K} \ theta _ {j, i} ^ {n_ {j, (\ cdot)} ^ {i}}.}{\ displaystyle \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j}) = \ prod _ {i = 1} ^ {K } \ theta _ {j, i} ^ {n_ {j, (\ cdot)} ^ {i}}.}

Таким образом, формула интегрирования θ j {\ displaystyle \ theta _ {j}}\ theta _ {j} может можно заменить на:

∫ θ j Γ (∑ i = 1 K α i) ∏ i = 1 K Γ (α i) ∏ i = 1 K θ j, i α i - 1 ∏ i = 1 K θ j, ing, (⋅) id θ j = ∫ θ j Γ (∑ i = 1 K α i) ∏ i = 1 K Γ (α i) ∏ i = 1 K θ j, ing, (⋅) i + α i - 1 d θ j. {\ displaystyle \ int _ {\ theta _ {j}} {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} \ alpha _ {i} \ right)} {\ prod _ { i = 1} ^ {K} \ Gamma (\ alpha _ {i})}} \ prod _ {i = 1} ^ {K} \ theta _ {j, i} ^ {\ alpha _ {i} -1 } \ prod _ {i = 1} ^ {K} \ theta _ {j, i} ^ {n_ {j, (\ cdot)} ^ {i}} \, d \ theta _ {j} = \ int _ {\ theta _ {j}} {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ { K} \ Gamma (\ alpha _ {i})}} \ prod _ {i = 1} ^ {K} \ theta _ {j, i} ^ {n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} -1} \, d \ theta _ {j}.}{\ displaystyle \ int _ {\ theta _ {j}} {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} \ alpha _ {i} \ right)} {\ prod _ { i = 1} ^ {K} \ Gamma (\ alpha _ {i})}} \ prod _ {i = 1} ^ {K} \ theta _ {j, i} ^ {\ alpha _ {i} -1 } \ prod _ {i = 1} ^ {K} \ theta _ {j, i} ^ {n_ {j, (\ cdot)} ^ {i}} \, d \ theta _ {j} = \ int _ {\ theta _ {j}} {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ { K} \ Gamma (\ alpha _ {i})}} \ prod _ {i = 1} ^ {K} \ theta _ {j, i} ^ {n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} -1} \, d \ theta _ {j}.}

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

∫ θ j Γ (∑ i = 1 K nj, (⋅) i + α i) ∏ i = 1 K Γ (nj, (⋅) i + α i) ∏ i Знак равно 1 К θ J, Inj, (⋅) я + α я - 1 d θ J = 1. {\ Displaystyle \ int _ {\ theta _ {j}} {\ frac {\ Gamma \ left (\ sum _ { i = 1} ^ {K} n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (n_ { j, (\ cdot)} ^ {i} + \ alpha _ {i})}} \ prod _ {i = 1} ^ {K} \ theta _ {j, i} ^ {n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} -1} \, d \ theta _ {j} = 1.}{\ displaystyle \ int _ {\ theta _ { j}} {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i})}} \ prod _ {i = 1} ^ {K} \ theta _ {j, i} ^ {n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} -1} \, d \ theta _ {j} = 1.}

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

∫ θ j P (θ j; α) ∏ t = 1 NP (Z j, t ∣ θ j) d θ j = ∫ θ j Γ (∑ i = 1 K α i) ∏ i = 1 K Γ (α i) ∏ i = 1 K θ j, ing, (⋅) i + α i - 1 d θ j = Γ (∑ i = 1 K α i) ∏ i = 1 K Γ (α i) ∏ i = 1 K Γ (nj, (⋅) i + α i) Γ ( ∑ i = 1 K nj, (⋅) i + α i) ∫ θ j Γ (∑ i = 1 K nj, (⋅) i + α i) ∏ i = 1 K Γ (nj, (⋅) i + α i) ∏ i = 1 K θ j, inj, (⋅) i + α i - 1 d θ j = Γ (∑ i = 1 K α i) ∏ i = 1 K Γ (α i) ∏ i = 1 K Γ (nj, (⋅) i + α i) Γ (∑ i = 1 K nj, (⋅) i + α i). {\ displaystyle {\ begin {align} \ int _ {\ theta _ {j}} P (\ theta _ {j}; \ alpha) \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j}) \, d \ theta _ {j} = \ int _ {\ theta _ {j}} {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (\ alpha _ {i})}} \ prod _ {i = 1} ^ {K } \ theta _ {j, i} ^ {n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} -1} \, d \ theta _ {j} \\ [8pt] = { } {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (\ alpha _ {i})}} {\ frac {\ prod _ {i = 1} ^ {K} \ Gamma (n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i})} { \ Gamma \ left (\ sum _ {i = 1} ^ {K} n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)}} \ int _ {\ theta _ { j}} {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i})}} \ prod _ {i = 1} ^ {K} \ theta _ {j, i} ^ {n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} -1} \, d \ theta _ {j} \\ [8pt] = {} {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (\ alpha _ {i})}} {\ frac {\ prod _ {i = 1} ^ {K} \ Gamma (n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i})} {\ Gamma \ left (\ sum _ {i = 1} ^ {K} n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)}}. \ end {align}}}{\ displaystyle {\ begin {a ligned} \ int _ {\ theta _ {j}} P (\ theta _ {j}; \ alpha) \ prod _ {t = 1} ^ {N} P (Z_ {j, t} \ mid \ theta _ {j}) \, d \ theta _ {j} = \ int _ {\ theta _ {j}} {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (\ alpha _ {i})}} \ prod _ {i = 1} ^ {K} \ theta _ {j, i} ^ {n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} -1} \, d \ theta _ {j} \\ [8pt] = {} {\ frac {\ Гамма \ left (\ sum _ {i = 1} ^ {K} \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (\ alpha _ {i})} } {\ frac {\ prod _ {i = 1} ^ {K} \ Gamma (n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i})} {\ Gamma \ left (\ sum _ {i = 1} ^ {K} n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)}} \ int _ {\ theta _ {j}} {\ frac { \ Gamma \ left (\ sum _ {i = 1} ^ {K} n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i})}} \ prod _ {i = 1} ^ {K} \ theta _ {j, i} ^ {n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} -1} \, d \ theta _ {j} \\ [8pt] = {} {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (\ alpha _ {i})}} { \ frac {\ prod _ {i = 1} ^ {K} \ Gamma (n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i})} {\ Gamma \ left (\ sum _ { i = 1} ^ {K} n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)}}. \ end {align}}}

Теперь обратим внимание на φ {\ displaystyle {\ boldsymbol {\ varphi}}}{\ boldsymbol {\ varphi}} часть. На самом деле происхождение части φ {\ displaystyle {\ boldsymbol {\ varphi}}}{\ boldsymbol {\ varphi}} очень похоже на θ {\ displaystyle {\ boldsymbol {\ theta}}}{\ boldsymbol {\ theta}} часть. Здесь мы лишь перечисляем этапы вывода:

∫ φ ∏ i = 1 KP (φ i; β) ∏ j = 1 M ∏ t = 1 NP (W j, t ∣ φ Z j, t) d φ = ∏ i = 1 K ∫ φ i P (φ i; β) ∏ j = 1 M ∏ t = 1 NP (W j, t ∣ φ Z j, t) d φ i = ∏ i = 1 K ∫ φ i Γ (∑ r = 1 V β r) ∏ r = 1 V Γ (β r) ∏ r = 1 V φ i, r β r - 1 ∏ r = 1 V φ i, rn (⋅), rid φ i = I = 1 K ∫ φ i Γ (∑ r = 1 V β r) ∏ r = 1 V Γ (β r) ∏ r = 1 V φ i, rn (⋅), ri + β r - 1 d φ i = ∏ i = 1 K Γ (∑ r = 1 V β r) ∏ r = 1 V Γ (β r) ∏ r = 1 V Γ (n (⋅), ri + β r) Γ (∑ r = 1 V n (⋅), ri + β r). {\ displaystyle {\ begin {align} \ int _ {\ boldsymbol {\ varphi}} \ prod _ {i = 1} ^ {K} P (\ varphi _ {i}; \ beta) \ prod _ {j = 1} ^ {M} \ prod _ {t = 1} ^ {N} P (W_ {j, t} \ mid \ varphi _ {Z_ {j, t}}) \, d {\ boldsymbol {\ varphi }} \\ [8pt] = {} \ prod _ {i = 1} ^ {K} \ int _ {\ varphi _ {i}} P (\ varphi _ {i}; \ beta) \ prod _ { j = 1} ^ {M} \ prod _ {t = 1} ^ {N} P (W_ {j, t} \ mid \ varphi _ {Z_ {j, t}}) \, d \ varphi _ {i } \\ [8pt] = {} \ prod _ {i = 1} ^ {K} \ int _ {\ varphi _ {i}} {\ frac {\ Gamma \ left (\ sum _ {r = 1} ^ {V} \ beta _ {r} \ right)} {\ prod _ {r = 1} ^ {V} \ Gamma (\ beta _ {r})}} \ prod _ {r = 1} ^ {V } \ varphi _ {i, r} ^ {\ beta _ {r} -1} \ prod _ {r = 1} ^ {V} \ varphi _ {i, r} ^ {n _ {(\ cdot), r } ^ {i}} \, d \ varphi _ {i} \\ [8pt] = {} \ prod _ {i = 1} ^ {K} \ int _ {\ varphi _ {i}} {\ frac {\ Gamma \ left (\ sum _ {r = 1} ^ {V} \ beta _ {r} \ right)} {\ prod _ {r = 1} ^ {V} \ Gamma (\ beta _ {r})}} \ prod _ {r = 1} ^ {V} \ varphi _ {i, r} ^ {n _ {(\ cdot), r} ^ {i} + \ beta _ {r} -1} \, d \ varphi _ {i} \\ [8pt] = {} \ prod _ {i = 1} ^ {K} {\ frac {\ Gamma \ left (\ sum _ {r = 1} ^ {V} \ beta _ {r} \ right)} {\ prod _ {r = 1} ^ {V} \ Gamma (\ beta _ {r})}} {\ frac {\ prod _ {r = 1} ^ {V} \ Gamma (n _ {(\ cdot), r} ^ {i} + \ beta _ {r})} {\ Gamma \ left (\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {i} + \ beta _ {r} \ right)}}. \ end {align}}}{\ displaystyle {\ begin {align} \ int _ {\ boldsymbol {\ varphi}} \ prod _ {i = 1} ^ {K} P (\ varphi _ {i}; \ beta) \ prod _ {j = 1} ^ {M} \ prod _ {t = 1} ^ {N} P (W_ {j, t} \ mid \ varphi _ {Z_ {j, t}}) \, d {\ boldsymbol {\ varphi}} \\ [8pt] = { } \ prod _ {i = 1} ^ {K} \ int _ {\ varphi _ {i}} P (\ varphi _ {i}; \ beta) \ prod _ {j = 1} ^ {M} \ prod _ {t = 1} ^ {N} P (W_ {j, t} \ mid \ varphi _ {Z_ {j, t}}) \, d \ varphi _ {i} \\ [8pt] = {} \ prod _ {i = 1} ^ {K} \ int _ {\ varphi _ {i}} {\ frac {\ Gamma \ left (\ sum _ {r = 1} ^ {V} \ beta _ {r } \ right)} {\ prod _ {r = 1} ^ {V} \ Gamma (\ beta _ {r})}} \ prod _ {r = 1} ^ {V} \ varphi _ {i, r} ^ {\ beta _ {r} -1} \ prod _ {r = 1} ^ {V} \ varphi _ {i, r} ^ {n _ {(\ cdot), r} ^ {i}} \, d \ varphi _ {i} \\ [8pt] = {} \ prod _ {i = 1} ^ {K} \ int _ {\ varphi _ {i}} {\ frac {\ Gamma \ left (\ sum _ {r = 1} ^ {V} \ beta _ {r} \ right)} {\ prod _ {r = 1} ^ {V} \ Gamma (\ beta _ {r})}} \ prod _ {r = 1} ^ {V} \ varphi _ {i, r} ^ {n _ {(\ cdot), r} ^ {i} + \ beta _ {r} -1} \, d \ varphi _ {i} \\ [8pt] = {} \ prod _ {i = 1} ^ {K} {\ frac {\ Gamma \ left (\ sum _ {r = 1} ^ {V} \ beta _ {r} \ right)} {\ prod _ {r = 1} ^ {V} \ Gamma (\ beta _ {r})}} {\ frac {\ prod _ {r = 1} ^ {V} \ Gamma (n _ {(\ cdot), r} ^ {i} + \ beta _ {r})} {\ Gamma \ left (\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {i} + \ beta _ {r} \ right)}}. \ End {align}}}

Для ясности здесь мы записываем окончательное уравнение как с ϕ {\ displaystyle {\ boldsymbol {\ phi}}}{\ boldsymbol {\ phi}} , так и с θ {\ displaystyle {\ boldsymbol {\ theta}} }{\ boldsymbol {\ theta}} интегрировано:

P (Z, W; α, β) = ∏ j = 1 M Γ (∑ i = 1 K α i) ∏ i = 1 K Γ (α i) ∏ i = 1 K Γ (nj, (⋅) i + α i) Γ (∑ i = 1 K nj, (⋅) i + α i) × ∏ i = 1 K Γ (∑ r = 1 V β r) ∏ r = 1 V Γ (β r) ∏ r = 1 V Γ (n (⋅), ri + β r) Γ (∑ r = 1 V n (⋅), ri + β r). {\ Displaystyle P ({\ boldsymbol {Z}}, {\ boldsymbol {W}}; \ alpha, \ beta) = \ prod _ {j = 1} ^ {M} {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (\ alpha _ {i})}} {\ frac { \ prod _ {i = 1} ^ {K} \ Gamma (n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i})} {\ Gamma \ left (\ sum _ {i = 1 } ^ {K} n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)}} \ times \ prod _ {i = 1} ^ {K} {\ frac {\ Gamma \ left (\ sum _ {r = 1} ^ {V} \ beta _ {r} \ right)} {\ prod _ {r = 1} ^ {V} \ Gamma (\ beta _ {r})}} {\ frac {\ prod _ {r = 1} ^ {V} \ Gamma (n _ {(\ cdot), r} ^ {i} + \ beta _ {r})} {\ Gamma \ left (\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {i} + \ beta _ {r} \ right)}}.}{\ displaystyle P ({\ boldsymbol {Z} }, {\ boldsymbol {W}}; \ alpha, \ beta) = \ prod _ {j = 1} ^ {M} {\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (\ alpha _ {i})}} {\ frac {\ prod _ {i = 1} ^ {K } \ Gamma (n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i})} {\ Gamma \ left (\ sum _ {i = 1} ^ {K} n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)}} \ times \ prod _ {i = 1} ^ {K} {\ frac {\ Gamma \ left (\ sum _ {r = 1} ^ {V} \ beta _ {r} \ right)} {\ prod _ {r = 1} ^ {V} \ Gamma (\ beta _ {r})}} {\ frac {\ prod _ {r = 1 } ^ {V} \ Gamma (n _ {(\ cdot), r} ^ {i} + \ beta _ {r})} {\ Gamma \ left (\ sum _ {r = 1} ^ {V} n_ { (\ cdot), r} ^ {i} + \ beta _ {r} \ right)}}.}

Здесь цель Гиббса Сэмплинга - аппроксимировать распределение из P (Z ∣ W; α, β) {\ displaystyle P ({\ boldsymbol {Z}} \ mid {\ boldsymbol {W}}; \ alpha, \ beta)}P ({\ boldsymbol {Z}} \ mid {\ boldsymbol {W}}; \ alpha, \ beta) . Поскольку P (W; α, β) {\ displaystyle P ({\ boldsymbol {W}}; \ alpha, \ beta)}P ({\ boldsymbol {W}}; \ alpha, \ beta) неизменно для любого из Z, уравнения выборки Гиббса могут быть производное от P (Z, W; α, β) {\ displaystyle P ({\ boldsymbol {Z}}, {\ boldsymbol {W}}; \ alpha, \ beta)}P ({\ boldsymbol {Z}}, {\ boldsymbol {W}}; \ alpha, \ beta) непосредственно. Ключевым моментом является получение следующей условной вероятности:

P (Z (m, n) ∣ Z - (m, n), W; α, β) = P (Z (m, n), Z - ( м, п), W; α, β) P (Z - (м, n), W; α, β), {\ displaystyle P (Z _ {(m, n)} \ mid {\ boldsymbol {Z _ {- (m, n)}}}, {\ boldsymbol {W}}; \ alpha, \ beta) = {\ frac {P (Z _ {(m, n)}, {\ boldsymbol {Z _ {- (m, n))}}}, {\ boldsymbol {W}}; \ alpha, \ beta)} {P ({\ boldsymbol {Z _ {- (m, n)}}}, {\ boldsymbol {W}}; \ alpha, \ beta)}},}{\ displaystyle P (Z_ { (m, n)} \ mid {\ boldsymbol {Z _ {- (m, n)}}}, {\ boldsymbol {W}}; \ alpha, \ beta) = {\ frac {P (Z _ {(m, n)}, {\ boldsymbol {Z _ {- (m, n)}}}, {\ boldsymbol {W}}; \ alpha, \ beta)} {P ({\ boldsymbol {Z _ {- (m, n) }}}, {\ boldsymbol {W}}; \ alpha, \ beta)}},}

где Z (m, n) {\ displaystyle Z _ {(m, n)}}Z _ {(m, n)} обозначает Z {\ displaystyle Z}Z скрытая переменная nth {\ displaystyle n ^ {th}}n ^ {th} word token в mth {\ displaystyle m ^ {th}}m^{th}документ. И далее мы предполагаем, что его словесным символом является слово v t h {\ displaystyle v ^ {th}}v^{th}в словаре. Z - (m, n) {\ displaystyle {\ boldsymbol {Z _ {- (m, n)}}}}{\ boldsymbol {Z _ {- (m, n)}}} обозначает все Z {\ displaystyle Z}Z s, но Z (m, n) {\ displaystyle Z _ {(m, n)}}Z _ {(m, n)} . Обратите внимание, что выборке Гиббса необходимо только выбрать значение для Z (m, n) {\ displaystyle Z _ {(m, n)}}Z _ {(m, n)} , в соответствии с указанной выше вероятностью, нам не нужен точное значение

P (Z m, n ∣ Z - (m, n), W; α, β) {\ displaystyle P \ left (Z_ {m, n} \ mid {\ boldsymbol {Z _ {- ( m, n)}}}, {\ boldsymbol {W}}; \ alpha, \ beta \ right)}{\ displaystyle P \ left (Z_ {m, n} \ mid {\ boldsymbol {Z _ {- (m, n)}}}, {\ boldsymbol {W}}; \ alpha, \ beta \ right)}

, но отношения между вероятностями, которые Z (m, n) {\ displaystyle Z _ {( m, n)}}Z _ {(m, n)} может принимать значение. So, the above equation can be simplified as:

P ( Z ( m, n) = v ∣ Z − ( m, n), W ; α, β) ∝ P ( Z ( m, n) = v, Z − ( m, n), W ; α, β) = ( Γ ( ∑ i = 1 K α i) ∏ i = 1 K Γ ( α i)) M ∏ j ≠ m ∏ i = 1 K Γ ( n j, ( ⋅) i + α i) Γ ( ∑ i = 1 K n j, ( ⋅) i + α i) ( Γ ( ∑ r = 1 V β r) ∏ r = 1 V Γ ( β r)) K ∏ i = 1 K ∏ r ≠ v Γ ( n ( ⋅), r i + β r) ∏ i = 1 K Γ ( n m, ( ⋅) i + α i) Γ ( ∑ i = 1 K n m, ( ⋅) i + α i) ∏ i = 1 K Γ ( n ( ⋅), v i + β v) Γ ( ∑ r = 1 V n ( ⋅), r i + β r) ∝ ∏ i = 1 K Γ ( n m, ( ⋅) i + α i) Γ ( ∑ i = 1 K n m, ( ⋅) i + α i) ∏ i = 1 K Γ ( n ( ⋅), v i + β v) Γ ( ∑ r = 1 V n ( ⋅), r i + β r) ∝ ∏ i = 1 K Γ ( n m, ( ⋅) i + α i) ∏ i = 1 K Γ ( n ( ⋅), v i + β v) Γ ( ∑ r = 1 V n ( ⋅), r i + β r). {\displaystyle {\begin{aligned}P(Z_{(m,n)}=v\mid {\boldsymbol {Z_{-(m,n)}}},{\boldsymbol {W}};\alpha,\beta)\\[8pt]\propto P(Z_{(m,n)}=v,{\boldsymbol {Z_{-(m,n)}}},{\boldsymbol {W}};\alpha,\beta)\\[8pt]=\left({\frac {\Gamma \left(\sum _{i=1}^{K}\alpha _{i}\right)}{\prod _{i=1}^{K}\Gamma (\alpha _{i})}}\right)^{M}\prod _{j\neq m}{\frac {\prod _{i=1}^{K}\Gamma \left(n_{j,(\cdot)}^{i}+\alpha _{i}\right)}{\Gamma \left(\sum _{i=1}^{K}n_{j,(\cdot)}^{i}+\alpha _{i}\right)}}\left({\frac {\Gamma \left(\sum _{r=1}^{V}\beta _{r}\right)}{\prod _{r=1}^{V}\Gamma (\beta _{r})}}\right)^{K}\prod _{i=1}^{K}\prod _{r\neq v}\Gamma \left(n_{(\cdot),r}^{i}+\beta _{r}\right){\frac {\prod _{i=1}^{K}\Gamma \left(n_{m,(\cdot)}^{i}+\alpha _{i}\right)}{\Gamma \left(\sum _{i=1}^{K}n_{m,(\cdot)}^{i}+\alpha _{i}\right)}}\prod _{i=1}^{K}{\frac {\Gamma \left(n_{(\cdot),v}^{i}+\beta _{v}\right)}{\Gamma \left(\sum _{r=1}^{V}n_{(\cdot),r}^{i}+\beta _{r}\right)}}\\[8pt]\propto {\frac {\prod _{i=1}^{K}\Gamma \left(n_{m,(\cdot)}^{i}+\alpha _{i}\right)}{\Gamma \left(\sum _{i=1}^{K}n_{m,(\cdot)}^{i}+\alpha _{i}\right)}}\prod _{i=1}^{K}{\frac {\Gamma \left(n_{(\cdot),v}^{i}+\beta _{v}\right)}{\Gamma \left(\sum _{r=1}^{V}n_{(\cdot),r}^{i}+\beta _{r}\right)}}\\[8pt]\propto \prod _{i=1}^{K}\Gamma \left(n_{m,(\cdot)}^{i}+\alpha _{i}\right)\prod _{i=1}^{K}{\frac {\Gamma \left(n_{(\cdot),v}^{i}+\beta _{v}\right)}{\Gamma \left(\sum _{r=1}^{V}n_{(\cdot),r}^{i}+\beta _{r}\right)}}.\end{aligned}}}{\ displaystyle {\ begin {align} P (Z _ {(m, n)} = v \ mid {\ boldsymbol {Z _ {- (m, n)}}}, {\ boldsymbol {W}}; \ alpha, \ beta) \\ [8pt] \ propto P (Z _ {( m, n)} = v, {\ boldsymbol {Z _ {- (m, n)}}}, {\ boldsymbol {W}}; \ alpha, \ beta) \\ [8pt] = \ left ({\ frac {\ Gamma \ left (\ sum _ {i = 1} ^ {K} \ alpha _ {i} \ right)} {\ prod _ {i = 1} ^ {K} \ Gamma (\ alpha _ {i })}} \ right) ^ {M} \ prod _ {j \ neq m} {\ frac {\ prod _ {i = 1} ^ {K} \ Gamma \ left (n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)} {\ Gamma \ left (\ sum _ {i = 1} ^ {K} n_ {j, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)}} \ left ({\ frac {\ Gamma \ left (\ sum _ {r = 1} ^ {V} \ beta _ {r} \ right)} {\ prod _ {r = 1 } ^ {V} \ Gamma (\ beta _ {r})}} \ right) ^ {K} \ prod _ {i = 1} ^ {K} \ prod _ {r \ neq v} \ Gamma \ left ( n _ {(\ cdot), r} ^ {i} + \ beta _ {r} \ right) {\ frac {\ prod _ {i = 1} ^ {K} \ Gamma \ left (n_ {m, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)} {\ Gamma \ left (\ sum _ {i = 1} ^ {K} n_ {m, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)}} \ prod _ {i = 1} ^ {K} {\ frac {\ Gamma \ left (n _ {(\ cdot), v} ^ {i} + \ b eta _ {v} \ right)} {\ Gamma \ left (\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {i} + \ beta _ {r} \ right) }} \\ [8pt] \ propto {\ frac {\ prod _ {i = 1} ^ {K} \ Gamma \ left (n_ {m, (\ cdot)} ^ {i} + \ alpha _ {i } \ right)} {\ Gamma \ left (\ sum _ {i = 1} ^ {K} n_ {m, (\ cdot)} ^ {i} + \ alpha _ {i} \ right)}} \ prod _ {i = 1} ^ {K} {\ frac {\ Gamma \ left (n _ {(\ cdot), v} ^ {i} + \ beta _ {v} \ right)} {\ Gamma \ left (\ сумма _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {i} + \ beta _ {r} \ right)}} \\ [8pt] \ propto \ prod _ {i = 1} ^ {K} \ Gamma \ left (n_ {m, (\ cdot)} ^ {i} + \ alpha _ {i} \ right) \ prod _ {i = 1} ^ {K} {\ frac { \ Gamma \ left (n _ {(\ cdot), v} ^ {i} + \ beta _ {v} \ right)} {\ Gamma \ left (\ sum _ {r = 1} ^ {V} n _ {( \ cdot), r} ^ {i} + \ beta _ {r} \ right)}}. \ end {align}}}

Finally, let n j, r i, − ( m, n) {\displaystyle n_{j,r}^{i,-(m,n)}}n_ {j, r} ^ {i, - (m, n)} be the same meaning as n j, r i {\displaystyle n_{j,r}^{i}}n_ {j, r} ^ {i} but with the Z ( m, n) {\displaystyle Z_{(m,n)}}Z _ {(m, n)} excluded. The above equation can be further simplified leveraging the property of gamma function. We first split the summation and then merge it back to obtain a k {\displaystyle k}k -independent summation, which could be dropped:

∝ ∏ i ≠ k Γ ( n m, ( ⋅) i, − ( m, n) + α i) ∏ i ≠ k Γ ( n ( ⋅), v i, − ( m, n) + β v) Γ ( ∑ r = 1 V n ( ⋅), r i, − ( m, n) + β r) Γ ( n m, ( ⋅) k, − ( m, n) + α k + 1) Γ ( n ( ⋅), v k, − ( m, n) + β v + 1) Γ ( ∑ r = 1 V n ( ⋅), r k, − ( m, n) + β r + 1) = ∏ i ≠ k Γ ( n m, ( ⋅) i, − ( m, n) + α i) ∏ i ≠ k Γ ( n ( ⋅), v i, − ( m, n) + β v) Γ ( ∑ r = 1 V n ( ⋅), r i, − ( m, n) + β r) Γ ( n m, ( ⋅) k, − ( m, n) + α k) Γ ( n ( ⋅), v k, − ( m, n) + β v) Γ ( ∑ r = 1 V n ( ⋅), r k, − ( m, n) + β r) ( n m, ( ⋅) k, − ( m, n) + α k + 1) n ( ⋅), v k, − ( m, n) + β v + 1 ∑ r = 1 V n ( ⋅), r k, − ( m, n) + β r + 1 = ∏ i Γ ( n m, ( ⋅) i, − ( m, n) + α i) ∏ i Γ ( n ( ⋅), v i, − ( m, n) + β v) Γ ( ∑ r = 1 V n ( ⋅), r i, − ( m, n) + β r) ( n m, ( ⋅) k, − ( m, n) + α k + 1) n ( ⋅), v k, − ( m, n) + β v + 1 ∑ r = 1 V n ( ⋅), r k, − ( m, n) + β r + 1 ∝ ( n m, ( ⋅) k, − ( m, n) + α k + 1) n ( ⋅), v k, − ( m, n) + β v + 1 ∑ r = 1 V n ( ⋅), r k, − ( m, n) + β r + 1 {\displaystyle {\begin{aligned}\propto \prod _{i\neq k}\Gamma \left(n_{m,(\cdot)}^{i,-(m,n)}+\alpha _{i}\right)\prod _{i\neq k}{\frac {\Gamma \left(n_{(\cdot),v}^{i,-(m,n)}+\beta _{v}\right)}{\Gamma \left(\sum _{r=1}^{V}n_{(\cdot),r}^{i,-(m,n)}+\beta _{r}\right)}}\Gamma \left(n_{m,(\cdot)}^{k,-(m,n)}+\alpha _{k}+1\right){\frac {\Gamma \left(n_{(\cdot),v}^{k,-(m,n)}+\beta _{v}+1\right)}{\Gamma \left(\sum _{r=1}^{V}n_{(\cdot),r}^{k,-(m,n)}+\beta _{r}+1\right)}}\\[8pt]=\prod _{i\neq k}\Gamma \left(n_{m,(\cdot)}^{i,-(m,n)}+\alpha _{i}\right)\prod _{i\neq k}{\frac {\Gamma \left(n_{(\cdot),v}^{i,-(m,n)}+\beta _{v}\right)}{\Gamma \left(\sum _{r=1}^{V}n_{(\cdot),r}^{i,-(m,n)}+\beta _{r}\right)}}\Gamma \left(n_{m,(\cdot)}^{k,-(m,n)}+\alpha _ {k}\right){\frac {\Gamma \left(n_{(\cdot),v}^{k,-(m,n)}+\beta _{v}\right)}{\Gamma \ left (\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {k, - (m, n)} + \ beta _ {r} \ right)}} \ left ( n_ {m, (\ cdot)} ^ {k, - (m, n)} + \ alpha _ {k} +1 \ right) {\ frac {n _ {(\ cdot), v} ^ {k, - (m, n)} + \ beta _ {v} +1} {\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {k, - (m, n)} + \ beta _ {r} +1}} \\ [8pt] = \ prod _ {i} \ Gamma \ left (n_ {m, (\ cdot)} ^ {i, - (m, n)} + \ alpha _ {i} \ right) \ prod _ {i} {\ frac {\ Gamma \ left (n _ {(\ cdot), v} ^ {i, - (m, n)} + \ beta _ {v} \ right)} {\ Gamma \ left (\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {i, - (m, n)} + \ beta _ {r} \ right)}} \ left (n_ {m, (\ cdot)} ^ {k, - (m, n)} + \ alpha _ {k} +1 \ right) {\ frac {n _ {(\ cdot), v} ^ {k, - (m, n)} + \ beta _ {v} +1} {\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {k, - (m, n)} + \ beta _ {r} +1}} \\ [8pt] \ propto \ left (n_ {m, (\ cdot)} ^ {k, - (m, n)} + \ alpha _ {k} +1 \ right) {\ frac {n _ {(\ cdot), v} ^ {k, - (m, n)} + \ beta _ {v} +1} {\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {k, - (m, n)} + \ beta _ {r} +1}} \ end {align}}}{\ displaystyle {\ begin {align} \ propto \ prod _ {i \ neq k} \ Гамма \ left (n_ {m, (\ cdot)} ^ {i, - (m, n)} + \ alpha _ {i} \ right) \ prod _ {i \ neq k} {\ frac {\ Gamma \ left (n _ {(\ cdot), v} ^ {i, - (m, n)} + \ beta _ {v} \ right)} {\ Gamma \ left (\ sum _ {r = 1} ^ {V } n _ {(\ cdot), r} ^ {i, - (m, n)} + \ beta _ {r} \ right)}} \ Gamma \ left (n_ {m, (\ cdot)} ^ {k, - (m, n)} + \ alpha _ {k} +1 \ right) {\ frac {\ Gamma \ left (n _ {(\ cdot), v} ^ {k, - (m, n)} + \ beta _ {v} +1 \ right)} {\ Gamma \ left (\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {k, - (m, n)} + \ beta _ {r} +1 \ right)}} \\ [8pt] = \ prod _ {i \ neq k} \ Gamma \ left (n_ {m, (\ cdot)} ^ {i, - (m, n)} + \ alpha _ {i} \ right) \ prod _ {i \ neq k} {\ frac {\ Gamma \ left (n _ {(\ cdot), v} ^ {i, - (m, n)} + \ beta _ {v} \ right)} {\ Gamma \ left (\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {i, - ( m, n)} + \ beta _ {r} \ right)}} \ Gamma \ left (n_ {m, (\ cdot)} ^ {k, - (m, n)} + \ alpha _ {k} \ справа) {\ frac {\ Gamma \ left (n _ {(\ cdot), v} ^ {k, - (m, n)} + \ beta _ {v} \ right)} {\ Gamma \ left (\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {k, - (m, n)} + \ beta _ {r} \ right)}} \ left (n_ {m, ( \ cdot)} ^ {k, - (m, n)} + \ alpha _ {k} +1 \ right) {\ frac {n _ {(\ cdot), v} ^ {k, - (m, n) } + \ beta _ {v} +1} {\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {k, - (m, n)} + \ beta _ {r } +1}} \\ [8pt] = \ prod _ {i} \ Gamma \ left (n_ {m, (\ cdot)} ^ {i, - (m, n)} + \ alpha _ {i} \ right) \ prod _ {i} {\ frac {\ Gamma \ left (n _ {(\ cdot), v} ^ {i, - (m, n)} + \ beta _ {v} \ right)} { \ Gamma \ left (\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {i, - (m, n)} + \ beta _ {r} \ right)}} \ слева (n_ {m, ( \ cdot)} ^ {k, - (m, n)} + \ alpha _ {k} +1 \ right) {\ frac {n _ {(\ cdot), v} ^ {k, - (m, n) } + \ beta _ {v} +1} {\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {k, - (m, n)} + \ beta _ {r } +1}} \\ [8pt] \ propto \ left (n_ {m, (\ cdot)} ^ {k, - (m, n)} + \ alpha _ {k} +1 \ right) {\ frac {n _ {(\ cdot), v} ^ {k, - (m, n)} + \ beta _ {v} +1} {\ sum _ {r = 1} ^ {V} n _ {(\ cdot), r} ^ {k, - (m, n)} + \ beta _ {r} +1}} \ end {align}}}

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

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

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

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

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

Как отмечалось ранее, pLSA аналогичен LDA. Модель LDA - это, по сути, байесовская версия модели pLSA. Байесовская формулировка обычно лучше работает с небольшими наборами данных, потому что байесовские методы позволяют избежать переобучения данных. Для очень больших наборов данных результаты двух моделей имеют тенденцию сходиться. Одно отличие состоит в том, что pLSA использует переменную d {\ displaystyle d}d для представления документа в обучающем наборе. Итак, в pLSA, когда представлен документ, который модель еще не видела, мы фиксируем Pr (w ∣ z) {\ displaystyle \ Pr (w \ mid z)}\ Pr (w \ mid z) - вероятность слова под темами - должны быть изучены из обучающей выборки и использовать тот же алгоритм EM для вывода Pr (z ∣ d) {\ displaystyle \ Pr (z \ mid d)}\ Pr (z \ mid d) - тема распределение под d {\ displaystyle d}d . Блей утверждает, что этот шаг является обманом, поскольку вы, по сути, перестраиваете модель в соответствии с новыми данными.

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

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

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

См. также
Ссылки
Внешние ссылки
  • jLDADMM Пакет Java для моделирования тем на обычных или коротких текстах. jLDADMM включает в себя реализации тематической модели LDA и полиномиальной смеси Дирихле, состоящей из одной темы для каждого документа. jLDADMM также предоставляет реализацию для оценки кластеризации документов для сравнения тематических моделей.
  • Пакет 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
  • Д. Библиография Mimno LDA Исчерпывающий список ресурсов, связанных с LDA (включая документы и некоторые реализации)
  • Gensim, Python + NumPy реализация онлайн-LDA для входных данных, превышающих доступную RAM.
  • topicmodels и lda - это два пакета R для анализа LDA.
  • «Анализ текста с помощью R», включая методы LDA, видеопрезентация для Октябрь 2011 г. Встреча группы пользователей R в Лос-Анджелесе
  • MALLET Пакет на основе Java с открытым исходным кодом от Массачусетского университета в Амхерсте для тематического моделирования с помощью LDA, также имеет независимо разработанный графический интерфейс, инструмент тематического моделирования
  • LDA в Mahout реализация LDA с использованием MapReduce на платформе Hadoop
  • Руководство по скрытому распределению Дирихле (LDA) для платформы машинных вычислений Infer.NET Microsoft Research C # Machine Learning Framework
  • LDA в Spark : Начиная с версии 1.3.0, Apache Spark также включает реализацию LDA
  • LDA, exampleLDA Реализация MATLAB
Последняя правка сделана 2021-05-26 14:21:01
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте