K - MachineLearning.ru

advertisement
Двухкомпонентная функция
качества кластеризации
множества элементов,
представленных парными
сравнениями
Двоенко С.Д.
Тульский государственный университет
ИОИ-2014
30 slides
30
слайдов
План презентации
• Беспризнаковый алгоритм k-means
- по расстояниям
- по близостям
• Перестановочный k-means (без средних)
• Двухкомпонентная целевая функция для
беспризнакового перестановочного k-means
(bi-meanless k-means)
- прямая форма
- двойственная форма
- снижение вычислительной сложности
• Эксперименты и результаты
2
Несмещенное разбиение
• Кластер-анализ:
i  , i  1,... N , xi  ( xi1 ,... xin ), X ( N , n)
• Алгоритм k-means основан на идее
несмещенного разбиения:
Каждый кластер  k , k  1,... K представлен
его "представителем" x k и центр каждого
кластера представлен его "средним"
объектом xk
3
Несмещенное разбиение
• Если представители и центры совпадают
для всех кластеров x k  xk , то
несмещенное разбиение найдено
• Если нет, то разбиение - смещенное
• Тогда следует назначить средние
объекты представителями и заново
переклассифицировать все объекты на
основе их минимальных расстояний до
представителей
4
Отсутствие признаков
• Дана только матрица D( N , N ) расстояний
• Объект  ( xk ) как центр кластера в ней не
представлен
• Можно считать объект, наиболее близкий
к остальным в кластере, его центром  k
• Тогда при k  k будет получено
несмещенное разбиение
• Проблема: в признаковом пространстве в
общем случае будет получено смещенное
разбиение, т.к. x(k )  xk .
5
Алгоритм k-means
• Теорема: центр каждого кластера как
его среднее арифметическое
минимизирует его дисперсию и
дисперсию всего разбиения:
1
2
k 
Nk
Nk
1
2
(xi  xk ) 

Nk
i 1
1
J (K ) 
N
K
Nk
2
d
 (xi , xk ),
i 1
K
Nk 2
N k  
k

k 1
k 1 N
2
k
6
Алгоритм k-means
• Дисперсия кластеров минимизируется
для несмещенного разбиения и при
отсутствии явно заданного пространства
признаков:
1
2
k 
Nk
1
J (K ) 
N
Nk
2
d
 (i , k ),
i 1
K
K
Nk 2
N k  
k

k 1
k 1 N
2
k
7
Алгоритм k-means
• Если множество  помещено в некоторое
подходящее пространство признаков и
x(k )  xk , тогда два критерия
J X ( K )  min J ( K ) и J D ( K )  min J ( K )
1 ,... K
x1 ,... xK
совпадают
J (K )  J (K )
X
D
• Но в общем случае
J (K )  J (K )
D
X
8
Алгоритм k-means
• Построим несмещенную кластеризацию, обеспечив
выполнение условия
J X (K )  J D (K )
• Пусть l   расположен в начале координат (н.к.)
2
2
2
• cij  (dl i  dl j  di j ) / 2 - скалярное произведение пары
i ,  j , представленной расстоянием d pq  d ( p , q ) ,
2
где cii  dl i , i  j
• Главная диагональ матрицы Cl ( N , N ) представляет
квадраты расстояний до н.к. l  
• Удобно поместить н.к. в центр «тяжести» множества
i  , i  1,... N (Torgerson, 1958)
9
Алгоритм k-means
• Если н.к. совпадает с центром кластера, то этот
центр  k немедленно может быть представлен
его расстояниями до всех остальных объектов
1
2
d (i , k ) 
Nk
Nk
1
2
dip 

2
2
N
p 1
k
Nk
Nk
2
d
 pq ;  p , q  k ,
p 1 q 1
i  , i  1,... N
• Дисперсия кластера
1
 
Nk
2
k
1
2 N k2
Nk
1
d (i , k ) 

Nk
i 1
2
Nk
 1


i 1  N k
Nk
Nk
1
d 

2 N k2
p 1
2
ip

d 

p 1 q 1

Nk
Nk
2
pq
Nk
 d
p 1 q 1
2
pq
.
10
Беспризнаковый k-means
• Беспризнаковый k-means:
0
Шаг 0. Назначить K начальных центров  k и
объявить их представителями k0 , k  1,...K .
Шаг s. Перераспределить все объекты между
кластерами:
s




