Сергей Николенко, Deloitte Analytics Institute, Высшая Школа...

53
От наивного байеса к topic modeling Тематическое моделирование Тематическое моделирование Сергей Николенко DataFest 2 , 6 марта 2016 г. Сергей Николенко Тематическое моделирование

Transcript of Сергей Николенко, Deloitte Analytics Institute, Высшая Школа...

Page 1: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Тематическое моделирование

Сергей Николенко

DataFest2, 6 марта 2016 г.

Сергей Николенко Тематическое моделирование

Page 2: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

Outline

1 От наивного байеса к topic modelingNaive BayespLSA

2 Тематическое моделированиеLDAРасширения LDA

Сергей Николенко Тематическое моделирование

Page 3: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

Категоризация текстов

Классическая задача машинного обучения и informationretrieval – категоризация текстов.

Дан набор текстов, разделённый на категории. Нужнообучить модель и потом уметь категоризовать новыетексты.

Атрибуты w1,w2, . . . ,wn – это слова, v – тема текста (илиатрибут вроде «спам / не спам»).

Bag-of-words model: забываем про порядок слов,составляем словарь. Теперь документ – это вектор,показывающий, сколько раз каждое слово из словаря внём встречается.

Сергей Николенко Тематическое моделирование

Page 4: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

Naive Bayes

Заметим, что даже это – сильно упрощённый взгляд: дляслов ещё довольно-таки важен порядок, в котором ониидут...

Но и это ещё не всё: получается, чтоp(w1,w2, . . . ,wn|x = v) – это вероятность в точноститакого набора слов в сообщениях на разные темы.Очевидно, такой статистики взять неоткуда.

Значит, надо дальше делать упрощающие предположения.

Наивный байесовский классификатор – самая простаятакая модель: давайте предположим, что все слова всловаре условно независимы при условии даннойкатегории.

Сергей Николенко Тематическое моделирование

Page 5: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

Naive Bayes

Иначе говоря:

p(w1,w2, . . . ,wn|x = v) = p(w1|x = v)p(w2|x = v) . . . p(wn|x = v).

Итак, наивный байесовский классификатор выбирает v как

vNB(w1,w2, . . . ,wn) = arg maxv∈V p(x = v)n∏

i=1

p(wi |x = v).

В парадигме классификации текстов мы предполагаем, чторазные слова в тексте на одну и ту же тему появляютсянезависимо друг от друга. Однако, несмотря на такиебредовые предположения, naive Bayes на практике работаеточень даже неплохо (и этому есть разумные объяснения).

Сергей Николенко Тематическое моделирование

Page 6: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

Naive Bayes: графическая модель

Сергей Николенко Тематическое моделирование

Page 7: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

Как можно обобщить наивный байес

В наивном байесе есть два сильно упрощающих делопредположения:

мы знаем метки тем всех документов;у каждого документа только одна тема.

Мы сейчас уберём оба эти ограничения.

Во-первых, что можно сделать, если мы не знаем меткитем, т.е. если датасет неразмеченный?

Сергей Николенко Тематическое моделирование

Page 8: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

Кластеризация

Тогда это превращается в задачу кластеризации.Её можно решать EM-алгоритмом(Expectation-Maximization, используется в ситуациях, когдаесть много скрытых переменных, причём если бы мы ихзнали, модель стала бы простой):

на E-шаге считаем ожидания того, какой документ какойтеме принадлежит;на M-шаге пересчитываем наивным байесом вероятностиp(w | t) при фиксированных метках.

Это простое обобщение.

Сергей Николенко Тематическое моделирование

Page 9: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

Как ещё можно обобщить наивный байес

А ещё в наивном байесе у документа только одна тема.

Но это же не так! На самом деле документ говорит омногих темах (но не слишком многих).

Давайте попробуем это учесть.

Сергей Николенко Тематическое моделирование

Page 10: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

pLSA

Рассмотрим такую модель:каждое слово в документе d порождается некоторой темойt ∈ T ;документ порождается некоторым распределением натемах p(t | d);слово порождается именно темой, а не документом:p(w | d , t) = p(w | d);итого получается такая функция правдоподобия:

p(w | d) =∑t∈T

