Коллектив алгоритмов с весами в кластерном анализе разнородных данных

ВЕСТНИК ТОМСКОГО ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА

2013 Управление, вычислительная техника и информатика № 2

УДК 519.2

В.Б. Бериков КОЛЛЕКТИВ АЛГОРИТМОВ С ВЕСАМИ В КЛАСТЕРНОМ АНАЛИЗЕ РАЗНОРОДНЫХ ДАННЫХ1

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

Ключевые слова: кластерный анализ, коллективное принятие решений, алгоритмы с весами, вероятность ошибки классификации.

Задача кластерного анализа (таксономия, группировка объектов по похожести их характеристик, автоматическая классификация «без учителя») может быть сформулирована следующим образом [1-3]. Имеется множество объектов, описываемых набором некоторых переменных (либо матрицей попарных расстояний). Эти объекты требуется разбить на относительно небольшое число кластеров (таксонов, групп, классов) так, чтобы критерий качества группировки принял бы наилучшее значение. Число кластеров может быть как выбрано заранее, так и не задано (в последнем случае оптимальное количество кластеров должно быть определено автоматически). Под критерием качества обычно понимается некоторый функционал, зависящий от разброса объектов внутри группы и расстояний между группами.

В последнее время в кластерном анализе активно развивается подход, основанный на коллективном принятии решений [4, 5]. Известно, что алгоритмы кластерного анализа не являются универсальными: каждый алгоритм имеет свою специфическую область применения: например, одни алгоритмы лучше справляются с задачами, в которых объекты каждого кластера описаны «шарообразными» областями многомерного пространства; другие алгоритмы предназначены для поиска «ленточных» кластеров и т.д. В случае, когда данные имеют разнородную природу (см. пример на рис. 1), для выделения кластеров целесообразно применять не какой-то один алгоритм, а набор различных алгоритмов. Коллективный (ансамблевый) подход позволяет также снижать зависимость результатов группировки от выбора параметров алгоритма, получать более устойчивые решения в условиях «зашумленных» данных, при наличии в них «пропусков».

Существуют следующие основные методики получения коллективных кластерных решений [5]: использование матрицы попарного сходства/различия объектов; максимизация степени согласованности решений (нормализованной взаимной информации, исправленного индекса Ранда и т.д.); применение теоретико-

1 Работа выполнена при поддержке РФФИ, проекты 11-07-00346а, 10-01-00113а, 11-07-12083-офи-м-2011.

графовых методов; анализ бутстрэп-выборок. В предлагаемой работе развивается направление, основанное на матрицах попарного различия объектов. В итоговом коллективном решении требуется учитывать степень «компетентности» каждого алгоритма на различных подмножествах объектов. Для оценивания компетентности используется модель ансамблевого кластерного анализа, предложенная в работе [6]. Вводится модификация данной модели, учитывающая веса алгоритмов. Предложенная модель используется для обоснования качества коллективного решения.

10 8 6 4 2 0

--4 -2 0 2 4 6 8 10

Рис. 1. Пример расположения данных

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

1. Основные понятия и обозначения