1. Поместить i в кластер i
k , если для
i sj : d (i , ks )  d (i ,  sj ), j  1,...K , j  k.
2. Пересчитать, если нужно, центры ks , k  1,...K
и представить расстояниями d (i , ks ), i  1,...N.
3. Разместить следующий i  i  1 объект i .
4. Стоп, если ks  ks , k  1,...K, иначе ks 1  ks ,
11
s  s  1.
Перестановочный k-means
• Среднее квадратов расстояний между
объектами в кластере вместе с
расстояниями до самих себя
1
 k  2
Nk
Nk
Nk
1
2
(xi  x j )  2


Nk
i 1 j 1
Nk
Nk
2
d
  (xi , x j )
i 1 j 1
1
• Очевидно, что  k  2  2 2
2Nk
2




/
2


• Обозначим k k
k , где
2
k
1
k 
2
2Nk
Nk
Nk
d
i 1 j 1
2
Nk
Nk
2
d
 pq
p 1 q 1
(i ,  j )
12
Перестановочный k-means
• Дисперсия кластеризации также минимизируется
J (K )  J (K ) :
1
J (K ) 
N
K
K
Nk
N kk   k

k 1
k 1 N
• Если объекты из  помещены в некоторое
подходящее пространство и x(k )  xk , если
были вычислены, то критерии
J X ( K )  min J ( K ) и J D ( K )  min J ( K )
1 ,...  K X
1 ,...  K D
также совпадут J X ( K )  J D ( K )
• Как и ранее, в общем случае J D ( K )  J X ( K )
13
Перестановочный k-means
• Перестановочный k-means:
Шаг 0. Определить K подмножеств  0k , k  1,...K и
назначить их начальными.
Шаг s. Перераспределить все объекты между
кластерами:
s
s
s




1. Поместить i в кластер i
и
J
(
K
)

J
k
k ( K ),
если для i sj : J ks ( K )  J sj ( K ), j  1,...K , j  k.
2. Разместить следующий i  i  1 объект i.
3. Стоп, если объекты не перемещались,
иначе s  s  1.
14
Разбиение по близостям
• Положительно полуопределенная матрица
близостей S ( N , N ) с элементами sij  s (i ,  j )  0
может быть использована как матрица
скалярных произведений в некотором
пространстве размерности не более N
• Относительно некоторой точки k   как н.к.
близости определяются как
sij  (d ki2  d kj2  dij2 ) / 2, sii  d ki2 ,
и расстояния определяются как
dij2  sii  s jj  2sij
15
Разбиение по близостям
• Центр кластера  k представлен его
близостями с другими объектами
1
s (i , k ) 
Nk
Nk
s
p 1
ip
,  p   k , i  , i  1,... N
• Компактность кластера
1
k 
Nk
Nk
1
s (i , k )  2

Nk
i 1
Nk
Nk
 s
i 1 p 1
ip
, i ,  p   k
16
Разбиение по близостям
• Несмещенное разбиение минимизирует
дисперсию кластера  k2 и
максимизирует его компактность  k :
1
2
k 
2 N k2
1
Nk
Nk
Nk
Nk
1
2
d ij 

2
2
N
i 1 j 1
k
1
sii  2

Nk
i 1
Nk
Nk
Nk
Nk
 ( s
ii
i 1 j 1
1
sij 

Nk
i 1 j 1
Nk
s
i 1
ii
 s jj  2 sij ) 
 k
17
Разбиение по близостям
• Несмещенное разбиение минимизирует
взвешенную среднюю дисперсию и
максимизирует взвешенную среднюю
компактность
 1 Nk

sii   k  


 N k i 1

K
K
Nk
Nk
1 N
sii  
k  c   k

N i 1
k 1 N
k 1 N
K
Nk 2 K Nk
J (K )  
k  
k 1 N
k 1 N
• Взвешенная средняя компактность
K
Nk
I (K )  
k , I (K )  c  J (K )
k 1 N
18
k-means по близостям
• Беспризнаковый k-means по близостям :
0
Шаг 0. Назначить K начальных центров  k и
объявить их представителями  k0 , k  1,...K .
Шаг s. Перераспределить все объекты между
кластерами:
1. Поместить i в кластер i   ks , если для i sj :
s(i , ks )  s(i ,  sj ), j  1,...K , j  k.
s
2. Пересчитать, если нужно, центры k , k  1,...K
и представить их близостями s(i , ks ), i  1,...N.
3. Разместить следующий i  i  1объект i .
4. Стоп, если ks  ks , k  1,...K, иначе ks 1  ks ,
s  s  1.
19
Перестановочный k-means по
близостям
• Перестановочный k-means по близостям:
Шаг 0. Определить K подмножеств  0k , k  1,...K и
назначить их начальными.
Шаг s. Перераспределить все объекты между
кластерами:
s
s
s