p(w | t)p(t | d).

Эта модель называется probabilistic latent semantic analysis,pLSA (Hoffmann, 1999).

Сергей Николенко Тематическое моделирование

Page 11: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

pLSA: графическая модель документа

Сергей Николенко Тематическое моделирование

Page 12: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

pLSA

Как её обучать? Мы можем оценить p(w | d) = nwdnd

, анужно найти:

φwt = p(w | t);θtd = p(t | d).

Максимизируем правдоподобие

p(D) =∏d∈D

∏w∈d

p(d ,w)ndw =∏d∈D

∏w∈d

[∑t∈T

p(w | t)p(t | d)

]ndw

.

Как максимизировать такие правдоподобия?

Сергей Николенко Тематическое моделирование

Page 13: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

pLSA

EM-алгоритмом. На E-шаге ищем, сколько слов w вдокументе d из темы t:

ndwt = ndwp(t | d ,w) = ndwφwtθtd∑

s∈T φwsθsd.

А на M-шаге пересчитываем параметры модели:

nwt =∑

d ndwt , nt =∑

w nwt , φwt =nwtnt,

ntd =∑

w∈d ndwt , θtd = ntdnd.

Вот и весь вывод в pLSA.

Сергей Николенко Тематическое моделирование

Page 14: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

pLSA

Можно даже не хранить всю матрицу ndwt , а двигаться подокументам, каждый раз добавляя ndwt сразу к счётчикамnwt , ntd .Чего тут не хватает?

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

Всё это мы можем решить как?

Сергей Николенко Тематическое моделирование

Page 15: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

pLSA

Правильно, регуляризацией. Есть целая наука о разныхрегуляризаторах для pLSA (К.В. Воронцов).

В общем виде так: добавим регуляризаторы Ri в логарифмправдоподобия:∑

d∈D

∑w∈d

ndw ln∑t∈T

φwtθtd +∑

i

τiRi (Φ,Θ).

Сергей Николенко Тематическое моделирование

Page 16: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

pLSA

Тогда в EM-алгоритме на M-шаге появятся частныепроизводные R :

nwt =

[∑d∈D

ndwt + φwt∂R∂φwt

]+

,

ntd =

[∑w∈d

ndwt + θtd∂R∂θtd

]+

Чтобы доказать, EM надо рассмотреть как решение задачиоптимизации через условия Каруша-Куна-Такера.

Сергей Николенко Тематическое моделирование

Page 17: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

Naive BayespLSA

pLSA

И теперь мы можем кучу разных регуляризаторов вставитьв эту модель:

регуляризатор сглаживания (позже, это примерно какLDA);регуляризатор разреживания: максимизируемKL-расстояние между распределениями φwt и θtd иравномерным распределением;регуляризатор контрастирования: минимизируемковариации между векторами φt , чтобы в каждой темевыделилось своё лексическое ядро (характерные слова);регуляризатор когерентности: будем награждать за слова,которые в документах стоят ближе друг к другу;и так далее, много всего можно придумать.

Сергей Николенко Тематическое моделирование

Page 18: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Outline

1 От наивного байеса к topic modelingNaive BayespLSA

2 Тематическое моделированиеLDAРасширения LDA

Сергей Николенко Тематическое моделирование

Page 19: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

LDA

Развитие идей pLSA – LDA (Latent Dirichlet Allocation),фактически байесовский вариант pLSA.

Задача та же: смоделировать большую коллекцию текстов(например, для information retrieval или классификации).У одного документа может быть несколько тем. Давайтепостроим иерархическую байесовскую модель:

на первом уровне – смесь, компоненты которойсоответствуют «темам»;на втором уровне – мультиномиальная переменная саприорным распределением Дирихле, которое задаёт«распределение тем» в документе.

Сергей Николенко Тематическое моделирование

Page 20: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

LDA

Если формально: слова берутся из словаря {1, . . . ,V };слово – это вектор w , wi ∈ {0, 1}, где ровно однакомпонента равна 1.

Документ – последовательность из N слов w . Нам данкорпус из M документов D = {wd | d = 1..M}.Генеративная модель LDA выглядит так:

выбрать θ ∼ Di(α);для каждого из N слов wn:

выбрать тему zn ∼ Mult(θ);выбрать слово wn ∼ p(wn | zn, β) по мультиномиальномураспределению.

Сергей Николенко Тематическое моделирование

Page 21: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

LDA: графическая модель

Сергей Николенко Тематическое моделирование

Page 22: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

LDA: что получается [Blei, 2012]

Сергей Николенко Тематическое моделирование

Page 23: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

LDA: вывод

Два основных подхода к выводу в сложных вероятностныхмоделях, в том числе LDA:

вариационные приближения: рассмотрим более простоесемейство распределений с новыми параметрами и найдёмв нём наилучшее приближение к неизвестномураспределению;сэмплирование: будем набрасывать точки из сложногораспределения, не считая его явно, а запуская марковскуюцепь под графиком распределения (частный случай –сэмплирование по Гиббсу).

Сэмплирование по Гиббсу обычно проще расширить нановые модификации LDA, но вариационный подходбыстрее и часто стабильнее.

Сергей Николенко Тематическое моделирование

Page 24: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Варианты и расширения модели LDA

В последние десять лет эта модель стала основой длямножества различных расширений.

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

Обычно – или дополнительная структура на темах, илидополнительная информация.

Сергей Николенко Тематическое моделирование

Page 25: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Коррелированные тематические модели

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

Коррелированные тематические модели (correlated topicmodels, CTM) – меняем априорное распределение на болеевыразительное, которое может моделировать корреляции.

Предлагается алгоритм вывода, основанный навариационном приближении.

Сергей Николенко Тематическое моделирование

Page 26: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Марковские тематические модели

Марковские тематические модели (Markov topic models,MTM): марковские случайные поля для моделированиявзаимоотношений между темами в разных частях датасета(разных корпусах текстов).

Несколько копий гиперпараметров βi в LDA, описывающихпараметры разных корпусов с одними и теми же темами.Гиперпараметры βi связаны между собой в марковскомслучайном поле (Markov random field, MRF).

Сергей Николенко Тематическое моделирование

Page 27: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Марковские тематические модели

В результате тексты из i-го корпусапорождаются как в обычном LDA,используя соответствующее βi .В свою очередь, βi подчиняютсяаприорным ограничениям, которыепозволяют «делить» темы междукорпусами, задавать «фоновые»темы, присутствующие во всехкорпусах, накладывать ограниченияна взаимоотношения между темамии т.д.

Сергей Николенко Тематическое моделирование

Page 28: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Реляционная тематическая модель

Реляционная тематическая модель (relational topic model,RTM) – иерархическая модель, в которой отражён графструктуры сети документов.Генеративный процесс в RTM работает так:

сгенерировать документы из обычной модели LDA;для каждой пары документов d1, d2 выбрать бинарнуюпеременную y12, отражающую наличие связи между d1 иd2:

y12 | zd1 , zd2 ∼ ψ(· | zd1 , zd2 ,η).

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

Сергей Николенко Тематическое моделирование

Page 29: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Модели, учитывающие время

Ряд важных расширений LDA касается учёта трендов, т.е.изменений в распределениях тем, происходящих современем.

Цель – учёт времени, анализ «горячих» тем, анализ того,какие темы быстро становятся «горячими» и столь жебыстро затухают, а какие проходят «красной нитью» черезвесь исследуемый временной интервал.

Сергей Николенко Тематическое моделирование

Page 30: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Topics over Time

В модели TOT (Topics over Time) время предполагаетсянепрерывным, и модель дополняетсябета-распределениями, порождающими временные метки(timestamps) для каждого слова.Генеративная модель модели Topics over Time такова:

для каждой темы z = 1..T выбрать мультиномиальноераспределение φz из априорного распределения Дирихлеβ;для каждого документа d выбрать мультиномиальноераспределение θd из априорного распределения Дирихлеα, затем для каждого слова wdi ∈ d :

выбрать тему zdi из θd ;выбрать слово wdi из распределения φzdi ;выбрать время tdi из бета-распределения ψzdi .

Сергей Николенко Тематическое моделирование

Page 31: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Topics over Time

