Перейти к основному содержимому

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

При работе с текстовыми данными стандартное представление «мешок слов» (Bag-of-Words) порождает пространство признаков огромной размерности, равной размеру словаря. Однако слова в языке не независимы: они группируются в скрытые темы (latent topics).

Например, слова «инфляция», «банк» и «кредит» часто встречаются вместе, сигнализируя о финансовой тематике.

Тематическое моделирование (topic modeling) — это метод снижения размерности, в котором объект (документ) представляется не как набор слов, а как распределение по темам. Это позволяет сжать информацию и находить семантически близкие документы, даже если в них нет общих слов.

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

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

Вероятностный латентно-семантический анализ (Probabilistic Latent Semantic Analysis, PLSA, также известно как PLSI [1]) рассматривает появление слова в документе как статистический процесс.

Пусть у нас есть набор из NN документов и словарь из DD слов. Мы предполагаем наличие CC скрытых тем. Появление слова ww в документе dd моделируется через вспомогательную переменную темы tt:

p(wd)=c=1Cp(wy=c)p(y=cd)p(w | d) = \sum_{c=1}^C p(w | y=c) p(y=c | d)

Здесь используются следующие параметры:

  • p(y=cd)p(y=c | d) — вероятность темы cc в документе dd (вектор θn\boldsymbol{\theta}_n);
  • p(wy=c)p(w | y=c) — вероятность слова ww в теме cc (вектор ϕc\boldsymbol{\phi}_c).

Настройка модели

Для настройки используется метод максимального правдоподобия (Maximum Likelihood Estimation). Мы максимизируем логарифм вероятности всей коллекции текстов:

n=1Ni=1Dn(dn,wi)lnp(widn)maxθ,ϕ\sum_{n=1}^N \sum_{i=1}^D n(d_n, w^i) \ln p(w^i | d_n) \to \max_{\boldsymbol{\theta}, \boldsymbol{\phi}}

где n(dn,wi)n(d_n, w^i) — количество вхождений слова ii в документ nn. Оптимизация проводится с помощью EM-алгоритма (Expectation-Maximization algorithm).

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

Латентное размещение Дирихле (Latent Dirichlet Allocation, LDA [2]) является развитием PLSA. В этой модели параметры θn\boldsymbol{\theta}_n и ϕc\boldsymbol{\phi}_c сами являются случайными величинами, подчиняющимися распределению Дирихле.

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

Формулы и гиперпараметры

В LDA вводится иерархический процесс:

  1. Для каждого документа nn выбирается вектор распределения тем: θnDir(α)\boldsymbol{\theta}_n \sim \text{Dir}(\boldsymbol{\alpha}).
  2. Для каждой темы cc выбирается вектор распределения слов: ϕcDir(β)\boldsymbol{\phi}_c \sim \text{Dir}(\boldsymbol{\beta}).

Модель LDA гибче модели PLSA тем, что введённые гиперпараметры α\boldsymbol{\alpha} и β\boldsymbol{\beta} позволяют контролировать распределения слов в темах и распределение тем в документах:

  • Концентрация тем α\boldsymbol{\alpha}: определяет «разреженность» тем в документах. При малых α\alpha документ будет содержать всего 1–2 темы, при больших — будет смесью всех тем сразу.
  • Концентрация слов β\boldsymbol{\beta}: определяет разреженность слов в темах. Малые β\beta делают темы узкоспециализированными.

Преимущества и недостатки

Преимущества:

  • Устойчивость к переобучению за счёт априорных распределений.
  • Возможность обрабатывать документы, не входившие в обучающую выборку.
  • Интерпретируемость: темы можно представить в виде облаков слов.

Недостатки:

  • Требуется заранее задавать число тем CC.
  • Высокая вычислительная сложность (требуются методы вариационного вывода или сэмплирование Гиббса).

Сценарии использования

  1. Новостные агрегаторы: автоматическая группировка статей по сюжетам (политика, спорт, наука).
  2. Анализ отзывов: выделение ключевых аспектов продукта, которыми недовольны клиенты (доставка, качество, цена).
  3. Рекомендательные системы: поиск профилей интересов пользователей на основе истории их чтения.
  4. Классификация текстов: вместо многомерного TF-IDF представления каждый документ кодируется вектором θn\boldsymbol{\theta}_n, характризующим степень представленности в нём каждой темы.

Литература

  1. Hofmann T. Probabilistic latent semantic indexing //Proceedings of the 22nd annual international ACM SIGIR conference on Research and development in information retrieval. – 1999. – С. 50-57.
  2. Blei D. M., Ng A. Y., Jordan M. I. Latent dirichlet allocation //Journal of machine Learning research. – 2003. – Т. 3. – №. Jan. – С. 993-1022.