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

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
Построение тематической модели документа: : [math]\displaystyle{ p(w|t) }[/math] — матрица искомых условных распределений слов по темам : [math]\displaystyle{ p(t|d) }[/math] матрица искомых условных распределений тем по документам : [math]\displaystyle{ d }[/math] — документ : [math]\displaystyle{ w }[/math] — слово : [math]\displaystyle{ d, w }[/math] — наблюдаемые переменные : [math]\displaystyle{ t }[/math] — тема (скрытая переменная)

Тематическое моделирование — способ построения модели коллекции текстовых документов, которая определяет, к каким темам относится каждый из документов[1].

Тематическая модель (англ. topic model) коллекции текстовых документов определяет, к каким темам относится каждый документ и какие слова (термины) образуют каждую тему[2].

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

Тематическое моделирование как вид статистических моделей для нахождения скрытых тем, встреченных в коллекции документов, нашло своё применение в таких областях, как машинное обучение и обработка естественного языка. Исследователи используют различные тематические модели для анализа текстов, текстовых архивов документов, для анализа изменения тем в наборах документов[⇨]. Интуитивно понимая, что документ относится к определённой теме, в документах, посвящённых одной теме, можно встретить некоторые слова чаще других. Например: «собака» и «кость» встречаются чаще в документах про собак, «кошки» и «молоко» будут встречаться в документах о котятах, предлоги «и» и «в» будут встречаться в обеих тематиках. Обычно документ касается нескольких тем в разных пропорциях, таким образом, документ в котором 10 % темы составляют кошки, а 90 % темы — собаки, можно предположить, что слов про собак в 9 раз больше. Тематическое моделирование отражает эту интуицию в математической структуре, которая позволяет на основании изучения коллекции документов и исследования частотных характеристик слов в каждом документе сделать вывод, что каждый документ — это некоторый баланс тем.

Наибольшее применение в современных приложениях находят подходы, основанные на Байесовских сетях — вероятностных моделях на ориентированных графах. Вероятностные тематические модели — это относительно молодая область исследований в теории самообучения[⇨]. Одним из первых был предложен вероятностный латентно-семантический анализ[⇨] (PLSA), основанный на принципе максимума правдоподобия, как альтернатива классическим методам кластеризации, основанным на вычислении функций расстояния. Вслед за PLSA был предложен метод латентного размещения Дирихле и его многочисленные обобщения[3][⇨].

Вероятностные тематические модели осуществляют «мягкую» кластеризацию, позволяя документу или термину относиться сразу к нескольким темам с различными вероятностями. Вероятностные тематические модели описывает каждую тему дискретным распределением на множестве терминов, каждый документ — дискретным распределением на множестве тем. Предполагается, что коллекция документов — это последовательность терминов, выбранных случайно и независимо из смеси таких распределений, и ставится задача восстановления компонентов смеси по выборке[4][⇨].

Хотя тематическое моделирование традиционно описывалось и применялось в обработке естественного языка, оно нашло своё применение и в других областях, например, таких как биоинформатика.

История

Первое описание тематического моделирования появилось в работе Рагавана, Пападимитриу, Томаки и Вемполы 1998 года[5]. Томас Хофманн в 1999 году[6] предложил вероятностное скрытое семантическое индексирование (PLSI). Одна из самых распространенных тематических моделей — это латентное размещение Дирихле (LDA), эта модель является обобщением вероятностного семантического индексирования и разработана Дэвидом Блейем (англ. David Blei), Эндрю Ыном и Майклом Джорданом (англ. Michael I. Jordan) в 2002 году[7]. Другие тематические модели как правило являются расширением LDA, например, размещение патинко улучшает LDA за счёт введения дополнительных корреляционных коэффициентов для каждого слова, которое составляет тему.

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

Тэмплтон сделал обзор работ по тематическому моделированию в гуманитарных науках, сгруппированных по синхронному и диахроническому подходу[8]. Синхронные подходы выделяют темы в некоторый момент времени, например, Джокерс с помощью тематической модели исследовал, о чём писали блогеры в День Цифровых Гуманитарных наук в 2010 году[9].