Пусть имеется множество 5 = {о(1),..., о(мнекоторых объектов, случайным и

независимым образом выбранных из генеральной совокупности. Требуется разбить эти объекты на заданное число К кластеров в соответствии с критерием качества группировки.

Пусть каждый объект описывается с помощью набора вещественных переменных Х],...,Хп . Через х = х(о) = (х1,...,хп) обозначим вектор переменных для объекта о , где х^ = Ху (о), у = 1,., п , а через хм - таблицу данных

(х(о(1),...,х(о(ы)))т . Предположим, что имеется некоторая скрытая (непосредственно ненаблюдаемая) переменная У, которая задает принадлежность каждого объекта к некоторому классу У е {1,.,К} . Каждый класс характеризуется определенным законом условного распределения р(х | У = к) = рк(х), к = 1,...,К .

Рассмотрим следующую вероятностную модель генерации данных. Пусть для каждого объекта определяется класс, к которому он относится, в соответствии с

К

априорными вероятностями Рк = Р(У = к), к = 1,...,К , где ^ Рк = 1. Затем в со-

к=1

ответствии с распределением pk (x) определяется значение x. Указанная процедура проводится независимо для каждого объекта. Для произвольной пары объектов a, b е s и соответствующих наблюдений x(a) и x(b) определим величину

Z = I(Y(a) * Y(b)),

где I (•) - индикаторная функция (I (true) = 1, I (false) = 0). Обозначим через

Pz = P[Z = 1| x(a), x(b)]

вероятность события « a и b принадлежат к различным классам, при известных x(a) и x(b)»:

Pz = 1 - P[Y(a) = 11 x(a)] P[Y(b) = 11 x(b)] -... - P[Y(a) =

= * | x (a)] PlY (b) = K | x(b)] = 1 -±P (x(a»p^ •

k=1 p

K

где p(x(o)) = £ pk (x(o))Pk , o = a, b .

k=1

Пусть с помощью некоторого набора алгоритмов кластерного анализа ц х,...,цм по таблице данных строятся варианты разбиения множества s на кластеры (число кластеров для каждого варианта может отличаться). Поскольку нумерация классов не играет роли, удобнее рассматривать отношение эквивалентности, т.е. устанавливать, относит ли алгоритм цт каждую пару объектов в один и

тот же класс, либо в разные классы. Определим для каждой пары объектов a и b величину hm (a, b) = I[^ (a) * Цт (b)]-

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

«m, принадлежащего некоторому множеству Qm (параметров, или, в более общем смысле, «условий обучения», таких, как порядок объектов, подмножество отобранных переменных или случайная подвыборка объектов и т.п.). Кроме того, будем считать, что решения алгоритма зависят от действительного статуса пары a, b (т.е. от Z), а также от исходной таблицы данных: hm (a, b) = hm (a, b, xN, «m, Z). В дальнейшем, при фиксированных a, b и xN будем обозначать hm (a, b, xN, «m, Z) = hm («m, Z). Предположим, что выполняется P[hm («m, Z) = 1|Z = 1] = P[hm («m, Z) = 0|Z = 0] = ^,

т. е. условная вероятность правильного решения (либо разделения, либо объединения пары объектов) для алгоритма |am постоянна. Кроме того, будем полагать, что величина qm > 0,5 . В литературе это предположение известно как условие достижения «слабой обученности» алгоритмов. Это означает, что каждый алгоритм дает группировку, для которой вероятность правильного решения выше, чем у тривиального алгоритма, основанного на случайном равновероятном выборе в пользу объединения или разделения рассматриваемой пары объектов. Обозначим

Pm = P[hm («m , Z) = 1].

Чем ближе величина Рт к 0 или 1 (или чем меньше дисперсия т-го алгоритма Ут = Рт (1 - Рт)), тем более однородными являются решения в ансамбле для алгоритма цт.

Предположим, что алгоритм цт проработал Ьт раз при независимых и одинаково распределенных «параметрах». Через О1т,...,Оь т обозначим независимые

статистические копии случайного вектора От . В результате работы получим набор случайных решений

Нт (О1, т > 2 ), -, Нт (ОЬт ,т > 2 ), т = V--,М .

Для всех О/ т каждый алгоритм цт работает независимо (не использует результаты, полученные для других Ог т , /' Ф/). Разные алгоритмы также независимы в том смысле, что они не используют результаты, полученные другими алгоритмами. С другой стороны, решения являются зависимыми от действительного статуса пары а, Ь (например, если объекты а и Ь принадлежат разным кластерам, «разумные» алгоритмы с большей вероятностью будут относить эти объекты также к различным классам). Данное свойство может быть формализовано следующим образом. Предположим, что решения являются условно независимыми:

Р[\ (Ц-1,т,2) = \,Ьт] (Ц^,2) = НГ]\2 = z] =

= РРт (Цт,2) = \ \ 2 = г] •... • Р^ (Ц^,2) = Нг,\2 = г], где Ц т ,...,Ог. т - произвольный набор параметров, а индексы т1,.,т. соответствуют различным алгоритмам, Нг ,г е{0,1}.

Пусть

Ртт = Р[Нт (От , 2) = 1, Нт (О^,, 2) = 1], где от,От принадлежат тому же распределению, что и От, т = 1,.,М , О' /О” .

т т

