Научная статья на тему 'Построение иерархических тематических моделей коллекции документов'

Построение иерархических тематических моделей коллекции документов Текст научной статьи по специальности «Математика»

CC BY
306
38
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Прикладная информатика
ВАК
RSCI
Область наук
Ключевые слова
ТЕМАТИЧЕСКАЯ МОДЕЛЬ / ИЕРАРХИЧЕСКИЕ МОДЕЛИ / СЭМПЛИРОВАНИЕ ГИББСА / ЛАТЕНТНЫЙ СЕМАНТИЧЕСКИЙ АНАЛИЗ

Аннотация научной статьи по математике, автор научной работы — Цыганова C. B., Стрижов В. В.

Для решения поставленной задачи предлагается использование вероятностных тематических моделей. Особое внимание уделяется иерархическим тематическим моделям и, в частности, обсуждению свойств алгоритмов PLSA и LDA. Особенность построения иерархической модели заключается в переходе от понятия «мешка слов» к «мешку документов» в реализации плоских алгоритмов кластеризации. Работа алгоритмов иллюстрируется на текстах тезисов конференции Euro-2012 и на синтетических данных.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Цыганова C. B., Стрижов В. В.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Построение иерархических тематических моделей коллекции документов»

№ 1 (43) 2013

С. В. Цыганова, студентка Московского физико-технического института В. В. Стрижов, канд. физ.-мат. наук, доцент, научный сотрудник Вычислительного центра РАН, г. Москва

Построение иерархических тематических

w н

моделей коллекции документов1

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

Введение

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

Как альтернатива классическим алгоритмам кластеризации [1, 2, 3, 4], основанным на вычислении функции расстояния между документами, в 1999 г. Томасом Хофф-маном [5] был представлен вероятностный латентный семантический анализ (алгоритм PLSA), основанный на принципе максимизации правдоподобия. Позже, в 2003 г., Дэвидом Блеем [6, 7] предложен усовершенствованный метод латентного размещения Дирихле (алгоритм LDA). Данные алгоритмы, в отличие от алгоритмов кластеризации, предполагают, что каждый документ относится к нескольким темам одновременно с некоторыми вероятностями (так называемая мягкая кластеризация), и находят эти неизвестные вероятности. Для ясности изложения предлагаемого алгоритма в рабо-

1 Работа выполнена при поддержке Министерства образования и науки РФ в рамках Государственного контракта 07.524.11.4002.

те приведены краткие описания алгортимов PLSA и LDA в авторской интерпретации.

Для работы с текстовыми документами необходимо привести их к каноническому виду для учета различных форм одного и того же слова [8]. Принято несколько базовых предположений относительно коллекции документов:

1) документ — так называемый «мешок слов», т. е. неважно, в каком порядке слова находятся в документе, важна только частота употребления каждого из них;

2) слово соответствует нескольким темам;

3) распределение слов в коллекции связано не с документами, а только с темами (предположение условной независимости);

4) документ относится к нескольким темам с соответствующими вероятностями, т. е. описывается набором тем;

5) сами темы и их количество задано;

6) количество тем меньше объема словаря терминов и числа документов.

Будем считать, что количество тем задано. Сначала получим «плоскую» кластеризацию, т. е. просто разобьем документы на темы с соответствующими вероятностями. Затем построим иерархическую кластеризацию, т. е. выявим иерархию найденных тем. Основой перехода от плоской кластеризации к иерархической будет переход от понятия «мешка слов» к «мешку тем».

109

№ 1 (43) 2013

I

0 Ч

1

I

§

€ 13

<3

I

К §

$ §

I

о &

и ё

Постановка задачи

Задана коллекция документов — вектор D = {d1,..., dD}, каждый документ которого состоит из слов словаря W = {м1,...,}. Представим данные матрицей «документ-термин», каждый элемент [лМ которой обозначает, сколько раз слово w встречалось в документе d.

Пусть на коллекции определено Т тем Т = {.....^}. Введем следующие матрицы.

1. Матрица «документ-тема», каждый элемент [лл] которой обозначает число появлений темы t в документе d.

2. Матрица «слово-тема», каждый элемент [лМ] которой обозначает, сколько раз слово w было отнесено к теме t.

Рассмотрим на декартовом произведении DхWхТ дискретные распределения р^м^), в котором переменная t, соответствующая теме, не задана явно. Согласно формуле полной вероятности, совместная вероятность появления документа и слова выражается следующим образом:

