Post on 11-Jul-2015
Тематические модели: учет сходства между униграммами
и биграммамиМожарова Валерия Александровна
Научный руководитель Лукашевич Наталья Валентиновна
Тематические модели
o Информационный поиск
o Разрешение морфологической неоднозначности
o Многодокументное аннотирование
o Кластеризация и категоризация документов
o Выявление трендов в научных публикациях и тематических потоках
o Обработка аудио и видео сигналов
Вероятностная модель коллекции документовD – множество документов
T – множество тем
W – множество терминов
Коллекция документов рассматривается как множество троек
(d, w, t), выбранных случайно и независимо из дискретного распределения p(d, w, t), заданного на конечном множестве D×W×T (модель «мешок слов»).
d, w – наблюдаемые переменные
t – скрытая переменная
Вероятностная модель коллекции документовГипотеза условной независимости:
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) = 𝑡 𝑃 𝑤 𝑡 𝑃(𝑡|𝑑)
Порождение коллекции текстов с помощью тематических моделей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)
Частотные оценки условных вероятностей
P(d|w) = 𝑛𝑑𝑤
𝑛
P(d) = 𝑛𝑑
𝑛
P(w) = 𝑛𝑤
𝑛
P(w|d) = 𝑛𝑑𝑤
𝑛𝑑
𝑛𝑑𝑤 - число вхождений термина w в документ d
𝑛𝑑 = 𝑤𝜖𝑊 𝑛𝑑𝑤 - длина документа d в терминах
𝑛𝑤 = 𝑑𝜖𝐷 𝑛𝑑𝑤 - число вхождений термина w во все документы коллекции
n = 𝑑𝜖𝐷 𝑤𝜖𝑑 𝑛𝑑𝑤 - длина коллекции в терминах
Частотные оценки условных вероятностей
P(t) = 𝑛𝑡
𝑛
P(w|t) = 𝑛𝑤𝑡
𝑛𝑡
P(t|d) = 𝑛𝑑𝑡
𝑛𝑑
P(t|d,w) = 𝑛𝑑𝑤𝑡
𝑛𝑑𝑤𝑛𝑑𝑤𝑡 - число троек, в которых термин документа d связан с темой t𝑛𝑑𝑡 = 𝑤𝜖𝑊 𝑛𝑑𝑤𝑡 - число троек, в которых термин документа d
связан с темой t𝑛𝑤𝑡 = 𝑑𝜖𝐷 𝑛𝑑𝑤𝑡 - число троек, в которых термин w
связан с темой t𝑛𝑡 = 𝑑𝜖𝐷 𝑤𝜖𝑑 𝑛𝑑𝑤𝑡 - число троек, связанных с темой t
Вероятностный латентный семантический анализ
Предложен Томасом Хофманом.
Вероятностная модель появления пары «документ-термин» (d,w) записывается тремя эквивалентными способами:
p(d|w) = 𝑡𝜖𝑇 𝑝 𝑡 𝑝 𝑤 𝑡 𝑝(𝑑|𝑡) = 𝑡𝜖𝑇 𝑝 𝑑 𝑝 𝑤 𝑡 𝑝(𝑡|𝑑) =
𝑡𝜖𝑇 𝑝 𝑤 𝑝 𝑡 𝑤 𝑝(𝑑|𝑡)
p(t) – распределение тем во всей коллекции
Вероятностный латентный семантический анализФ – {φ𝑤𝑡 = 𝑝(𝑤|𝑡)} - распределение слов w по темам t
Θ – {θ 𝑡𝑑 = 𝑝(𝑡|𝑑)} - распределение тем t по документам d
𝑛𝑑𝑤- частотность слов w и s в документе d
𝑛𝑤𝑡 - оценка частотности слова w в t
𝑛𝑡𝑑 - оценка частотности слова t в d
𝑛𝑡 - оценка частотности темы t в коллекции документов D
PLSA-EM: рациональный EM-алгоритм для модели PLSAInput: 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
θ 𝑡𝑑 = 𝑛𝑡𝑑/𝑛𝑡
PLSA-EM: рациональный EM-алгоритм для модели PLSA
Вычислительная сложность:
O(WT + DT)
W – размер словаря
T – число тем
D – количество документов
Тематические модели
Главный недостаток: использование модели «мешок слов».
Слова могут быть связаны между собой по смыслу:
Бюджетный – бюджетная политика – бюджетнаясистема
Тематические модели
Задача:o Предложить модификацию алгоритма PLSA, позволяющую
добавлять биграммы и учитывать сходство между ними иуниграммными компонентами
o Оценить работу алгоритма
o Предложить итеративный алгоритм добавления наиболееподходящих биграмм в тематические модели и оценитькачество его работы на тестовых коллекциях
Учет словосочетаний в тематических моделях
1. Биграммная Тематическая Модель
a) Вероятности слов зависят от вероятностейнепосредственно предшествующих слов
b) W 2T параметров (ср. WT параметров у LDA и WT+ DT параметров у PLSA)
c) Работает только с биграммами
Учет словосочетаний в тематических моделях
2. Модель словосочетаний LDAa) Расширение биграммной тематической модели за
счет дополнительный параметров для генерации униграмм и биграмм
b) W 2T + W 2 параметров
Учет словосочетаний в тематических моделях
3. Тематическая N-граммная Модельa) Усложнение предыдущих моделей для формирования
n-грамм в зависимости от контекстаb) W n T параметров
Учет словосочетаний в тематических моделях
Вывод:
Большая вычислительная сложность => неприменимость на реальных данных
Текстовая коллекция
10422 статьи на русском языке, взятых из некоторых электронных банковских журналов (таких, как Аудитор, РБК, Банковский журнал и др.). В данных документах содержится около 15.5 млн слов.
Предобработка
o Рассматриваются только существительные, прилагательные, глаголы и наречия
o Слова, встретившиеся не менее 5 раз
o Биграммы: a) Сущ.+ сущ. в родительном падежеb) Прил. + сущ
Методы оценивания качества тематических моделейПерплексия
𝑃𝑒𝑟𝑝𝑙𝑒𝑥𝑖𝑡𝑦 𝐷′ = e𝑥𝑝 −1
𝑛
𝑑𝜖𝐷′
𝑤𝜖𝑑
𝑛𝑑𝑤ln 𝑝 𝑤 𝑑
o Чем меньше значение перплексии, тем лучше модельпредсказывает появление слов w в документах коллекции
o Для вычисления коллекция разбивается на 2 части:1. D – для обучения модели (90% документов)
2. D′ – для вычисления перплексии (10% документов)
Методы оценивания качества тематических моделей
Мера согласованности подтем TC-PMI
𝑇𝐶−𝑃𝑀𝐼 =1
𝑇
𝑡=1
𝑇
𝑗=1
10
𝑖=1
𝑗−1
ln𝑃 𝑤𝑗𝑡 , 𝑤𝑖𝑡
𝑃 𝑤𝑗𝑡 𝑃(𝑤𝑖
𝑡)
o Определяет, насколько топ-10 слов (или фраз) каждойподтемы соответствуют ей
o Сильная корреляция с оценками экспертов
Методы оценивания качества тематических моделейПредлагаемая модификация алгоритма PLSA косвенномаксимизирует согласованность подтем
Вариант меры согласованности подтем TC–PMI-nSIM:
Мера рассматривает топ-10 слов и словосочетаний, несодержащихся в одних и тех же множествах похожих слов исловосочетаний
Добавление биграмм в тематические модели
o Биграмма встречается не менее 5 раз
o Для всех извлеченных биграмм вычисляются ассоциативные меры
o Для каждой меры добавляется ТОП-1000 биграмм
o Из частот образующих униграмм вычитались частоты биграмм
Добавление биграмм в тематические модели
Ассоциативные мера Перплексия 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
Добавление схожих униграмм в тематические модели
В документах есть много слов связанных между собой по смыслу.
Примеры:
1. Банк - банковский - банкир
2. Кредит - кредитный – кредитовать – кредитование
Добавление схожих униграмм в тематические модели
D – коллекция документов
T – множество тем
W – словарь
Ф – {φ𝑤𝑡 = 𝑝(𝑤|𝑡)} - распределение слов w по темам t
Θ – {θ 𝑡𝑑 = 𝑝(𝑡|𝑑)} - распределение тем t по документам d
S – {𝑆𝑤} - множество похожих слов
𝑛𝑑𝑤, 𝑛𝑑𝑠 - частотность слов w и s в документе d
𝑛𝑤𝑡 - оценка частотности слова w в t
𝑛𝑡𝑑 - оценка частотности слова t в d
𝑛𝑡 - оценка частотности темы t в коллекции документов D
PLSA-SIMInput: 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
θ 𝑡𝑑 = 𝑛𝑡𝑑/𝑛𝑡
Добавление схожих униграмм в тематические моделиСлова похожи, если выполняется хотя бы одно из условий:
o Начинаются с 4 одинаковых букв, не являющихся приставкой
Количество букв подобрано опытным путем.
Составлен список из 43 самых широко использующихся приставок (анти- , пере-, гипер- и др.)
o Если слова начинаются на одну и ту же приставку, они считаются похожими, если следующая за приставкой буква совпадает
Добавление схожих униграмм в тематические модели
Алгоритм Перплексия TC-PMI-nSIM
Исходный алгоритм PLSA 1694 78.3
PLSA-SIM 1376 87.8
PLSA алгоритм PLSA- SIM алгоритм
Бумага Документ Аудитор Правый
Ценный Электронный Аудиторский Право
Акция Форма Аудитор Правило
Рынок Организация Аудируемый Акция
Облигация Подпись Проверка Акционер
Добавление схожих биграмм в тематические модели
Биграмма (𝑤1, 𝑤2) считается похожей на униграмму 𝑤3, если выполнен один из следующих критериев:
o Слово 𝑤3 похоже на 𝑤1 или 𝑤2o Слово 𝑤3 совпадает с 𝑤1 или 𝑤2 и длина 𝑤3 больше трех
букв
Добавление схожих биграмм в тематические моделиАлгоритм Перплексия 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 + модифицированный DC
1163 156.2
PLSA-SIM + T-Score 1346 171.5
Добавление схожих биграмм в тематические модели
Инвестиция Финансовый рынок
Инвестор Финансовая система
Инвестирование Финансовый
Иностранный инвестор Финансовый институт
Иностранное инвестирование Финансовый ресурс
Топ-5 униграмм и биграмм, взятых из тем, полученных с помощью PLSA-SIM с биграммами
Итеративный алгоритм для выбора наиболее подходящих биграммИдея: темы могут сами выбирать наиболее подходящие биграммы.
Обозначения:
B – множество всех биграмм в коллекции документов D
𝐵𝐴 − множество биграмм, добавленных в тематическую модель
𝑆𝐴 − множество потенциальных кандидатов на похожие слова
(𝑢1𝑡 , …, 𝑢10
𝑡 ) – топ-10 униграмм в теме t
f(𝑢1𝑡 , 𝑢2𝑡 ) – частота биграммы (𝑢1
𝑡 , 𝑢2𝑡 )
Итеративный алгоритм для выбора наиболее подходящих биграмм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
Итеративный алгоритм для выбора наиболее подходящих биграмм
Итерация Перплексия TC-PMI-nSIM
0 (PLSA) 1694 78.3
1 936 180.5
2 934 210.2
3 933 230
4 940 235.8
5 931 193.5
Итеративный алгоритм для выбора наиболее подходящих биграмм
Банковский кредит Ипотечный банк
Банковский сектор Ипотечный кредит
Кредитование Ипотечное кредитование
Кредитная система Жилищное кредитование
Кредит Ипотека
Топ-5 униграмм и биграмм, взятых из тем, полученных с помощью итеративного алгоритма построения тематических моделей
Заключение
o Предложен алгоритм PLSA-SIM, позволяющий добавлять биграммы и учитывать сходство между ними и униграммнымикомпонентами
o Предложен итеративный алгоритм PLSA-ITER, позволяющийвыбирать наиболее подходящие биграммы и похожие слова дляпоследующего добавления в тематическую модель
Продолжение
Моя задача:
1. Изучить программу, реализующий данный алгоритм
2. Исследовать новые сборки словосочетаний
3. Рассмотреть различные размеры окна для работы с похожими термами
Литература
1. М. Нокель «Тематические модели: учет сходства между униграммами и биграммами»
2. T. Hofmann “Probabilistic Latent Semantic Indexing”
3. К.В. Воронцов «Вероятностное тематическое моделирование»