Известия Тульского государственного университета Естественные науки. 2012. Вып. 3. С. 119-131
= ИНФОРМАТИКА =
УДК 519.256
Выбор признаков и оптимизация метрики при кластеризации коллекции документов *
А. А. Адуенко, А. А. Кузьмин, В. В. Стрижов
Аннотация. Исследуется проблема верификации корректности тематической классификации документов с помощью метрического алгоритма. Предложен алгоритм выбора оптимальной функции расстояния между документами. Исследуется соответствие между полученной кластеризацией документов и их экспертной классификацией. Результаты кластеризации и их соответствие экспертной тематической классификации проиллюстрированы вычислительным экспериментом на реальной коллекции документов.
Ключевые слова: метрическая классификация, метод
ближайших соседей, функция близости, выбор признаков, гипотеза компактности.
Введение
Перед программным комитетом конференции с большим числом участников встает задача о корректности отнесения тезисов к заданному набору тем. Для оценки корректности предлагается кластеризовать набор тем, используя принцип ближайшего соседа. Предлагаемый подход к построению тематических моделей называется «жёстким», так как тезис соответствует только одной теме, что согласуется с правилами подготовки конференций. Задача кластеризации документов относится к задачам поиска скрытой неструктурированной информации. Из-за большого числа экспертов и субъективности восприятия ими темы документа оценить качество кластеризации сложно. Требуется сопоставить результаты экспертной и модельной классификации документов.
На множестве документов предлагается ввести функцию расстояния [1]. Пусть есть некоторое множество слов, каждое из которых хотя бы раз встретилось в одном из документов коллекции. Назовем это множество словарем. В данной работе под документом будем понимать неупорядоченное множество слов из словаря; слова в документе могут повторяться.
* Работа выполнена при поддержке Министерства образования и науки РФ в рамках Государственного контракта 07.524.11.4002.
Документ представлен в виде «мешка слов» [2]. Каждому документу поставим в соответствие вектор, содержащий информацию о словарном составе документа. Размерность этого вектора равна количеству слов в словаре. Расстояние между документами есть расстояние между векторами, соответствующими этим документам.
При составлении словаря выполняется предобработка документов. Слова приводятся к начальной лексической форме (лемматизация), удаляются знаки препинания. Исключаются слова, встречающиеся малое количество раз, а также слова, встречающиеся в большинстве документов (стоп-слова); для этого используется критерий tf ■ idf (англ. tf — term frequency, idf — inverse document frequency) [3], а также словарь стоп-слов.
Кластеризация документов производится как с помощью метрических алгоритмов кластеризации, например, fc-means [4, 5], FOREL [6], C-means [7], STOLP [8], FRiS - STOLP [9], BoostML, DANN [10] и другие [11, 12], так и с помощью вероятностных методов [13], например, с помощью вероятностного латентного семантического анализа (англ. PLSA — Probabilistic Latent Semantic Analysis) [2], или латентного размещения Дирихле (англ. LDA — Latent Dirichlet Allocation) [1]. В данной работе ставится задача метрической кластеризации. Метрические алгоритмы применяются в задачах классификации, когда свойства исследуемых объектов удовлетворяют гипотезе компактности: похожие объекты, как правило, лежат в одном классе.
Центральной задачей кластеризации является задача выбора информативных признаков, которые используются при вычислении расстояний. В этой работе для выбора используется взвешенная метрика — такая метрика, в которой каждому признаку приписывается некоторый вес, пропорциональный степени важности признака в задаче классификации. Путем построения метрического классификатора решается задача выбора оптимальных параметров алгоритма кластеризации: функции близости, включающей взвешенный набор признаков.
В работе также рассматривается проблема оптимизации весов признаков метрики, обеспечивающей наибольшее количество верно классифицированных элементов контрольной выборки. Для определения весов признаков в метрике вводится функционал качества метрики и находится его максимум. Предложенный метрический алгоритм с выбором признаков иллюстрируется примером тематической классификации тезисов конференции «European Conference on Operational Research, EURO-2012».
1. Постановка задачи
Пусть W = {wi,...,wn} — заданное множество слов, словарь.
Документом d назовем неупорядоченное множество слов из W : d = {wj}, где Wj G W — слово в документе. Пусть D = {d} — множество документов, коллекция, а K — заданное число кластеров, на которое
требуется разбить множество В. Требуется задать функцию расстояния на множестве документов:
р(йі, йз): W х W —► К+
и кластеризовать коллекцию В, максимизируя функцию качества Q(р), заданную в (5).
Представим документ с номером і в виде вектора
Хі = [с(йі,-Ші), .. .,с(йі,-Ші),... ,с(йі,-Шп)]Т, (1)
где с(йі^з) — число вхождений слова Wj в документ йі. Опишем множество документов и их тематику следующим образом. Задана выборка — множество т пар
{(Хі,уі)},і єі = {1,...,т}, (2)
состоящих из вектора признаков (документа) х є К” и метки класса (темы документа) у, принимающего значения из множества {1, 2,... ,К}, где К — общее число тем.
Введем на множестве объектов взвешенную метрику р и найдём параметры, при которых она лучше всего подходит для сравнения объектов. Расстояние же между документами вводим как расстояние между векторами, им соответствующими:
р(йі,й) = р(^ )(х, х').
Рассмотрим набор взвешенных метрик Минковского с фиксированным параметром у ^ 1:
Р(Х Х0 =
Н'
\
\хз — х'з\^, где^Wj = 1, wl,...,wn ^ 0. (3)
з'=1 3=1
Функция расстояния р является метрикой:
1) р(х, хг) = 0 х = х;, т. к. все разности вида Хк — х'к равны 0;
2) р(х, хг) = р(х', х), т. К. \Хг — хЦ = \х[ — Хг\;
3) р(х, хг) ^ р(х, х") + р(х", хг) для произвольного ц ^ 1 см. [14].
В качестве функции расстояния р(х, х') между векторами х, х' £ М” можно рассмотреть разные частные случаи (3), в частности, расстояние городских кварталов при ц = 1, евклидово расстояние при ц = 2 или расстояние Чебышёва р(х, хг) = тах \х^ — х'„ \ при ц = о.
3 = \,. . . ,п
Чтобы оценить веса признаков Wj, введем функцию благонадежности метрики Q(р). Введём вспомогательную функцию близости 5(х^) данного объекта обучающей выборки х^, где г £1, к объектам своего класса:
= г(х) — г(хг) (4)
( г) т(хг)+ т(хг) ’ ()
где г(хг) — расстояние от хг до к ближайших объектов того же класса, г(хг) — расстояние от хг до к ближайших объектов из других классов. Определим эти расстояния.
Для произвольного г зададим разбиение множества индексов I выборки I = V иМ следующим образом:
Т(3) = {3 £ 1у = Уг},
М(г) = {з £ 1у = Уг},
то есть V (г) — индексы объектов того же класса, что и хг, а N (г) — индексы объектов из других классов.
Определим расстояние до к ближайших соседей как
к
г(хг) = £ рр(хг, xj), где 3 £ V(г),
р=1
к
г(хг) = £ Рр(хг, xj), где 3 £М(г), р=1
а Р = р(3) и р = р(з) — индексы сортировки по возрастанию элементов множеств
{рр(хг, х)О £ V(г)} и {рр(хг, х)О £ М(г)}
соответственно.
Функция 5(хг) обладает следующим свойством:
{—1, объект хг близок к объектам чужого класса;
0, объект хг пограничный;
+1, объект хг близок к объектам своего класса.
В предположении гипотезы компактности наилучшей (то есть такой, при которой все объекты лежат близко к объектам своего класса) метрикой будет та, у которой d(xг) ~ 1.
Функция благонадежности Q(р) метрики р имеет вид
^Р) = Ш ^ 6(хг), (5)
\ \ гет
где р и 6(хг) определены в (3) и (4). Задача выбора оптимальной метрики сводится к нахождению максимума функции благонадежности Q(р) на множестве М взвешенных метрик вида (3):
р> = argmax Q(р). рем
2. Описание алгоритма выбора метрики
Множество метрик M задано различными наборами признаков — элементов вектора х, входящих в метрики и их весовыми коэффициентами w. Обозначим взвешенную метрику
PA (w) = p(wA)(xA, xU),
где A — набор индексов признаков, входящих в вектор х, а набор параметров w метрики pa есть набор весовых коэффициентов слагаемых с индексами j, входящих в линейную комбинацию (3).
Алгоритм основан на последовательном добавлении признаков. На каждом шаге алгоритма в набор A добавляется j-й признак с весом Wj. Индекс признака и его вес определяются из условия локальной максимальности функции благонадежности Q(p). Рассмотрим множество индексов признаков J = {1,2,... ,n} и набор A С J. На первом шаге алгоритма A = 0. Итеративно повторяются два шага.
(1) Найдем такой признак j, который доставляет функции благонадежности Q(p) максимум:
j = arg max Q (pAu{j} (w) \DC) , где (6)
jJ\A
w = arg min Q (pAu{j} (w) \Dt) , при условии ||w||i = 1. (7)
Функция Q(p) определена в (4). Обозначение Q(p\DL) означает, что
при решении задачи используется только те элементы выборки D, индексы которой принадлежат множеству L. При этом множество индексов I всей выборки D разбивается на обучающее L и
контрольное T множество, I = CUT, случайным образом на каждом шаге алгоритма.
(2) Добавим найденный индекс j в множество A и повторим предыдущий пункт.
Алгоритм повторяется до уменьшения значения функции качества Q(p\DL) на контрольной выборке. Задача (6) решается перебором аргумента за \J \ A\ шагов, а задача (7) решается методом градиентного спуска с ограничениями; её решение описано в [15].
Так как на каждой итерации вышеописанного алгоритма в силу изменения вектора весов w, метрики PA(w) происходит изменение не только значения функции благонадежности Q, но и векторов х, на которых определяются средние расстояния r и г, то после каждого шага минимизации требуется пересчитывать все функции ö(xi).
Для того, чтобы существенно снизить сложность вычисления функции благонадежности Q, рассмотрим следующий метод, использующий
взвешенную метрику р при ц = 1 в (3). В качестве функционала качества метрики введем среднее внутрикластерное расстояние:
J2i<j ivi = yj Ых,, xj) . ,оА
Fo = -----^-----------=------► mm, (8)
Ei<j [Vi = Vj ]
которое с учетом параметра ц метрики приобретает вид
г Еi<j[Vi = Vj] • ivT\xi - xj\) . и м 1
F0 = ----- ——---- ------- --------> mm при условии llvlh = 1, v ^ 0.
z2i<j [yi yj]
Функция Fo является линейной функцией относительно весов v. Ее требуется минимизировать на множестве, которое является выпуклым. У этой задачи существует решение, причем минимум реализуется в вершине п-мерного симплекса. В каждой вершине этого симплекса все координаты равны нулю кроме одной, которая равна единице. Таким образом, будет отобран единственный признак, что не отвечает требованиям задачи. Поэтому предлагается при построении метрики p(w)(x, x') вес Wj каждого признака сделать обратно пропорциональным соответствующему элементу вектора v.
3. Прогнозирование тематики документа
Класс объекта х, прогнозируется при помощи процедуры голосования. Для объекта х, выбирается множество индексов K(x,), состоящее из индексов k ближайших к x, объектов,
K(i) = {рр(х,, xj )\j ei ,p ^ k},
где p = p{j} — индекс сортировки множества по возрастанию. Для всех классов q выберем из множества K(i) подмножество индексов Kq(i) объектов из q-го класса:
Kq(i) ={j e K(xi)\vj = q}•
Для каждого класса q определим его вклад в классификацию объекта x,
следующим образом. Чем ближе объекты q-го класса лежат к объекту х,,
тем больший вклад в классификацию они вносят.
Определим класс объекта x, как тот класс, который вносит наибольший вклад:
/ \ х—^ \vi = ql
Vi = q(xi)= arg max у —--------------,
.....к} jK,)р(х,, xj)
где индикаторная функция [•] определена как
г , (1, если Vi = q; . .
\Vj = q] = \0 j = (9)
[О, если Vj = q.
4. Кластеризация набора документов
Предлагается, используя взвешенную функцию расстояния Pa(W)(х, х') с заданным набором весов w и набором признаков A провести кластеризацию коллекции с помощью алгоритма k-means. Число кластеров K считаем фиксированным согласно постановке задачи. Задаем начальное приближение положений центров кластеров uq,q e {1,...,K}. Затем для каждого элемента x, находим ближайший к нему центр uq относим его к кластеру с номером Vi = q:
Vi = arg min р(х,, Uq). qe{1,...,K}
Осуществляем пересчет положений центров, помещая их в центр масс соответствующих кластеров:
= E iei [Vi = q]xi Uq Eiei \Vi = q] ■
Алгоритм останавливается, когда кластеризация V, элементов Xj стабилизируется.
Для оценки качества кластеризации используем функцию среднего внутрикластерного расстояния F0, определенную в (8), и функцию среднего межкластерного расстояния
„ Ei<j \ш = Vj\р(х,, xj)
Fi = -----^---- --- —;--------► max.
Ei<j \Vi = Vj]
Чтобы учесть и внутрикластерное и межкластерное расстояние введем функцию
Fo
F = —----> m.n .
F1
5. Оценка соответствия экспертной и вычисленной тематической классификации
Для оценки соответствия рассмотрим два набора: набор у = [у1,, ут]Т экспертных оценок тем (2), уг £ {1,... ,К}, где К — число тем, и набор у вычисленных тем документов коллекции. Рассмотрим произвольную пару документов dl, d2. Для оценки соответствия классификаций сосчитаем общее число расхождений х(у, У) в парах по всем документам и поделим на максимальное возможное расхождение.
Наибольшее число расхождений зададим формулой
= ш(ш — 1) ^ Мг(Мг — К)
= 2 ^ 2К ’
г=1
где Мг — число документов у в каждом вычисленном тематическом классе. Это соответствует, например, случаю, когда элементы каждого класса поровну распределяются по всем тематическим кластерам.
Зададим функцию соответствия х(У, У), как
Х(У,у) = у^2[Уг = у ]> £{1,---,ш}, (10)
г<з
где индикаторная функция определена в (9). Чем ближе полученная величина к единице, тем сильнее расхождение. Если полученная величина равна нулю, то тематические классификации совпадают.
6. Вычислительный эксперимент
Для иллюстрации работы и оценки качества алгоритма проведен эксперимент кластеризации тезисов научной конференции «European Conference on Operational Research, EURO-2012» на 26 кластеров. Количество кластеров выбрано в согласии с количеством научных областей (англ. main areas) конференции. Каждому тезису конференции был поставлен в соответствие вектор x в пространстве М”, где n — количество слов в словаре W. Компоненты вектора заданы одним из трех способов:
A) 0,1 в зависимости от того, встречается ли термин в документе;
B) tf ■ idf терминов;
C) количество раз, которое термин встречается в документе.
Здесь критерий
c(di,Wj)
tf (di,Wj) =
If 1 c(di,wl)'
где c(di,Wj) — количество раз, которое термин Wj встречается в документе di, а критерий
idf (wj) = log—-----D------—.
м j) 6 \{di : di Э Wj}|
Критерий tf (d, Wj) показывает, насколько типичен термин Wj для документа di, а критерий idf (Wj) показывает, насколько термин Wj является типичным для всей коллекции документов D. В вычислительном эксперименте из исходного словаря W отсеивались слова W со слишком большим idf (очень редкие слова, возможно, опечатки) и со слишком маленьким (то есть слова, не выделяющие ни один документ из коллекции остальных).
Отбор слов проводился, чтобы получить не очень крупный словарь W. Это требование обусловлено тем, что в каждом тезисе не более 600 знаков, то есть порядка 50-100 слов, многие из которых являются стоп-словами, например, “and”, “or”, “not”. Отсев стоп-слов проводился фильтрацией заданного списка стоп-слов и с помощью отсева по критерию tf ■ idf.
Algorithm claster number
(a) Признаки — tf • idf
Algorithm claster number
(b) Признаки — число повторов слов
Algorithm claster number Algorithm claster number
(c) Булевы признаки с отбором признаков (d) Булевы признаки без отбора признаков
Рис. 1. Схемы вентиляции строящихся тоннелей
Исключались слова, которые встречались более, чем в 50 и менее, чем в 10 документах из коллекции в 1342 документа.
Для кластеризации коллекции документов была выбрана метрика, оптимальная в смысле (8). Начальное положение центров кластеров задавалось согласно экспертной классификации: вычислялось среднее значение по всем документам каждого класса. Для визуализации и оценки расхождений между построенной и экспертной моделью был использован следующий метод (см. рис 1). Строилось расхождение между экспертной и полученной моделью. По оси абсцисс и ординат откладывались номера классов от 1 до K, затем все тезисы откладывались на плоскости, причем координатой по оси абсцисс тезиса являлся номер вычисленного класса, полученный предлагаемым алгоритмом, а по оси ординат — номер класса, к которому отнес эксперт данный тезис.
Номера классов упорядочены следующим образом. По исходным центрам кластеров uq, q є {1,...,K}, с помощью метрики Pa(W )(x, x') вычислялось матрица парных расстояний. Затем выполнялась процедура метрического шкалирования. Вычислялась первая главная компонента матрицы расстояний, классы (представленные исходно как элементы неупорядоченного множества) упорядочивались в соответствии с порядком
25
10
10
10
15
20
25
10
10
10
15
20
25
10
15
20
25
Таблица 1
Значение функции ошибки для разных способов построения набора
признаков
Способ построения признака Появление термина в документе, на оптимальном наборе A A) То же, на всем словаре W A) Критерий tf ■ idf B) Число появлений термина C)
Значение функции ошибки х 0.073 0.079 0.142 0.154
проекций строк матрицы парных расстояний (строка соответствует классу) на первую главную компоненту. Таким образом, на рис. 1, чем дальше тезис находится от прямой x = у на данной плоскости, тем сильнее отличаются тематики кластеров, к которым он был отнесен предлагаемым алгоритмом и экспертом.
Были проведены эксперименты с использованием различных способов задания признаков; результаты приведены на рис. 1 (a)-(d). Координатой каждого круга по оси абсцисс являлся номер класса, к которому алгоритм отнес данный документ, по оси ординат — класс, назначенный экспертом. Радиус круга определялся количеством документов, попавших в эту точку. Наибольшему кругу соответствует количество документов, равное примерно 80. Как видно из табл. 1, показывающей оценку соответствия экспертной и вычисленной тематической классификации (10), наиболее адекватным способом задания вектора признаков способ A), т. е. факт присутствия термина в документе.
Перераспределение документов и сравнение с их начальным распределением показаны на рис. 2. Каждый столбец соответствует классу; каждому документу присваивался цвет экспертного класса, заданного экспертом. Высота части столбца одного цвета показывала количество документов, экспертно отнесенных к кластеру с данным цветом, которое алгоритм отнес к кластеру, соответствующему номеру столбца. Рис. 2 (a) построен по экспертной кластеризации, поэтому каждый столбец имеет документы только одного цвета, одновременно являющегося цветом класса. Из рис. 2 (b)-(d) видно, что большая часть документов остается в кассах, назначенных экспертами.
Для сравнения работы алгоритма с отбором признаков и без него изображены гистограммы на рис. 2. Можно заметить, что дополнительный отбор признаков позволяет удалить шумовые слова, например, «matrix», «compute», «activity», которые не удалились при нормализации документов, хотя они не несут особой информации о принадлежности тезиса к определенной теме. Наличие их приводит к появлению кластеров,
120
100
80
60
I
Ні
(а) Экспертная классификация
(Ь) Булевы признаки с отбором признаков
(с) Пр
изнаки: число повторов слов
(ё) Признаки: tf ■ idf
Рис. 2. Распределение документов по темам для экспертной классификации и для построенных кластеризаций
включающих документы чужих кластеров, как, например, кластер номер 6 на рис. 2 (с), (ё).
Заключение
В данной работе решается задача метрической кластеризации коллекции документов. Для вычисления расстояний используется метрика, оптимальная относительно введенной функции благонадежности. Получено точное решение задачи оптимизации метрики. Предложена количественная характеристика рассогласования классификаций. Вычислительный эксперимент показал, что в целом вычисленная тематическая классификация соответствует экспертной классификации тезисов конференции Еии0-2012, но есть и заметные отклонения от классификации, что может свидетельствовать о значительном числе междисциплинарных статей.
40
20
0
5
10
15
20
25
Список литературы
1. Blei D.M., Ng A.Y, Jordan M.I. Latent dirichlet allocation // J. of Machine Learning Research. 2003. V.3. P.993-1022.
2. Hofmann T. Probabilistic latent semantic indexing // Proceedings of the 22nd annual interanational ACM SIGIR conference on research and development in information retrieval. New York: ACM, 1999. P.50-57.
3. Manning C.D., Raghavan P., Schütze H. Introduction to information retrieval. Cambridge: Camdridge University Press, 2008.
4. Hartigan J.A., Wong M.A. Algorithm as 136: A k-means clustering algorithm // Applied statistics. 1978. V.28. P.100-108.
5. Loohach R., Garg K. Effect of distance functions on simple k-means clustering problem // International J. of Computer Applications. 2012. V.49, №6.
6. Загоруйко Н.Г., Ёлкина В.Н., Лбов Г.С. Алгоритмы обнаружения эмпирических закономерностей. Новосибирск: Наука, 1985.
7. Pal N.R., Bezdek J.C. On cluster validity for the fuzzy c-means model // IEEE Transactions on Fuzzy Systems, 1995. V.3, №3. P.370-379.
8. Загоруйко Н.Г. Прикладные методы анализа данных и знаний. Новосибирск: Издательство И.М., 1999.
9. Борисова И.А. Использование fris-функции для построения решающего правила и выбора признаков (задача комбинированного типа dx) // Знания. Онтологии. Теории: матер. Всероссийской конф. Новосибирск, 2007. Т.1. С.37-44.
10. Tibshirani R., Hastie T. Discriminative adaptive nearest neighbor classification // IEEE transactions on pattern analysis and machine intelligence. 1996.
11. Peng J., Gunopulos D., Domenciconi C. An adaptive metric machine for pattern classification // NIPS, 2000.
12. Zagoruiko N.G. Methods of recognition based on the function of rival similarity // Pattern recognition and image analysis. 2008. V.18, №1. P.1-6.
13. Knowledge discovery through directed probabilistic topic models / A. Daud [et al.] // Frontiers of computer science in China. 2010. V.4, №2. P.280-301.
14. Константинов Р.В. Функциональный анализ. Курс лекций. Долгопрудный: МФТИ, 2009.
15. Boyd S., Vandenberghe L. Convex Optimization. Cambridge University Press, 2004.
Адуенко Александр Александрович ([email protected]), студент, Московский физико-технический институт.
Кузьмин Арсентий Александрович ([email protected]), студент, Московский физико-технический институт.
Стрижов Вадим Викторович ([email protected], http://strijov.com), к.ф.-м.н., н.с., Вычислительный центр Российской академии наук, Москва.
Feature selection and metrics’ optimisation when clustering
documents collection
A. A. Aduenko, A. A. Kuzmin, V. V. Strijov
Abstract. This paper deals with the problem of verification of correctness of a thematic clustering of texts with the help of metric algorithms. The algorithm of selection the optimal distance function for texts is proposed. Correspondence between received texts’ clustering and their expert classification is studied. The results of clusterisation and their correspondence to expert thematic classification are illustrated in the computing experiment on the real text collection.
Keywords: metric classification, nearest neighbors method, similarity function, monotonous function, feature selection, compactness hypothesis.
Aduenko Alexandr ([email protected]), student, Moscow Institute of Physics and Technology.
Kuzmin Arsentii ([email protected]), student, Moscow Institute of Physics and Technology.
Strijov Vadim ([email protected], http://strijov.com), candidate of physical and mathematical sciences, researcher, Computing Center of the Russian Academy of Sciences, Moscow.
Поступила 06.10.2012