р^,м) = £| d)p(w | d,t). (1)

ГеТ

Согласно предположению 3) относительно коллекции документов

рМ | d,t) = рМ 11).

Тогда формулу (1) можно переписать следующим образом:

р^м) = р^)рМ | d) = = £| d)р(м 11).

ГеТ

Поделим (2) на р(d):

рМ | d) = £р^ | d)p(w 11).

Обозначив p(w | 0 = фМ, а р^ | d) = 0df, сведем постановку задачи к нахождению матриц 0 и Ф, где © = [9Л], Ф = [ф^].

0 = К ] =

Ф = [фм ] =

_0О1

Ф11 ,Ф^1

01

0

ОТ .

Фт

Фи

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

Максимизируя правдоподобие выборки, найдем вероятности того, что слово w и документ d принадлежит теме t.

Используя (2), запишем логарифм функционала правдоподобия плотности распределения выборки для функции вероятности совместного появления документа d и слова w в выборке D следующим образом:

L = ££ndw 1П p(d,w ) =

d EDw еШ

£ 1П £рМ | t)p(t | d)р^) ^ max

(5)

d edw еш

fED

(2)

(3)

при ограничениях нормировки вероятностей:

£р(г> = 1; | d) = 1; £р(м | о = 1.

Для решения задачи (5) используем итерационный ЕМ-алгоритм, состоящий из двух шагов:

Е-шаг. Вычисление скрытых переменных р^ | d,w). При фиксированных параметрах р^ | d) и рМ 11) вычислим условные вероятности тем р^ | d,w), используя формулу Байеса:

Требуется построить тематическую модель, т. е. найти

p(w 11) для всех t е Т (4)

и р^ | d) для всех d е D.

р^ | d,w) =

р(ф^ | d)p(w | р p(d,w) '

(6)

М-шаг. Приближенное решение задачи максимизации правдоподобия и обновление

110

М е\М

ГеТ

№ 1 (43) 2013

параметров р^), р^ I d) и р^ 11). Находя точки максимума правдоподобия L (5) на итерации, приблизим параметры p(w I 0, р^ I d) к тем величинам, которым они равны при максимальном правдоподобии L. Как видно из постановки задачи (4), приближаемые параметры р^), р(t I d) и p(w I 0 являются искомыми распределениями:

XXnp I d,w)

p(t)= dsDweW -,

XXndw

d eDw eW

XndwP(t I d,w) p(t I d) = - w eW

p(w 11) =

XXndwP(t 1 d,w )

d eDw eW

XndwP(t I d,w)

d eD_

XXdwP(t I d,w )

dL dp(t)

= XX^

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

p(t I d)p(w 11) p(d,w )

-v = 0.

XX

(7)

(8)

(9)

л р^ I d)p(w I t)p(t) =

dеО№еШ р(^)

= vp(t) = хх^.

d еО№ еШ

Теперь, подставив формулу (6), выразим p(t) и получим формулу (7).

2. Далее продифференцируем лагранжиан по р^ I d) и поступим аналогично первому пункту, домножив обе части полученного равенства на р(Г I 0 и подставив (6). Получим формулу (8):

* = X ^р®^ =0;

Итерации ЕМ-алгоритма повторяются до тех пор, пока р^ I d) и p(w 11) не стабилизируются. Вывод формул (7), (8) и (9) описан ниже.

Для пояснения смысла формул, используемых на М-шаге алгоритма, кратко приведем их вывод. Запишем лагранжиан функции правдоподобия:

