Двухкомпонентная функция качества кластеризации множества элементов, представленных парными сравнениями Двоенко С.Д. Тульский государственный университет ИОИ-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 kk 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