Основная идея заключается в том, что каждой темесоответствует её бета-распределение ψz , т.е. каждая темалокализована во времени (сильнее или слабее, взависимости от параметров ψz).

Таким образом можно как обучить глобальные темы,которые всегда присутствуют, так и подхватить тему,которая вызвала сильный краткий всплеск, а затемпропала из виду; разница будет в том, что дисперсия ψz

будет в первом случае меньше, чем во втором.

Сергей Николенко Тематическое моделирование

Page 32: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Topics over Time

Сергей Николенко Тематическое моделирование

Page 33: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Динамические тематические модели

Динамические тематические модели представляютвременную эволюцию тем через эволюцию ихгиперпараметров α и/или β.Бывают дискретные ([d]DTM), в которых времядискретно, и непрерывные, где эволюция гиперпараметраβ (α здесь предполагается постоянным) моделируетсяпосредством броуновского движения: для двух документовi и j (j позже i) верно, что

βj ,k,w | βi ,k,w , si , sj ∼ N (βi ,k,w , v∆si ,sj ),

где si и sj – это отметки времени (timestamps) документовi и j , ∆(si , sj) – интервал времени, прошедший междуними, v – параметр модели.В остальном генеративный процесс остаётся неизменным.

Сергей Николенко Тематическое моделирование

Page 34: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Непрерывная динамическая тематическая модель(cDTM)

Сергей Николенко Тематическое моделирование

Page 35: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

DiscLDA

Дискриминативное LDA (DiscLDA), расширение моделиLDA для документов, снабжённых категориальнойпеременной y , которая в дальнейшем станет предметомдля классификации.Для каждой метки класса y в модели DiscLDA вводитсялинейное преобразование T y : RK → RL

+, котороепреобразует K -мерное распределение Дирихле θ в смесьL-мерных распределений Дирихле T yθ.В генеративной модели меняется только шаг порождениятемы документа z : вместо того чтобы выбирать z пораспределению θ, сгенерированному для данногодокумента,

сгенерировать тему z по распределению T yθ, где T y –преобразование, соответствующее метке данногодокумента y .

Сергей Николенко Тематическое моделирование

Page 36: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

DiscLDA

Сергей Николенко Тематическое моделирование

Page 37: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

TagLDA

TagLDA: слова имеют теги, т.е. документ не являетсяединым мешком слов, а состоит из нескольких мешков, и вразных мешках слова отличаются друг от друга.

Например, у страницы может быть название – слова изназвания важнее для определения темы, чем просто изтекста. Или, например, теги к странице, поставленныечеловеком – опять же, это слова гораздо более важные,чем слова из текста.

Математически разница в том, что теперь распределенияслов в темах – это не просто мультиномиальныедискретные распределения, они факторизованы нараспределение слово-тема и распределение слово-тег.

Сергей Николенко Тематическое моделирование

Page 38: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

TagLDA

Сергей Николенко Тематическое моделирование

Page 39: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Author-Topic model

Author-Topic modeling: кроме собственно текстов,присутствуют их авторы.

У автора тоже вводится распределение на темах, накоторые он пишет, и тексты автора будут скорее о болеевероятных для него темах.

Т.е. это всё же скорее об авторах научных статей, чем обатрибуции текстов (там другие методы).

Сергей Николенко Тематическое моделирование

Page 40: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Author-Topic modelБазовая генеративная модельAuthor-Topic model (остальноекак в базовом LDA):

для каждого слова w :выбираем автора x дляэтого слова измножества авторовдокумента ad ;выбираем тему израспределения на темах,соответствующегоавтору x ;выбираем слово израспределения слов,соответствующего этойтеме.

Сергей Николенко Тематическое моделирование

Page 41: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

LDA для sentiment analysis

LDA для sentiment analysis: можно ли выделить из,например, обзоров продуктов разные темы (аспекты):например, для отеля – место, качество обслуживания, еда,комнаты и т.п.

К этому ещё добавляется, что разные слова в разныхаспектах могут нести разную нагрузку.

Здесь есть несколько расширений LDA.

Сергей Николенко Тематическое моделирование

Page 42: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

JST

Joint Sentiment-Topic model(JST):

тема зависит отсентимента;

сентимент берётся израспределений сентиментаπd ;

у слов тоже есть меткисентимента λ;

а слова в документахзависят от пар«тема–сентимент».

Сергей Николенко Тематическое моделирование

Page 43: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

ASUM

Aspect and Sentiment UnificationModel (ASUM): примерно тоже, что JST, но делим обзор напредложения и предполагаем,что одно предложение всегдаговорит об одном аспекте(SentenceLDA).

Сергей Николенко Тематическое моделирование

Page 44: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

USTM

User-aware Sentiment TopicModel (USTM): а теперьдобавим данные о конкретномпользователе, выраженные кактеги документов aj , взятые изсоответствующихраспределений ψd .

Сергей Николенко Тематическое моделирование

Page 45: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Наши последние результаты

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

Но на практике не всегда словарь по данному аспекту есть,а когда есть, его всё равно неплохо бы расширить.Поэтому идея такая:

инициализируем β по имеющемуся словарю;EM-схема – повторяем до сходимости:

немножко обучаем тематическую модель сфиксированными β;переобучаем β по обучившимся темам.

Сергей Николенко Тематическое моделирование

Page 46: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

SVD-LDA

LDA для рекомендательных систем: как намрекомендовать тексты?

Можно просто обучить темы и построить «профилиинтересов».

Но можно и лучше: можно обучить темы так, чтобы темылучше соответствовали тому, что мы хотим рекомендовать.

Это делается при помощи варианта модели SupervisedLDA.

Сергей Николенко Тематическое моделирование

Page 47: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Supervised LDA

Supervised LDA: документы снабжены дополнительнойинформацией, дополнительной переменной отклика(обычно известной).Распределение отклика моделируется обобщённойлинейной моделью (распределением из экспоненциальногосемейства), параметры которой связаны с полученным вдокументе распределением тем.Т.е. в генеративную модель добавляется ещё один шаг:после того как темы всех слов известны,

сгенерировать переменную–отклик y ∼ glm(z, η, δ), где z –распределение тем в документе, а η и δ – другиепараметры glm.

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

Сергей Николенко Тематическое моделирование

Page 48: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

SVD-LDA

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

Сергей Николенко Тематическое моделирование

Page 49: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

TwitterLDA

TwitterLDA – тематическая модель для коротких текстов.

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

Но при этом у твитов есть авторы, и у авторов-то уже естьлюбимые темы.Поэтому TwitterLDA устроен так:

распределение θ – не у текста, а у автора;из него сэмплируется тема сразу на весь твит;и потом из этой темы сэмплируются все слова.

Похоже на SentenceLDA.

Сергей Николенко Тематическое моделирование

Page 50: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Neural topic models

Совсем недавние работы – как скрестить topic modeling иdeep learning?Одна идея – изменить понятие темы:

раньше было мультиномиальное распределение, и всеслова были независимы;теперь пусть будет распределение в семантическомпространстве word2vec;в [Sridhar, 2015] тема – это смесь гауссианов всемантическом пространстве.

Сергей Николенко Тематическое моделирование

Page 51: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Neural topic models

Другая идея – neural topic models [Cao et al., 2015]:рассмотрим базовое уравнение тематических моделейp(w | d) =

∑t p(w | t)p(t | d) = φ(w)>θ(d);

и представим φ(w) и θ(d) нейронными сетями:

Сергей Николенко Тематическое моделирование

Page 52: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Выводы

Тематические модели берут на вход корпус текстов и безучителя обучают распределения слов в темах и тем вдокументах.

Фактически получается сжатое представление матрицыслова×документы как произведение матриц слова×темы итемы×документы.Можно просто обучить стандартный LDA и потом темыиспользовать для ваших целей как features, как сжатоепредставление текстов.

А можно использовать одно из многочисленныхрасширений LDA, которое, теоретически :), должноработать лучше.

Сергей Николенко Тематическое моделирование

Page 53: Сергей Николенко, Deloitte Analytics Institute, Высшая Школа Экономики, «От наивного байеса к topic modeling»

От наивного байеса к topic modelingТематическое моделирование

LDAРасширения LDA

Thank you!

Thank you for your attention!

Сергей Николенко Тематическое моделирование