^ = хх^ |п р^^ ) -у(Хр(О - 1Л

Г еОш еШ (tеT у

-х^ (х^ I г) -О-хм (х р^ 11) -

tеT (Г еО У tеT еШ

dp(t I d) wtW dw p(d,w) ^ p(t I d)p(w I t)p(t) , ... ..

Xndw '(d w) = X'P(t I d) ^

wEw p(d,w)

^ = XXndwP(t I d,w).

d eDw eW

3. И, наконец, продифференцируем лагранжиан по p(w 11) и вновь выразим p(w 11) аналогично 1 и 2 пунктам. Получим формулу (9):

dL = -м, =0;

dp(w 11) dS p(d,w)

^ p(t I d)p(w I t)p(t) . . .. Xndw —-„Г1.Л = M,P(w I t) :

p(d,w) M, = X XndwP(t I d,w).

и будем искать точки максимума. Для этого продифференцируем лагранжиан L по неизвестным переменным р(0, р(t I Г), р^ 11) и приравняем производную к нулю.

1. Продифференцируем лагранжиан по р(0.

Затем, домножив на p(t) правую и левую части, выразим v :

Алгоритм латентного размещения Дирихле

Предполагается, что порождение тем происходит до порождения документов, и тема задается некоторым распределением вероятности p(w I 0 на словаре Ш. Любой документ является случайным набором тем.

Представим два последних сомножителя формулы (3) в виде случайных векторов:

рГ^) = х°(г) р^ I Г) р^ I 0 .

«

и со

со £

§

¡2 il

111

d eD

№ 1 (43) 2013

Считаем, что 0а и фш — случайные векторы из распределения Дирихле:

0с = (0И.....0тd) е Щ0,а),

Фш = (Ф1d,...,Фтd) е ^г(Ф,в).

Отметим следующее свойство коллекции документов: любая тема характеризуется некоторым небольшим множеством терминов, а документ — небольшим набором тем. Таким образом, коллекция документов представляет собой некоторую «разреженную» структуру. Используем для ее описания распределение Дирихле с параметрами а или в, которые управляют степенью разреженности.

Вернемся к формулировке задачи (4). Вероятность появления темы t в коллекции записывается следующим образом:

p(t I d,w) =

p(d,w,t) p(d)

p(d,w) P(w,t )p(d,t)

- ОС

p(t)p(d)

p(d,w) nw, +P

p(w I t)p(t I d) ■

I

0 4

1

i §

§

I §

SI

is §

is §

ii

<u

о &

u

ритма повторяются в цикле, пока распределение не сойдется. Алгоритм на псевдокоде можно найти в [12].

Критерии качества тематических моделей

Степень неопределенности (perplexity) равна логарифму правдоподобия:

Perplexity = exp(-1 ££n<w In9л).

Точность (precision) и полнота (recall) используются для алгоритмов, выполняющих классификацию. Точностью относительно темы Y = {t1,..., tT} называется количество правильно отнесенных документов к теме Y по отношению к общему числу документов, отнесенных алгоритмом к теме Y.

Обозначим te тему, которую определили эксперты как доминирующую для данного документа, а ta — аналогичную тему, определенную алгоритмом:

Ёо, + W ejndz + T а

Полученное выражение является формулой обновления параметров в сэмплировании Гиббса. Подробный вывод формулы можно посмотреть в [9-11].

Алгоритм сэмплирования Гиббса для LDA представлен на рис. 1.

Он выполняется следующим образом: выбирается тема tj из распределения р^ | d,w), фиксируются все остальные темы и подсчитываются значения лм и лгс. Затем уточняется распределение р^ | См ) и из него вновь выбирается тема tj. Все шаги алго-

Precision = P =

#{d е D : te = ta = Y}

#{d е D : ta = Y} где # — мощность множества.

(10)

Определим полноту относительно темы Y как долю правильно классифицированных документов среди общего числа документов из темы Y:

Recall = Ry =

#{d е D : te = ta = Y} #{d е D : te = Y} .

Когда коллекция содержит Т тем, усредним значения Ру и Ну по всем темам. Для

Входные параметры D, Т, w, а, р Определение t i nwt n,d Уточнение p(ti \d, w) Выходные параметры p{w\t), p{t\d)

i

Рис. 1. Алгоритм сэмплирования Гиббса

112

nd, +а

ос

v =1

№ 1 (43) 2013

обобщенного показателя, включающего полноту и точность, используют Р-меру:

2РЯ

Р =

Р + Я

(11)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

100

а.

а> с

80

Вообще по отношению к алгоритмам PLSA и LDA, сопоставляющим каждому документу вектор долей всех тем в данном документе, рассматривать точность и полноту нецелесообразно. Дальнейшая задача — построить иерархию тем и сравнить ее с экспертной иерархией, а для этого будем считать доминирующую тему документа единственной его темой.

Вычислительный эксперимент

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

В тестовой коллекции 17 документов, 119 терминов в словаре и три темы. Оба алгоритма не допустили ни одной ошибки при кластеризации, так как тестовая коллекция содержит небольшое число документов с заданными тематиками.

Проанализируем работу алгоритмов PLSA и LDA на реальных данных — коллекции тезисов конференции Евро-2012. Для иллюстрации работы обоих алгоритмов построим графики (рис. 1, 2). По оси абсцисс отложим номера тем, сопоставленные экспертами каждому документу, а по оси ординат — номера тем, которые сопоставил этим документам алгоритм. Документ соответствует некоторой точке. Несколько документов показано в виде круга, радиус которого зависит от их количества. На рисунке 3 круг наибольшего радиуса соответствует шести документам. В случае отсутствия ошибок кластеризации получим диагональ, состоящую из кругов. Ошибки кластеризации показаны как точки вне диагонали.

60

40

20

оо СО

ва

ва

£

§

¡2 Л

ва со

0^ 0

. ч ,

20

40 60 80 100

Номер восстановленной темы

Рис. 2. Сравнение номеров тем, определенных алгоритмом PLSA и экспертами

100

80

«

п.

<и 2 О

60

40

20

С' 'У':

шт

Рис.

О1

0 20 40 60 80 100

Номер восстановленной темы

3. Сравнение номеров тем, определенных алгоритмом LDA и экспертами

В алгоритме PLSA на диагонали лежит 324 документа, а в алгоритме LDA — 400 документов из 1341.

Сравним работу алгоритмов PLSA и LDA по степени неопределенности (10). На рисунке 4 а показан график зависимости степени неопределенности коллекции документов (отложена по оси ординат) от количест-

113

№ 1 (43) 2013

■Е 100

60

40

20

Р 2

1,5

0,5

100 120 Количество тем

20

40

60

80 100 Количество тем

a б

Рис. 4. Сравнение алгоритмов PLSA и LDA: алгоритм PLSA (а); алгоритм LDA (б)

I

0 Ч

II

8 §

1 €

В

I

К §

£ §

I

о &

и ё

ва тем для алгоритмов PLSA и LDA (отложено по оси абсцисс).

Как видно из рисунка 4 а, правдоподобие выборки алгоритма PLSA при любом количестве тем выше, чем для алгоритма LDA. Это связано с тем, что начальные приближения для работы алгоритма PLSA получены с использованием экспертной кластеризации (см. описание алгоритма). Алгоритм LDA не использует никаких экспертных оценок. Таким образом, отмечаем в графике общую тенденцию — правдоподобие падает с ростом количества тем.

Сравним алгоритмы по полноте (11). На рисунке 4 б показан график зависимости величины F от количества тем. Как видно, алгоритм LDA кластеризует документы лучше, чем алгоритм PLSA при любом количестве тем.

Обсуждение алгоритмов

Итак, проанализировав результаты кластеризации при различном количестве тем, можно сделать следующие выводы. Во-первых, с ростом числа тем правдоподобие коллекции документов падает. Во-вторых, алгоритм LDA проводит лучшую кластеризацию, чем PLSA, не используя предварительных экспертных оценок. Известны некоторые дополнительные недостатки PLSA по сравнению с LDA: трудоемкость О х И

114

и чувствительность к начальному приближению.

Иерархическая кластеризация

Для построения простейшей иерархии будем использовать те же алгоритмы, что и для плоской кластеризации, только со следующими предположениями. Теперь, когда каждое слово относится к какой-нибудь теме с наибольшей вероятностью, не будем различать слова, относящиеся к одной и той же теме, т. е. перейдем от понятия «мешка слов» к понятию «мешок тем».

Рисунок 5, построенный аналогично рис. 2, отражает результаты иерархического тематического моделирования тезизов конференции Евро-2012. Рисунок 5а представляет результаты, полученные алгоритмом PLSA. На диагонали лежит 463 документа из 1341. Рисунок 5б отражает результаты, полученные алгоритмом LDA. На диагонали лежит 580 документов. Это означает достаточно высокое соответствие полученной тематической модели ожиданиям экспертов.

Заключение

В работе исследованы алгоритмы PLSA и LDA для кластеризации коллекции документов по темам. Выяснено, что алгоритм

№ 1 (43) 2013

25

20

15

10

1 251

S. 20

ID

15

10

оо

и со

со

£

§

¡2 £

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

10

15

20

25

О1

О

10

15

20

25

Номер восстановленной темы

б

Номер восстановленной темы

а

Рис. 5. Результаты работы алгоритмов на коллекции Eвро-2012 алгоритм PLSA (а); алгоритм LDA (б)

LDA имеет существенные преимущества перед алгоритмом PLSA. На основании плоской кластеризации документов предложен метод построения иерархии документов при помощи перехода от понятия «мешка слов» к «мешку тем». Получены результаты построения иерархической кластеризации для тезисов конференции Евро-2012. Полученная кластеризация в значительной мере соответствует ожиданиям экспертов.

Авторы выражают благодарность А. А. Адуенко за подготовку данных для проведения вычислительного эксперимента.

Список литературы

1. Hartigan J. A., Wong M. A. Algorithm as 136: A k-means clustering algorithm // Applied statistics. 1978. Vol. 28. P. 100-108.

2. Pal N. R, Bezdek J. C. On cluster validity for the fuzzy c-means model // IEEE Transactions on Fuzzy Systems. 1995. Vol. 3 (3). P. 370-379.

3. Tibshirani R, Hastie T. Discriminative adaptive nearest neighbor classification // IEEE transactions on pattern analysis and machine intelligence, 1996. Vol. 18. No. 6. P. 606-616.

4. Peng J., Gunopulos D, Domenciconi C. An adaptive metric machine for pattern classification // Advances in Neural Information Processing Systems 13. MIT Press. 2000. P. 458-464.

5. Hofmann T. Probabilistic latent semantic analysis // Proceedings of the 22nd annual interanational

ACM SIGIR conference on research and development in information retrieval. New York: ACM, 1999. P. 50-57.

6. Blei D. M. Introdaction to Probabilistic Topic Models. URL: http://www.cs.princeton.edu/ blei/papers/ Blei2011.pdf (20.12.2012).

7. Blei D. M, Ng A. Y, Jordan M. I. Latent Dirichlet allocation // Journal of Machine Learning Research. 2003. Vol. 3, P. 993-1022.

8. Адуенко А., Кузьмин А, Стрижов В. Выбор признаков и оптимизация метрики при кластеризации коллекции документов // Известия Тульского государственного университета. Естественные науки. 2012. Вып. 4. Стр. 119-131.

9. Кропотов Д. А. Тематические модели для коллекций текстов. URL: http://www.machinelearning.ru/ wiki/images/8/82/BMMO11_14.pdf (20.12.2012).

10. Steyvers M, Griffiths T. Probabilistic Topic Models // Latent SemanticAnalysis: A Road to Meaning. Berlin: Laurence Erlbaum, 2007.

11. Steyvers M., Griffiths T. Finding Sientiffic topics // Proceedings of the National Academy of Science, 2003. Vol. 101. P. 5228-5235.

12. Воронцов К. В. Вероятностные тематические модели. URL: http://www.machinelearning.ru/wiki/ (20.12.2012).

13. Цыганова С. В. Тeстовая выборка для построения иерахической тематической модели. URL: https://mlalgorithms.svn.sourceforge.net/svnroot/ mlalgorithms/Tsyganova2012Topic Ierarhy/ (20.12.2012).

115

i Надоели баннеры? Вы всегда можете отключить рекламу.