Доведення конвергенції k-засобів


20

Для завдання мені було запропоновано надати доказ того, що k-засоби зближуються в обмеженій кількості кроків.

Ось що я написав:

C E ( C )

E(C)=xmini=1kxci2
E(C)

Крок 2 позначає крок, який позначає кожну точку даних її найближчим центром кластера, а крок 3 - це крок, на якому центри оновлюються за допомогою середнього значення.

Цього недостатньо, щоб довести конвергенцію в кінцевій кількості кроків. Енергія може зменшуватися, але це не виключає можливості центральних точок стрибати, не змінюючи енергії сильно. Іншими словами, може бути декілька мінімумів енергії, і алгоритм може стрибати між ними, ні?


5
Підказка: скільки можливих колекцій центральних точок може бути?
whuber

Відповіді:


35

По-перше, існує максимум способів розділити N точок даних на k кластери; кожен такий розділ можна назвати "кластеризацією". Це велике, але кінцеве число. Для кожної ітерації алгоритму ми виробляємо нову кластеризацію, засновану лише на старому кластеризації. Зауважте цекNNк

  1. якщо стара кластеризація є такою ж, як нова, то наступна кластеризація знову буде такою ж.
  2. Якщо нова кластеризація відрізняється від старої, то новіша має меншу вартість

11


Nк

{нк}{нк} кN

6

Щоб додати щось: зближення алгоритму чи ні також залежить від критерію зупинки. Якщо ви зупините алгоритм, як тільки призначення кластера більше не змінюються, ви можете фактично довести, що алгоритм не обов'язково збігається (за умови, що в призначенні кластера немає детермінованого вимикача зв'язку, якщо кілька центроїдів мають однакову відстань).

введіть тут опис зображення

Тут у вас є 8 точок даних (крапки) та два центроїди (червоні хрести). Тепер точки зелених даних мають однакову відстань як до лівого, так і до правого центру. Те саме стосується синіх точок даних. Припустимо, що функція призначення не є детермінованою в цьому випадку. Далі ми припускаємо, що при ітерації 1 зелені точки присвоюються лівому кластеру, а сині - присвоюються правому кластеру. Потім ми оновлюємо центроїди. Виявляється, вони насправді залишаються на одному місці. (це простий підрахунок. Для лівого центрального центру ви оцінюєте координати двох лівих чорних крапок і двох зелених точок -> (0, 0,5). Те ж саме для правого центру).

Потім на ітерації 2 ситуація виглядає знову такою ж, але тепер ми припускаємо, що наша (у випадку зв’язків) недетермінована функція присвоєння призначає зелені точки правому кластеру, а сині точки - лівому кластеру. Знову центроїди не зміняться.

Ітерація 3 знову така ж, як ітерація 1. Таким чином, у нас є випадок, коли призначення кластерів постійно змінюються і алгоритм (з цим критерієм зупинки) не зближується.

<

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.