Тематическое моделирование
При работе с текстовыми данными стандартное представление «мешок слов» (Bag-of-Words) порождает пространство признаков огромной размерности, равной размеру словаря. Однако слова в языке не независимы: они группируются в скрытые темы (latent topics).
Например, слова «инфляция», «банк» и «кредит» часто встречаются вместе, сигнализируя о финансовой тематике.
Тематическое моделирование (topic modeling) — это метод снижения размерности, в котором объект (документ) представляется не как набор слов, а как распределение по темам. Это позволяет сжать информацию и находить семантически близкие документы, даже если в них нет общих слов.
Анализируя же вектора полученных тем, можно быстро составить общее представление о типах текстов в большой текстовой коллекции.
Вероятностный латентно-семантический анализ (PLSA)
Вероятностный латентно-семантиче ский анализ (Probabilistic Latent Semantic Analysis, PLSA, также известно как PLSI [1]) рассматривает появление слова в документе как статистический процесс.
Пусть у нас есть набор из документов и словарь из слов. Мы предполагаем наличие скрытых тем. Появление слова в документе моделируется через вспомогательную переменную темы :
Здесь используются следующие параметры:
- — вероятность темы в документе (вектор );
- — вероятность слова в теме (вектор ).
Настройка модели
Для настройки используется метод максимального правдоподобия (Maximum Likelihood Estimation). Мы максимизируем логарифм вероятности всей коллекции текстов:
где — количество вхождений слова в документ . Оптимизация проводится с помощью EM-алгоритма (Expectation-Maximization algorithm).
Латентное размещение Дирихле (LDA)
Латентное размещение Дирихле (Latent Dirichlet Allocation, LDA [2]) является развитием PLSA. В этой модели параметры и сами являются случайными величинами, подчиняющимися распределению Дирихле.
Распределение Дирихле выбрано потому, что для него проще получить оценку модели через байесовский вывод.
Формулы и гиперпараметры
В LDA вводится иерархический процесс:
- Для каждого документ а выбирается вектор распределения тем: