Можарова Тематические модели: учет сходства между униграммами и биграммами.
1. Тематические модели: учет
сходства между униграммами
и биграммами
Можарова Валерия Александровна
Научный руководитель Лукашевич Наталья Валентиновна
2. Тематические модели
o Информационный поиск
o Разрешение морфологической неоднозначности
o Многодокументное аннотирование
o Кластеризация и категоризация документов
o Выявление трендов в научных публикациях и тематических
потоках
o Обработка аудио и видео сигналов
3. Вероятностная модель коллекции
документов
D – множество документов
T – множество тем
W – множество терминов
Коллекция документов рассматривается как множество троек
(d, w, t), выбранных случайно и независимо из дискретного
распределения p(d, w, t), заданного на конечном множестве
D×W×T (модель «мешок слов»).
d, w – наблюдаемые переменные
t – скрытая переменная
4. Вероятностная модель коллекции
документов
Гипотеза условной независимости:
p(w|d,t) = p(w|t)
p(d|w,t) = p(d|t)
p(d,w|t) = p(d|t)p(w|t)
Вероятностная модель порождения данных:
P(w|d) = 푡 푃 푤 푡 푃(푡|푑)
5. Порождение коллекции текстов с
помощью тематических моделей
Input: распределения P(w|t) и P(t|d)
Output: коллекция D = {(d, w)}
for d 휖 D do
Задать длину 푛푑 документа d
for i = 1,.., 푛푑 do
Выбрать тему t из P(t|d)
Выбрать слово w из P(w|t)
Добавить в D пару (d, w)
6. Частотные оценки условных вероятностей
P(d|w) =
푛푑푤
푛
P(d) =
푛푑
푛
P(w) =
푛푤
푛
P(w|d) =
푛푑푤
푛푑
푛푑푤 - число вхождений термина w в документ d
푛푑 = 푤휖푊 푛푑푤 - длина документа d в терминах
푛푤 = 푑휖퐷 푛푑푤 - число вхождений термина w во все документы
коллекции
n = 푑휖퐷 푤휖푑 푛푑푤 - длина коллекции в терминах
7. Частотные оценки условных вероятностей
P(t) =
푛푡
푛
P(w|t) =
푛푤푡
푛푡
P(t|d) =
푛푑푡
푛푑
P(t|d,w) =
푛푑푤푡
푛푑푤
푛푑푤푡 - число троек, в которых термин документа d связан с темой t
푛푑푡 = 푤휖푊 푛푑푤푡 - число троек, в которых термин документа d
связан с темой t
푛푤푡 = 푑휖퐷 푛푑푤푡 - число троек, в которых термин w
связан с темой t
푛푡 = 푑휖퐷 푤휖푑 푛푑푤푡 - число троек, связанных с темой t
8. Вероятностный латентный семантический
анализ
Предложен Томасом Хофманом.
Вероятностная модель появления пары «документ-
термин» (d,w) записывается тремя эквивалентными
способами:
p(d|w) = 푡휖푇 푝 푡 푝 푤 푡 푝(푑|푡) = 푡휖푇 푝 푑 푝 푤 푡 푝(푡|푑) =
푡휖푇 푝 푤 푝 푡 푤 푝(푑|푡)
p(t) – распределение тем во всей коллекции
9. Вероятностный латентный семантический
анализ
Ф – {φ푤푡 = 푝(푤|푡)} - распределение слов w по темам t
Θ – {θ 푡푑 = 푝(푡|푑)} - распределение тем t по документам d
푛푑푤- частотность слов w и s в документе d
푛푤푡 - оценка частотности слова w в t
푛푡푑 - оценка частотности слова t в d
푛푡 - оценка частотности темы t в коллекции документов D
10. PLSA-EM: рациональный EM-алгоритм для
модели PLSA
Input: D, |T|, начальные приближения Ф и θ
Output: распределения Ф и θ
While не выполняется критерий остановки do
for d 휖 D, w 휖 W, t 휖 T do
푛푤푡 = 0, 푛푡푑 = 0 , 푛푡= 0
for d 휖 D, w 휖 W do
Z = 푡 φ푤푡θ 푡푑
for t 휖 T do
if φ푤푡θ 푡푑> 0 then
푛푤푡, 푛푡푑 , 푛푡 += n푑푤φ푤푡θ 푡푑 /Z
for w 휖 W, t 휖 T do
φ푤푡 = 푛푤푡/푛푡
for d 휖 D, t 휖 T do
θ 푡푑 = 푛푡푑/푛푡
11. PLSA-EM: рациональный EM-алгоритм для
модели PLSA
Вычислительная сложность:
O(WT + DT)
W – размер словаря
T – число тем
D – количество документов
12. Тематические модели
Главный недостаток: использование модели «мешок слов».
Слова могут быть связаны между собой по смыслу:
Бюджетный – бюджетная политика – бюджетная
система
13. Тематические модели
Задача:
o Предложить модификацию алгоритма PLSA, позволяющую
добавлять биграммы и учитывать сходство между ними и
униграммными компонентами
o Оценить работу алгоритма
o Предложить итеративный алгоритм добавления наиболее
подходящих биграмм в тематические модели и оценить
качество его работы на тестовых коллекциях
14. Учет словосочетаний в тематических
моделях
1. Биграммная Тематическая Модель
a) Вероятности слов зависят от вероятностей
непосредственно предшествующих слов
b) W2T параметров (ср.WT параметров у LDA иWT
+ DT параметров у PLSA)
c) Работает только с биграммами
15. Учет словосочетаний в тематических
моделях
2. Модель словосочетаний LDA
a) Расширение биграммной тематической модели за
счет дополнительный параметров для генерации
униграмм и биграмм
b) W2T + W2 параметров
16. Учет словосочетаний в тематических
моделях
3. Тематическая N-граммная Модель
a) Усложнение предыдущих моделей для формирования
n-грамм в зависимости от контекста
b) WnT параметров
17. Учет словосочетаний в тематических
моделях
Вывод:
Большая вычислительная сложность => неприменимость
на реальных данных
18. Текстовая коллекция
10422 статьи на русском языке, взятых из некоторых
электронных банковских журналов (таких, как
Аудитор, РБК, Банковский журнал и др.). В данных
документах содержится около 15.5 млн слов.
19. Предобработка
o Рассматриваются только существительные,
прилагательные, глаголы и наречия
o Слова, встретившиеся не менее 5 раз
o Биграммы:
a) Сущ.+ сущ. в родительном падеже
b) Прил. + сущ
20. Методы оценивания качества
тематических моделей
Перплексия
푃푒푟푝푙푒푥푖푡푦 퐷′ = e푥푝 −
1
푛
푑휖퐷′
푤휖푑
푛푑푤ln 푝 푤 푑
o Чем меньше значение перплексии, тем лучше модель
предсказывает появление слов w в документах коллекции
o Для вычисления коллекция разбивается на 2 части:
1. D – для обучения модели (90% документов)
2. D′ – для вычисления перплексии (10% документов)
21. Методы оценивания качества
тематических моделей
Мера согласованности подтем TC-PMI
푇퐶−푃푀퐼 =
1
푇
푇
푡=1
10
푗=1
푗−1
푖=1
ln
푡 , 푤푖
푃 푤푗
푡
푡 푃(푤푖
푃 푤푗
푡 )
o Определяет, насколько топ-10 слов (или фраз) каждой
подтемы соответствуют ей
o Сильная корреляция с оценками экспертов
22. Методы оценивания качества
тематических моделей
Предлагаемая модификация алгоритма PLSA косвенно
максимизирует согласованность подтем
Вариант меры согласованности подтем TC–PMI-nSIM:
Мера рассматривает топ-10 слов и словосочетаний, не
содержащихся в одних и тех же множествах похожих слов и
словосочетаний
23. Добавление биграмм в тематические
модели
o Биграмма встречается не менее 5 раз
o Для всех извлеченных биграмм вычисляются
ассоциативные меры
o Для каждой меры добавляется ТОП-1000 биграмм
o Из частот образующих униграмм вычитались частоты
биграмм
24. Добавление биграмм в тематические
модели
Ассоциативные мера Перплексия TC-PMI
Оригинальная PLSA 1694 86.4
MI 1683 79.2
Настоящая MI 2162 110.7
Кубическая MI 2000 95
DC 1777 89.6
Модифицированный DC 2134 94.1
T-Score 2189 104.9
Лексическая связность 1928 101.3
Хи-квадрат 1763 89.6
25. Добавление схожих униграмм в
тематические модели
В документах есть много слов связанных между собой по
смыслу.
Примеры:
1. Банк - банковский - банкир
2. Кредит - кредитный – кредитовать – кредитование
26. Добавление схожих униграмм в
тематические модели
D – коллекция документов
T – множество тем
W – словарь
Ф – {φ푤푡 = 푝(푤|푡)} - распределение слов w по темам t
Θ – {θ 푡푑 = 푝(푡|푑)} - распределение тем t по документам d
S – {푆푤} - множество похожих слов
푛푑푤, 푛푑푠 - частотность слов w и s в документе d
푛푤푡 - оценка частотности слова w в t
푛푡푑 - оценка частотности слова t в d
푛푡 - оценка частотности темы t в коллекции документов D
27. PLSA-SIM
Input: D, |T|, начальные приближения Ф и θ, S
Output: распределения Ф и θ
While не выполняется критерий остановки do
for d 휖 D, w 휖 W, t 휖 T do
푛푤푡 = 0, 푛푡푑 = 0 , 푛푡= 0
for d 휖 D, w 휖 W do
Z = 푡 φ푤푡θ 푡푑
f 푑푤 = 푛푑푤 + 푠휖푆푤 푛푑푠
for t 휖 T do
if φ푤푡θ 푡푑> 0 then
푛푤푡, 푛푡푑 , 푛푡 += f 푑푤φ푤푡θ 푡푑/Z
for w 휖 W, t 휖 T do
φ푤푡 = 푛푤푡/푛푡
for d 휖 D, t 휖 T do
θ 푡푑 = 푛푡푑/푛푡
28. Добавление схожих униграмм в
тематические модели
Слова похожи, если выполняется хотя бы одно из условий:
o Начинаются с 4 одинаковых букв, не являющихся приставкой
Количество букв подобрано опытным путем.
Составлен список из 43 самых широко использующихся
приставок (анти- , пере-, гипер- и др.)
o Если слова начинаются на одну и ту же приставку, они считаются
похожими, если следующая за приставкой буква совпадает
29. Добавление схожих униграмм в
тематические модели
Алгоритм Перплексия TC-PMI-nSIM
Исходный алгоритм PLSA 1694 78.3
PLSA-SIM 1376 87.8
PLSA алгоритм PLSA- SIM алгоритм
Бумага Документ Аудитор Правый
Ценный Электронный Аудиторский Право
Акция Форма Аудитор Правило
Рынок Организация Аудируемый Акция
Облигация Подпись Проверка Акционер
30. Добавление схожих биграмм в
тематические модели
Биграмма (푤1, 푤2) считается похожей на униграмму 푤3,
если выполнен один из следующих критериев:
o Слово 푤3 похоже на 푤1 или 푤2
o Слово 푤3 совпадает с 푤1 или 푤2 и длина 푤3 больше трех
букв
31. Добавление схожих биграмм в
тематические модели
Алгоритм Перплексия TC-PMI-nSIM
PLSA 1694 78.3
PLSA-SIM 1376 87.8
PLSA-SIM + MI 1411 106.2
PLSA-SIM + настоящая MI 1204 177.8
PLSA-SIM + кубическая MI 1186 151.7
PLSA-SIM + DC 1288 99
PLSA-SIM + модифицированный
1163 156.2
DC
PLSA-SIM + T-Score 1346 171.5
32. Добавление схожих биграмм в
тематические модели
Инвестиция Финансовый рынок
Инвестор Финансовая система
Инвестирование Финансовый
Иностранный инвестор Финансовый институт
Иностранное инвестирование Финансовый ресурс
Топ-5 униграмм и биграмм, взятых из тем, полученных с
помощью PLSA-SIM с биграммами
33. 1 Итеративный алгоритм 푡
для выбора
наиболее подходящих биграмм
Идея: темы могут сами выбирать наиболее подходящие биграммы.
Обозначения:
B – множество всех биграмм в коллекции документов D
퐵퐴 − множество биграмм, добавленных в тематическую модель
푆퐴 − множество потенциальных кандидатов на похожие слова
(푢푡 ) – топ-10 униграмм в теме t
, …, 푢10
f(푢1 푡
, 푢2 푡
) – частота биграммы (푢1 푡
, 푢2 푡
)
34. Итеративный алгоритм для выбора
наиболее подходящих биграмм
Input: D, |T|, B
Output: полученный темы
Запуск оригинального PLSA на коллекции документов D для получения тем Т
퐵퐴 = ∅
While не выполнится критерий останова do
푆퐴 = ∅
for t 휖 T do
푆퐴 = 푆퐴 ∪ {푢1 푡
푡 }
, …, 푢10
푡, 푢푗
for 푢푖
푡 휖 (푢1 푡
푡 )
, …, 푢10
푡, 푢푗
if (푢푖
푡) 휖 B and f(푢푖
푡, 푢푗
푡) > f(푢푗
푡, 푢푖
푡) then
푡, 푢푗
퐵퐴 = 퐵퐴 ∪ {(푢푖
푡)}
푆퐴 = 푆퐴 ∪ 퐵퐴
Запуск PLSA-SIM c множеством похожих слов 푆퐴
и с множеством биграмм 퐵퐴 для получения тем T
36. Итеративный алгоритм для выбора
наиболее подходящих биграмм
Банковский кредит Ипотечный банк
Банковский сектор Ипотечный кредит
Кредитование Ипотечное кредитование
Кредитная система Жилищное кредитование
Кредит Ипотека
Топ-5 униграмм и биграмм, взятых из тем, полученных с
помощью итеративного алгоритма построения
тематических моделей
37. Заключение
o Предложен алгоритм PLSA-SIM, позволяющий добавлять
биграммы и учитывать сходство между ними и униграммными
компонентами
o Предложен итеративный алгоритм PLSA-ITER, позволяющий
выбирать наиболее подходящие биграммы и похожие слова для
последующего добавления в тематическую модель
38. Продолжение
Моя задача:
1. Изучить программу, реализующий данный алгоритм
2. Исследовать новые сборки словосочетаний
3. Рассмотреть различные размеры окна для работы с
похожими термами
39. Литература
1. М. Нокель «Тематические модели: учет сходства между
униграммами и биграммами»
2. T. Hofmann “Probabilistic Latent Semantic Indexing”
3. К.В. Воронцов «Вероятностное тематическое моделирование»