Диахронические подходы, включая определение Блока и Ньюмана о временной динамике тем в Пенсильванской газете 1728—1800 года[10]. Грифитс и Стейверс использовали тематическое моделирование для обзоров журнала PNAS, определяли изменения популярности тем с 1991 по 2001 год[11]. Блевин создал тематическую модель дневника Марты Балладс[12]. Мимно использовал тематическое моделирование для анализа 24 журналов по классической филологии и археологии за 150 лет, чтобы определить изменения популярности тем и узнать, насколько сильно изменились журналы за это время[13].

Алгоритмы тематического моделирования

В работе Дэвида Блея «Введение в тематическое моделирование» рассмотрен наиболее популярный алгоритм Латентное размещение Дирихле[⇨][14]. На практике исследователи используют одну из эвристик метода максимального правдоподобия, методы сингулярного разложения (SVD), метод моментов, алгоритм, основанный на неотрицательной матрице факторизации (NMF), вероятностные тематические модели, вероятностный латентно-семантический анализ, латентное размещение Дирихле. В работе Воронцова К. В. рассмотрены вариации основных алгоритмов тематического моделирования: робастная тематическая модель, тематические модели классификации, динамические тематические модели, иерархические тематические модели, многоязычные тематические модели, модели текста как последовательности слов, многомодальные тематические модели [2].

Вероятностные тематические модели основаны на следующих предположениях [15] [16] [17] [18]:

  • Порядок документов в коллекции не имеет значения
  • Порядок слов в документе не имеет значения, документ — мешок слов
  • Слова, встречающиеся часто в большинстве документов, не важны для определения тематики
  • Коллекцию документов можно представить как выборку пар документ-слово [math]\displaystyle{ (d, w) }[/math] , [math]\displaystyle{ d \in D }[/math], [math]\displaystyle{ w \in \mathit{W}_d }[/math]
  • Каждая тема [math]\displaystyle{ t \in T }[/math] описывается неизвестным распределением [math]\displaystyle{ p(\mathit{W}|t) }[/math] на множестве слов [math]\displaystyle{ w \in \mathit{W} }[/math]
  • Каждый документ [math]\displaystyle{ d \in D }[/math] описывается неизвестным распределением [math]\displaystyle{ p(t|d) }[/math] на множестве тем [math]\displaystyle{ t \in T }[/math]
  • Гипотеза условной независимости [math]\displaystyle{ p(w|t,d) = p (w|t) }[/math]

Построить тематическую модель — значит, найти матрицы [math]\displaystyle{ \Phi = ||p(w|t)|| }[/math] и [math]\displaystyle{ \Theta = ||p(t|d)|| }[/math] по коллекции [math]\displaystyle{ \mathit{D} }[/math] В более сложных вероятностных тематических моделях некоторые из этих предположений заменяются более реалистичными.

Вероятностный латентно-семантический анализ

Вероятностный латентно-семантический анализ (PLSA). [math]\displaystyle{ d }[/math] — документ, [math]\displaystyle{ w }[/math] — слово, [math]\displaystyle{ d, w }[/math] — наблюдаемые переменные, [math]\displaystyle{ t }[/math] — тема (скрытая переменная), [math]\displaystyle{ p(d) }[/math] — априорное распределение на множестве документов, [math]\displaystyle{ p(w|t), p(t|d) }[/math] — искомые условные распределения, [math]\displaystyle{ D }[/math] — коллекция документов, [math]\displaystyle{ N }[/math] — длина документа в словах

Вероятностный латентно-семантический анализ (PLSA) предложен Томасом Хофманном в 1999 году. Вероятностная модель появления пары «документ-слово» может быть записана тремя эквивалентными способами:

[math]\displaystyle{ p(d,w) = \sum_{t\in T} p(t) p(w|t) p(d|t) = \sum_{t\in T} p(d) p(w|t) p(t|d) = \sum_{t\in T} p(w) p(t|w) p(d|t) }[/math]

где [math]\displaystyle{ T }[/math] — множество тем;

[math]\displaystyle{ p(t) }[/math] — неизвестное априорное распределение тем во всей коллекции;
[math]\displaystyle{ p(d) }[/math] — априорное распределение на множестве документов, эмпирическая оценка [math]\displaystyle{ p(d) = n_d/n }[/math] , где [math]\displaystyle{ n = \sum_d n_d }[/math] — суммарная длина всех документов;
[math]\displaystyle{ p(w) }[/math] — априорное распределение на множестве слов, эмпирическая оценка [math]\displaystyle{ p(w) = n_w/n }[/math], где [math]\displaystyle{ n_w }[/math] — число вхождений слова [math]\displaystyle{ w }[/math] во все документы;

Искомые условные распределения [math]\displaystyle{ p(w|t), p(t|d) }[/math] выражаются через [math]\displaystyle{ p(t|w), p(d|t) }[/math] по формуле Байеса:

[math]\displaystyle{ p(w|t) = \frac{p(t|w)p(w)}{\sum_{w'} p(t|w')p(w')};\qquad p(t|d) = \frac{p(d|t)p(t)}{\sum_{t'} p(d|t')p(t')}. }[/math]

Для идентификации параметров тематической модели по коллекции документов применяется принцип максимума правдоподобия, который приводит к задаче максимизации функционала[19]

[math]\displaystyle{ \sum_{d\in D} \sum_{w\in d} n_{dw}\ln \sum_{t\in \Tau} \varphi_{wt} \theta_{td} \to \max_{\Phi,\Theta} , }[/math]

при ограничениях нормировки

[math]\displaystyle{ \sum_w p(w|t) = 1,\; \sum_t p(t|d) = 1,\; \sum_t p(t) = 1, }[/math]

где [math]\displaystyle{ n_{dw} }[/math] — число вхождений слова [math]\displaystyle{ w }[/math] в документ [math]\displaystyle{ d }[/math]. Для решения данной оптимизационной задачи обычно применяется EM-алгоритм.

Основные недостатки PLSA:

  • Число параметров растёт линейно по числу документов в коллекции, что может приводить к переобучению модели.
  • При добавлении нового документа [math]\displaystyle{ d }[/math] в коллекцию распределение [math]\displaystyle{ p(t|d) }[/math] невозможно вычислить по тем же формулам, что и для остальных документов, не перестраивая всю модель заново.

Латентное размещение Дирихле

Латентное размещение Дирихле LDA. :[math]\displaystyle{ w }[/math] — слово (наблюдаемая переменная) :[math]\displaystyle{ t }[/math] — тема (скрытая переменная) :[math]\displaystyle{ D }[/math] — коллекция документов :[math]\displaystyle{ N }[/math] — длина документа в словах :[math]\displaystyle{ K }[/math] — количество тем в коллекции :[math]\displaystyle{ \theta }[/math] — распределение тем в документе :[math]\displaystyle{ \phi }[/math] — распределение слов в теме

Метод латентного размещения Дирихле (LDA) предложен Дэвидом Блеем в 2003 году.

В этом методе устранены основные недостатки PLSA.

Метод LDA основан на той же вероятностной модели

[math]\displaystyle{ p(d,w) = \sum_{t\in T} p(d) p(w|t) p(t|d), }[/math]

при дополнительных предположениях:

  • вектора документов [math]\displaystyle{ \theta_d = \bigl(p(t|d): t\in T\bigr) }[/math] порождаются одним и тем же вероятностным распределением на нормированных [math]\displaystyle{ |T| }[/math]-мерных векторах; это распределение удобно взять из параметрического семейства распределений Дирихле [math]\displaystyle{ \mathrm{Dir}(\theta,\alpha),\; \alpha\in\mathbb{R}^{|T|} }[/math];
  • вектора тем [math]\displaystyle{ \phi_t = \bigl(p(w|t): w\in W\bigr) }[/math] порождаются одним и тем же вероятностным распределением на нормированных векторах размерности [math]\displaystyle{ |W| }[/math]; это распределение удобно взять из параметрического семейства распределений Дирихле [math]\displaystyle{ \mathrm{Dir}(\theta,\beta),\; \beta\in\mathbb{R}^{|W|} }[/math].

Для идентификации параметров модели LDA по коллекции документов применяется семплирование Гиббса, вариационный байесовский вывод или метод распространения ожидания[англ.] (Expectation propagation).

См. также

Примечания

Литература

Ссылки

Программное обеспечение и программные библиотеки