Будем полагать, что каждый алгоритм вносит свой вклад в общее коллективное решение. Обозначим

__ М 1 ь

Н = Ха ть- X Нт (О/ ,т, 2 ),

т=1 т I=1

где ат - некоторые константы (веса), т = 1,...,М , ^ат =1. Функцию

т

с(Н1(О1,2),...,Нт (О/, 2),...,Нм (Оь, 2)) = I [Н > 1/2]

назовем ансамблевым решением для а и Ь , полученным в соответствии со «взвешенным голосованием». Для построения окончательной ансамблевой кластеризации объектов можно использовать различные подходы [5]. Например, можно применять метод, основанный на матрице попарных различий

Н = (Н (о(!1), о(г'2)),

где о(г1), о(''2) е 5, 0(!1) Ф о(г2), величина Н есть наблюдаемое значение Н . Эту матрицу можно рассматривать как матрицу попарных расстояний между объекта-

ми и применять алгоритм построения дендрограммы [2] для разбиения множества объектов на заданное число кластеров.

2. Верхняя граница вероятности ошибочной классификации

Рассмотрим маржинальную функцию кластерного ансамбля [6]: mg = { взвешенное число голосов за 2 - взвешенное число голосов против 2}, где 2 е {0,1}. Легко показать, что маржинальная функция mg = mg(Й, 2) = (22 - 1)(2Й -1).

С использованием этой функции, можно представить вероятность ошибки предсказания 2 как

Из неравенства Чебышева следует

ретг = Р2,а1Л,..,а1мМ п(Й,2) < 0]-

< Уаг^Ш,2),

"

при условии, что Emg(Й, 2) > 0 (через Е() и Уаг() обозначено математическое ожидание и дисперсия соответственно).

В работе [6] для случая одного алгоритма (М = 1) и без учета весов были найдены выражения для математического ожидания и дисперсии маржинальной функции:

Emg(Й, 2) = 2 д -1, Уаг mg(Й, 2) = -4(р - Р1Д).

А

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

Теорема 1. Пусть выполняются введенные выше предположения модели. Тогда

__ м ___ м а2

Emg

m=1 m=1 m

причем для всех m = 1,..М имеет место Ргп -Pm,m = дП1 (1 -дП1).

м

Замечание. Требование Emg(Й, 2) > 0 выполняется, если £ап qm > 0,5 , т.е.

П=1

усредненная условная вероятность правильного решения выше, чем вероятность правильного решения, полученного тривиальным алгоритмом случайного равновероятного выбора.

Данная теорема позволяет оценить сверху вероятность ошибки ансамблевого алгоритма в выражении (1), а также сделать несколько качественных выводов. Рассмотрим коэффициент корреляции рп между Н'п = Н(0!п , 2) и Н'П = Н(ЦП, 2), где П'п ф О”т , п = 1,...,М . По определению коэффициента

Р - Р2

_ _ П,П П

Рп =РнП ’К = р

п V п /

Так как Рп - = qm (1 - qm ) и Рп - Рп,п = Рп - ^ ^ - Рш,ш , то получим сле-

дующее выражение:

— а2 Уаг(mg(Й,2)) = 4£-ш(1 -РшУ .

ш ш

Таким образом, можно сделать следующие выводы:

- вероятность ошибки уменьшается с ростом числа элементов Ьш в ансамбле для каждого алгоритма цш ;

- повышение однородности ансамбля (т.е уменьшение дисперсии Уш) и увеличение корреляции между его решениями снижает вероятность ошибки.

3. Оценивание характеристик ансамбля и нахождение оптимальных весов

Предположим, в результате работы ансамбля получены различные варианты классификации объектов. Для фиксированной пары объектов а и Ь , каждого алгоритма цш и 1-го элемента соответствующего ансамбля определим величину Нт1 е{0,1}, показывающую, была ли данная пара объектов отнесена к одному или разным кластерам, где I = 1,...,Ьш, ш = 1,...,М . Эти значения можно использовать для оценивания введенных выше характеристик ансамбля. Например,

1 1

оценкой Рш служит величина Рш = — £ Нт1, а оценкой дш - величина

р I=1

д[ш = тах(Рш ,1 - Рш). Аналогичным образом можно оценить и другие введенные характеристики ансамбля.

Рассмотрим задачу выбора оптимальных весов а1,...,ам , для которых минимальна верхняя граница вероятности ошибки (1) при ограничении £аш = 1. Для

ее решения можно использовать известные методы поиска глобального экстремума функций [7]. Однако поскольку оценка (1) является значительно завышенной в силу того, что при ее выводе используется неравенство Чебышева, справедливое для любого распределения, можно использовать и другие подходы. Например, минимизировать дисперсию маржинальной функции в выражении (2), при условии, что математическое ожидание не ниже заданного значения и т.п. Нахождение оптимальных коэффициентов может проводиться методом множителей Лагранжа с учетом ограничений в виде неравенств. При этом возникает задача квадратичного программирования, для которой существует достаточно разработанная теория. Более подробное изучение различных вариантов поставленной оптимизационной задачи планируется провести в дальнейших работах.

В случае, когда число алгоритмов М = 2, число элементов ансамбля для каждого алгоритма одинаково, а в качестве целевого минимизируемого функционала рассматривается дисперсия маржинальной функции, можно получить следующее выражение для оптимальных значений весов:

а* =--------д2а-д2)----, а2 = 1 -а*.

д1

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

Интерес представляет также случай, когда для всех пар объектов веса, соответствующие каждому алгоритму, совпадают. Таким образом, требуется оценить обшую степень «компетентности» каждого алгоритма по всевозможным парам. Для этого можно использовать выражение (3), подставив в него усредненные по всем парам объектов величины ^1, д2.

Разработан алгоритм построения ансамблевого решения, реализующий предложенную методику определения оптимальных весов алгоритмов. При этом для каждой пары объектов с помощью приближенного переборного алгоритма находились веса, для которых верхняя граница вероятности ошибки (3) принимает минимальное значение. После вычисления согласованной матрицы различий, для нахождения итогового варианта группировки применялся стандартный агломера-тивный метод построения дендрограммы, который в качестве входной информации использовал попарные расстояния между объектами [2]. При этом расстояние между группами определялось по принципу «средней связи», т.е. как среднее арифметическое попарных расстояний между объектами, входящими в группы.

Напомним также, что предполагается независимость отбора различных параметров алгоритмов, а также достижение алгоритмами «слабой» обученности. Чтобы в максимальной степени обеспечить выполнение условий теоремы 1, дополнительно проводился контроль качества решений базовых алгоритмов по индексам качества результатов кластерного анализа [3]. Так, например, если в полученной группировке число объектов, попавших в один кластер, оказывалось меньше заданного порога, такой вариант решения исключался из рассмотрения.

4. Экспериментальное исследование

При исследовании разработанной методики построения ансамбля рассматривался случай, когда в ансамбль включены два алгоритма: алгоритм ^-средних и агломеративный алгоритм построения дендрограммы [2], в котором расстояние между группами определялось по принципу «ближайшего соседа». Для оценки качества использовался метод статистического моделирования: многократно генерировались выборки, соответствующие заданному распределению для каждого класса; полученный набор данных классифицировался с помощью предложенного ансамблевого алгоритма с весами; вычислялся индекс согласованности полученной классификации с истинной. Для определения степени согласованности использовался индекс Ранда, представляющий собой отношение числа пар объектов, у которых либо одинаковые, либо разные номера классов в полученной и истинной группировке, к общему числу пар различных объектов (значение индекса, близкое к 1, означает хорошую согласованность группировок). Степень согласованности усреднялась по всем выборкам. Число повторений выборок было задано равным 100.

В 30-мерном пространстве переменных моделировались кластеры, два из которых имеют шарообразную, а два - ленточную форму (см. типичный пример выборки - проекцию в пространство первых двух переменных на рис. 1). Некоторые

переменные, номера которых определялись случайно, являлись «шумовыми», т.е. все реализации по этим переменным подчинялись равномерному распределению (число шумовых переменных задавалось параметром п0). Объем выборки для каждого из четырех классов был задан равным 25. Для построения ансамбля использовался метод случайных подпространств [5]: из общего числа переменных случайным образом выбиралось заданное число паш переменных, в пространстве которых проводилась группировка. В рассмотренном примере было выбрано значение паш = 3. Число элементов ансамбля для каждого алгоритма было положено равным 50. На рис. 2 показаны полученные результаты моделирования, в зависи-

*

мости от числа шумовых переменных. Через Я еш обозначено значение индекса

Ранда для разработанного ансамблевого алгоритма с весами. Для сравнения, приведены результаты работы каждого из алгоритмов без использования ансамбля (на рисунке обозначено: Я10 - индекс Ранда для алгоритма ^-средних, Я20 - для алгоритма построения дендрограммы), а также с использованием ансамбля по каждому алгоритму отдельно (Я1еш - для алгоритма ^-средних, Я2еп - для алгоритма построения дендрограммы). В последних двух случаях число элементов в ансамбле задавалось равным 100, чтобы обеспечить правомочность сравнения.

Рис. 2. Результаты моделирования

По результатам моделирования можно сделать следующие выводы. Эксперимент подтвердил преимущество коллективного подхода (особенно это проявляется для алгоритма построения дендрограммы, точность которого при использовании ансамбля возросла в несколько раз). Начиная с определенного порога на число шумовых переменных (в данном случае равного восьми), ансамблевый алгоритм с весами позволил получить наилучшую точность по сравнению с другими сравниваемыми методиками. При меньшем числе шумовых переменных точность данного алгоритма практически совпала с точностью ансамблевого алгоритма построения дендрограммы (с удвоенным числом элементов ансамбля) и также являлась оптимальной. Заметим, что заранее неизвестно, какой из двух алгоритмов

(алгоритм k-средних или алгоритм построения дендрограммы) оказался бы наилучшим. Использование метода взвешенного ансамбля позволило в данном примере получить гарантированный оптимальный результат.

Заключение

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

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

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

ЛИТЕРАТУРА

1. Миркин Б.Г. Методы кластер-анализа для поддержки принятия решений: обзор. М.: Изд. дом НИУ ВШЭ, 2011.

2. Дуда Р.,Харт П. Распознавание образов и анализ сцен. М.: Мир, 1976.

3. Jain A.K., DubesR.C. Algorithms for clustering data. Prentice Hall, NY, 1988.

4. Jain A.K. Data clustering: 50 years beyond k-means // Pattern Recognition Letters. 2010. V. 31. No. 8. P. 651-666.

5. Ghosh J., Acharya A. Cluster ensembles // Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery. 2011. V. 1(4). P. 305-315.

6. Berikov V. A latent variable pairwise classification model of a clustering ensemble // Multiple Classifier Systems, 2011. Lecture Notes on Computer Science, LNCS 6713 / C. Sansone, J. Kittler, and F. Roli (Eds.). Springer, Heidelberg, 2011. P. 279-288.

7. Жиглявский А.А., Жилинкас А.Г. Методы поиска глобального экстремума. М.: Наука, Физматлит, 1991.

Бериков Владимир Борисович

Институт математики им. С.Л. Соболева СО РАН

E-mail: berikov@math.nsc.ru

Поступила в редакцию 4 мая 2012 г.

Berikov Vladimir B. (Sobolev Institute of mathematics SB RAS). Collective of algorithms with weights for clustering heterogeneous data.

Keywords: cluster analysis, collective decision, algorithms with weights, probability of wrong classification.

The paper considers a problem of heterogeneous data clustering. Under heterogeneous data one can understand the data that contain different structures: sphere-like and strip-like clusters; various geometric figures etc. To raise the grouping quality for such types of data, we suggest using the ensemble of different clustering algorithms. When including an algorithm into the ensemble, it is assumed that the algorithm produces better results for a specific type of structures. Besides, it is supposed that the experiment is planned so that the algorithms work independently, and each algorithm is functioning on independently chosen sets of parameters (learning conditions). For the construction of final decision it is recognized the behavior of each algorithm in the ensemble, on the basis of which a weight is attributed to it. A probabilistic model of ensemble clustering with latent classes and algorithm’s weights is introduced. With use of the model, an expression for the upper bound of classification error probability is derived. To minimize the bound, a method of weights selection is suggested. The procedure of ensemble construction and finding the weights is implemented in correspondent algorithm. The efficiency of the suggested method is demonstrated by making use of Monte-Carlo modeling.