I
(
K
)

I
1. Поместить i в кластер i
и
k
k ( K ),
s
если для i  j : I ks ( K )  I sj ( K ), j  1,...K , j  k.
2. Разместить следующий i  i  1 объект i .
3. Стоп, если объекты не перемещались,
иначе s  s  1.
20
Двухкомпонентная ц.ф. для
перестановочного k-means
• Прямая форма: минимизировать внутрикластерные дисперсии J ( K ) и межкластерную
~
~
близость  (K ): J  ( K )  J ( K )   ( K ) ,
1
 (K )  2
K
K
K
1


k 1 l 1 N k N l
Nk
Nl
 s
pq
, p   k ,  q   l ,
p 1 q 1
 - масштабирующий коэффициент
• 2ц.ф. k-means аналогичен беспризнаковому
k-means по расстояниям для минимизации J ( K )
21
Двухкомпонентная ц.ф. для
перестановочного k-means
• Двойственная форма: максимизировать
внутрикластерный близости I ( K ) и межкластерную дисперсию  2 ( K ): I ( K )  I ( K )   2 ( K ) ,
N k Nl
1
2
 2 (K ) 
d
,
2   N N   pq  p   k ,  q   l ,
2 K k 1 l 1 k l p 1 q 1
1
K K
 - масштабирующий коэффициент
• 2ц.ф. k-means аналогичен беспризнаковому
k-means по близостям для максимизации I ( K )
22
Двухкомпонентная ц.ф. для
перестановочного k-means
• Очевидно, что необходимо снизить
вычислительную сложность
рассмотренных алгоритмов на основе
экономных формул для приращений
целевой функции.
• Такие формулы существуют
23
Эксперименты. Ирисы
• Fisher R.A. “The Use of Multiple Measurements in
Taxonomic Problems”, Ann.Eugenics, 7(9):179-188,1936.
Iris Versicolor
Iris Setosa
Iris Virginica
Виды:
1. Iris Setosa (50 шт)
2. Iris Versicolor (50 шт)
3. Iris Virginica (50 шт)
Признаки:
1. Чашелистик длина
2. Чашелистик ширина
3. Лепесток длина
4. Лепесток ширина
Классы 2 и 3 слегка
пересекаются
Данные показаны в пространстве первых трех г.к.
(повернуто). Объясняемая доля дисперсии 99.5%
24
Эксперименты
• Подбор масштаба  для прямой формы ц.ф.
~
~
J  ( K )  J ( K )   ( K ) позволяет получить:
1. улучшение результата для неразделимых
кластеров: Versicolor (2) vs Virginica (3)
2. улучшение результата для разделимых, но
разных по размеру кластеров: небольшой Setosa
(1) vs большой Versicolor и Virginica (2+3)
• Начальные разбиения были определены
заранее, чтобы локальные свойства алгоритма
k-means не влияли на результат
25
1. Неразделимые кластеры
3 кластера
2 кластера
(Setosa-Versicolor-Virginica)
(Versicolor-Virginica)
Errors
(  0)
Optimal

Errors
(opt)
Initial
partition
50-50-50
16
3–6
15
50-50
16
50-70-30
16
3–6
15
70-30
16
16
3–6
15
30-70
Initial
partition
50-30-70
Errors
(  0)
16
Optimal

12 –17.7
12 –17.7
12 – 17.7
22 – 22.4
Errors
(opt)
15
15
15
26
1. Неразделимые кластеры
Error Objects: 102, 107, 114, 115, 120, 122, 124, 127, 128, 134, 135, 139, 143, 147, 150
27
1. Неразделимые кластеры
Error Objects: 102, 107, 114, 115, 120, 122, 124, 127, 128, 134, 135, 139, 143, 147, 150
28
2. Разделимые кластеры
0
Errors = 3
  27 Errors = 0
Error Objects: 58, 94,99
29
Заключение
• Перестановочный беспризнаковый алгоритм
k-means обрабатывает квадратные матрицы
парных сравнений так же, как и беспризнаковый
алгоритм k-means
• Это позволяет при отсутствии признакового
пространства даже не вводить понятие среднего
объекта, т.к. его часто невозможно использовать
в явном виде
• Предложенные процедуры гарантируют
одинаковые результаты как при наличии
пространства признаков, так и без него
• Алгоритм k-means с 2ц.ф. позволяет улучшить
локальные свойства алгоритма k-means
30
Download