Вестник КРАУНЦ. Физ.-мат. науки. 2017. № 3(19). C. 70-77. ISSN 2079-6641
DOI: 10.18454/2079-6641-2017-19-3-70-77
УДК 519.7
КЛАСТЕРИЗАЦИЯ НА ОСНОВЕ ПОИСКА ЦЕНТРОВ И УСРЕДНЯЮЩИЕ АГРЕГИРУЮЩИЕ
ФУНКЦИИ
З.М. Шибзухов
Институт прикладной математики и автоматизации, филиал КБНЦ РАН, г. Нальчик E-mail: [email protected]
Предлагается новый метод поиска разбиения на кластеры конечного множества точек из Rn, который основан на применении усредняющих агрегирующих функций и метод итерационного перевзвешивания для поиска центров кластеров.
Ключевые слова: агрегирующие функции, М-среднее, K-means, кластеризация
© Шибзухов З.М., 2017
MSC 68T05, 62H30
CENTER BASED CLUSTERING AND AVERAGING AGGREGATION FUNCTIONS
Z.M. Shibzukhov
Institute of Applied Mathematics and Automation, branch of KBSC RAS, Nalchick E-mail: [email protected]
We propose a new clustering method for partitioning of finite sets from Rn, which is based on the application of averaging aggregating functions and an iterative re-weighing method for searching cluster centers.
Key words: aggregation function, M-average, K-means, clustering
© Shibzukhov Z.M., 2017
В основе одного классического метода для точного разбиения на кластеры лежит процедура поиска центров кластеров. Центр множества - это точка, от которой сумма расстояний до всех точек множества минимально. Разбиение на кластеры осуществляется по простому правилу: точка относится к кластеру, до центра которого расстояние минимально.
Пусть S С Rn - открытое подмножество, X = |xi,...,С S - конечное множество, которое требуется разбить на K кластеров. Пусть d: S х S ^ R+ U {<*>} -функция обобщенного расстояния между точками из S, которая, по определению [1], удовлетворяет следующим требованиям:
1) dc(x) = d(x,c) - строго выпуклая и дважды дифференцируемая на S;
2) lim dc(x) =
c
Ilxll—» та
Пусть Сх,...,Ск — некоторое разбиение множества X на К кластеров, yj(х) — характеристическая функция ^го кластера, 1 ^ j ^ К:
yj(x) =
1, если x е C
j
0, иначе.
Определение. Точка с* - центр конечного множества C С Rn, если
Q(c*) = min Q(c), (1)
ceRn
где
N
Q(c) = Y ykd(xk, c), k=1
а Ук = y(xk) - характеристическая функция C. Например: 1) в методе K-means
n
d (x, c) = ||x - c||2 = £ (xi - ci)2,
i=1
центр множества
2) в методе K-medoid
N
icI
c* = iC Y xk.
n
d(x,c) = ||x - c|i = £ |xi - ci|, i=1
центр множества c* = (c*,...,c*), где
c* = med jxkij,
г k=1,...,N{ }
а xk = (xk1,...,xkn).
Условия, наложенные на d обеспечивают существование и единственность центра. В более общем случае функцию расстояния можно записать в следующей форме:
. п
d(x, c) = £ h(xi - ci) vi=1
где h — функция расстояния на R, g — монотонная строго возрастающая функция. Например:
1) d(x,c) = ||x-c||p = £ |x - Сг-|р, p > 1;
¿=i
/Л \ i/p
2) d(x,c) = ||x- c|p = (£ |хг- - Ci|pJ , p ^ 1.
i=1
Детерминированные характеристические функции кластеров, которые полностью задаются своими центрами, обычно определяются следующим образом:
если j = arg min d(x,c,■)
j=1,..,K v j (2)
иначе
Т.е. точка относится к тому кластеру, к которому она ближе всего.
Задачу поиска кластеров, следуя [1], можно сформулировать как задачу оптимизации:
c1,...,cK = arg min Q(c1,...,cK), (3)
ci,...,ck
где
N
Q(c1,...,ck) = £ VkD(xk), (4)
k=1
D(x) = min d(x, c ,■), (5)
1<kk j
величина Vk ^ 0 и отражает значимость k-ой точки, V1 +----+ Vn = 1. Если Vk = N
, а d(x,c) = ||x - c|2, то данная задача оптимизации лежит в основе стандартного алгоритма K-Means. Так как
gradcj Q = £ Vkgradcjdk (c), kelj
где dk(cj) = d(xk,cj), ykj = yj(xk), Ij = {k: xk e Cj}, то центр j-ого кластера является решением следующей задачи оптимизации:
c j = arg min £ Vkdk (c).
c keIj
yj(x) =
1,
0,
Классический алгоритм кластеризации на основе поиска центров кластеров НСй1. представляет собой итерационный процесс уточнения положения центров С1,...,Ск. Он представляет собой разновидность алгоритмов спуска по альтернативным направлениям, которые представляют группы переменных, соответствующих центрам кластеров с1,..., ск.
1HCD =Hard Clustering with Distance-like functions
procedure HCD({xi,...,xN}, {c°,...,cK})
t ^ 0
ci,..., Ck ^ c0,..., cK repeat
for all j = 1, . . ., K do
Ij = {k: yj (xk) = 1} c j ^ arg min £ Vkdk (c),
C kelj
end for
t ^ t + 1
until положения центров не стабилизируются return c1,..., cK end procedure
Рассмотрим случай, когда d(x,c) = p(||x — c||), где || ■ || - Евклидова норма. В этом случае алгоритм HCD можно свести к цепочке взвешенных версий K-Means на базе следующего соотношения:
gradp (||x — c||) = p' (||x — c||)grad||x — c|| = P '^J^^ grad^ ||x — c||2.
Применяя метод итеративного перевзвешивания для поиска центров кластеров, приходим к алгоритму IR-KMeans.2
Рассмотрим обобщения этой постановки задачи, исходя из факта, что min и взвешенное среднее арифметическое являются примерами усредняющих агрегирующих функций [2, 3]. Значительный класс таких функций - это М-средние. Будем строить эти обобщения, по следующей схеме [4].
Пусть p(r,s) = g(h(r) — h(s)), где g(r) - выпуклая функция, а h(s) - строго монотонная. Определим М-среднее, как решение следующей задачи:
Г m 1
Mp {Г1,..., rm} = arg min I £ p (rj, s) j.
Если p(■,r) - строго выпуклая дважды дифференцируемая функция, то Mp -дифференцируемая усредняющая агрегирующая функция [5, 6]. Большинство известных функций для вычисления эмпирического среднего можно представить как M-среднее.
Если существует pss(r,s) и psr(r,s), то
д Mp {n,..., rm}_ —psr (rj, r)
д Г/ р^(ГЬ г) + ••• + pss(rm, г)'
где г = Мр|г1,...,гт}. В частности, если р(г,я) = #(г—я), то имеет место соотношение:
т д Мр {Г1,..., Гт} = х
^ дг- 1.
j=1 дгj
Рассмотрим первое обобщение путем замены взвешенного среднего арифметического на Мр:
^(еь...,ск) = Мр(Я(х1),...,£(ху)}. (6)
2IR-K-Means = Iteratively Reweighted K-Means.
Градиент Q по Cj (1 ^ j ^ K) имеет вид:
grade ,•Q = £--д-gradCj dk(c j),
j keI j д rk J
где I j = {k: ykj = 1}.
Для решения задачи поиска центров, минимизирующих (6) можно построить процедуру спуска по альтернативным направлениям - градиентам gradCjjQ.
procedure IR-HCD-M1({xb...,xn}, {c0,...,cK})
t ^ 0
Ci,..., CK ^ C°,..., cK
repeat
for all j = 1, ..., K do for all k e Ij do
v = д Mp {D(xi),..., D(xn )}
д rk
end for
c j ^ arg min £ Vkdk (c) C kelj
end for
t ^ t + 1
until положения центров не стабилизируются return C1, . . . , CK end procedure
По окончании работы алгоритма получаются веса точек V^,...,vN (т.к. множества I1,...,Ik не пересекаются; в противном случае детерминированное разбиение на кластеры невозможно). В случае, когда p(r,s) = g(r — s), их можно интерпретировать как степени важности точек x1,...,xn. Найденные центры также являются решением задачи (3)-(5) с весами Vj*,...,vN.
Рассмотрим второе обобщение задачи (4), когда
D(x) = Mpc {d (x, ci),..., d (x, cK)}
т.е. тогда
N
Q(ci,...,ck) = £ VkMpc{dk(ci),...,dk(ck)}. (7)
k=i
Градиент Q по c/ (1 ^ j ^ K) имеет вид:
J N d MpC {dki,..., dkK} 17/ \
gradc.Q = £ Vk—^^-gradcdk(c/),
j k=i drj J
где dkj = d(xk,cj).
Для решения задачи можно построить алгоритм IR-HCD-M2 - новый вариант процедуры итерационного перевзвешивания:
procedure IR-HCD-M2({xb...,xn}, {c0,...,cK})
t ^ 0
C1,..., Ck ^ c0,..., cK repeat
for all k = 1, . . .,N do
Vk1,..., VkK = gradMpc{dk(C1),..., dk(ck)} end for
for all j = 1, . . ., K do
N
cj ^ arg min £ VkVkjdk (c) c k=1
end for
t ^ t + 1
until положения центров не стабилизируются return c1,..., cK end procedure
Заметим, что если p(r,s) = g(r — s), то vk1,...,vkK ^ 0 и vk1 +-----+ vkK = 1. Тогда величины Vk1,...,VkK можно интерпретировать как степени принадлежности xk к классам с метками 1,...,K, соответственно. Это позволяет построить нечеткую кластеризацию конечного множества x1,...,xn. При этом, нечеткая функция принадлежности к кластерам строится на основе выбранной дифференцируемой усредняющей функции Mp следующим образом:
У1 (x),...,Ук(x) = gradMp{d(x,C1),...,d(x,ck)}.
Если d(x,c) = p(||x — c||2), то тогда алгоритм IR-HCM превращается в аналог IR-K-Means, в котором веса
= д Mp {dk1,..., dkK } p ;(||xk — c j ||) Vkj дrj |xk— cj! ,
где dkj = d(xk, cj).
Предложенная здесь метод поиска центров кластеров обобщает подход, рассмотренный в [1], когда в качестве усредняющих функций выступают функции среднего по Колмогорову:
/ 1 к х Mh{z1,...,zk} = h—^NN £h(zj)),
где h - взаимно обратная монотонная функция. Т.е. алгоритм IR-HCM обобщает естественным образом алгоритм SKM [1]. Там же было показано, что путем выбора соответствующей функции h можно построить уже известные алгоритмы кластеризации, как такие FCM [7], EM [8], DA [9], Bergman Soft Clustering [10].
Объединим теперь оба этих способа. Теперь задача поиска центров имеет вид:
c1,...,cK = arg min Q(c1,...,cK), (8)
C1,...,Ck
где
Q(C1,..., ck ) = Mp {D(x1),..., D(XN ), (9)
D(x) = MpC {d(x, C1),..., d (x, C1)}, (10)
Градиент Q по Cj (1 ^ j ^ K) имеет вид:
gradc.Q = £ dMP{dd} dMpc{4ь...,dkK}gradcj,Cj),
где dkj = d (xk, Cj).
procedure IR-HCD-MM({xb...,xn}, {c0,...,c|}) t ^ 0
C1,..., CK ^ c0,..., cK repeat
for all k = 1,...,N do
Vki,..., VkK = gradMpc{dk(C1),..., dk(ck)} end for
for all j = 1,..., K do
V1,..., Vn = gradMp {d1 (cj),..., dN (cj)}
N
cj ^ argmin £ VkVkjdk(c) c k=1
end for
t ^ t + 1
until положения центров не стабилизируются return c1;..., cK end procedure
Таким образом, применение М-средних позволило построить процедуры поиска центров кластеров, которые обобщают HCD и SKM, позволяя использовать широкий спектр методов поиска среднего значения для нечеткого отнесения точек к кластерам и методов поиска центра для конечного набора точек.
Работа выполнена при поддержке гранта РФФИ 15-01-03381.
Список литературы
[1] Teboulle M., "A Unified Continuous Optimization Framework for Center-Based Clustering Method", Journal of Machine Learning Research, 2007, №8, 65-102.
[2] Mesiar R., Komornikova M., Kolesarova A., Calvo T., Aggregation functions: A revision. In H. Bustince, F. Herrera, J. Montero, editors, Fuzzy Sets and Their Extensions: Representation, Aggregation and Models., Springer, Berlin, Heidelberg, 2008.
[3] Grabich M., Marichal J.-L., Pap E., Aggregation Functions. Series: Encyclopedia of Mathematics and its Applications. V. 127, Cambridge University Press, 2009.
[4] Шибзухов З.М., "О принципе минимизации эмпирического риска на основе усредняющих агрегирующих функций.", Доклады РАН, 476:5 (2017). [Shibzukhov Z.M., "O printsipe minimizatsii empiricheskogo riska na osnove usrednyayushchikh agregiruyushchikh funktsiy.", Doklady RAN, 476:5 (2017)].
[5] Calvo T., Beliakov G., "Aggregation functions based on penalties", Fuzzy Sets and Systems, 161:10 (2010), 1420-1436.
[6] Beliakov G., Sola H., Calvo T., A Practical Guide to Averaging Functions, Springer, 2016.
[7] Bezdek J.C., Pattern Recognition with Fuzzy Objective Function Algorithms, Plenum Press, New York, 1981.
[8] Duda R.O., Hart P.E., Stork D.G., Pattern Classification., John Wiley & Sons, Inc., 2-nd edition, 2001..
[9] Rose K., Gurewitz E., Fox C.G., "A deterministic annealing approach to clustering", Pattern Recognition Letters, 11:9 (1990), 589-594.
[10] Banerjee A., Merugu S., Dhillon I.S., Ghosh J., "Clustering with Bregman Divergences", Journal of Machine Learning Research, 2005, №6, 1705-1749.
Список литературы (ГОСТ)
[1] Teboulle M. A Unified Continuous Optimization Framework for Center-Based Clustering Method // Journal of Machine Learning Research. 2007. no 8. pp. 65-102.
[2] Mesiar R., Komornikova M., Kolesarova A., Calvo T. Aggregation functions: A revision. In H. Bustince, F. Herrera, J. Montero, editors, Fuzzy Sets and Their Extensions: Representation, Aggregation and Models. Berlin, Heidelberg: Springer, 2008.
[3] Grabich M., Marichal J.-L., Pap E. Aggregation Functions. Series: Encyclopedia of Mathematics and its Applications. No.127. Cambridge University Press, 2009.
[4] Шибзухов З.М. О принципе минимизации эмпирического риска на основе усредняющих агрегирующих функций. Доклады РАН. 2017. T. 476. № 5.
[5] Calvo T., Beliakov G. Aggregation functions based on penalties // Fuzzy Sets and Systems. 2010. vol. 161 no. 10. pp. 1420-1436.
[6] Beliakov G., Sola H., Calvo T. A Practical Guide to Averaging Functions Springer, 2016.
[7] Bezdek J.C. Pattern Recognition with Fuzzy Objective Function Algorithms. N.York: Plenum Press, 1981.
[8] Duda R.O., Hart P.E., Stork D.G. Pattern Classification. John Wiley & Sons, Inc., 2-nd edition, 2001.
[9] Rose K., Gurewitz E., Fox C.G. A deterministic annealing approach to clustering // Pattern Recognition Letters. 1990. vol. 11. no 9. pp. 589-594.
[10] Banerjee A., Merugu S., Dhillon I.S., Ghosh J. Clustering with Bregman Divergences // Journal of Machine Learning Research. 2005. no 6. pp. 1705-1749
Для цитирования: Шибзухов З. М. Кластеризация на основе поиска центров и усредняющие агрегирующие функции // Вестник КРАУНЦ. Физ.-мат. науки. 2017. № 3(19). C. 70-77. DOI: 10.18454/2079-6641-2017-19-3-70-77
For citation: Shibzukhov Z. M. Center based clustering and averaging aggregation functions, Vestnik KRAUNC. Fiz.-mat. nauki. 2017, 19: 3, 70-77. DOI: 10.18454/2079-6641-2017-19-3-7077
Поступила в редакцию / Original article submitted: 05.10.2017