Метод нечёткой кластеризации C-средних
Метод нечёткой кластеризации C-средних (англ. fuzzy clustering, soft k-means, c-means) позволяет разбить имеющееся множество элементов мощностью на заданное число нечётких множеств . Метод нечеткой кластеризации C-средних можно рассматривать как усовершенствованный метод k-средних, при котором для каждого элемента из рассматриваемого множества рассчитывается степень его принадлежности (англ. responsibility) каждому из кластеров.
Алгоритм был разработан J.C. Dunn в 1973[1] и улучшен J.C. Bezdek в 1981[2].
Алгоритм:
- Задать случайным образом центров кластеров ;
- Рассчитать матрицу принадлежности элементов к кластерам . В случае нормального распределения: , где — -й элемент множества, — центр кластера , — расстояние между точками и , — плотность вероятности нормального распределения в точке .
- Переместить центры кластеров ;
- Рассчитать функцию потерь (например, исходя из принципа максимального правдоподобия). В случае нормального распределения функция потерь будет равна: ;
- Если значение функции потерь уменьшается, то повторить цикл с п.2.
Метод нечеткой кластеризации C-средних имеет ограниченное применение из-за существенного недостатка — невозможность корректного разбиения на кластеры, в случае когда кластеры имеют различную дисперсию по различным размерностям (осям) элементов (например, кластер имеет форму эллипса). Данный недостаток устранен в алгоритмах Mixture models и GMM (Gaussian mixture models).
Ссылки
- Dunn J.C. A Fuzzy Relative of the ISODATA Process and Its Use in Detecting Compact Well-Separated Clusters // Journal of Cybernetics. — 1973. — 17 сентября (т. 3, № 3). — С. 32–57. — ISSN 0022-0280. — doi:10.1080/01969727308546046.
- Bezdek, James C. Pattern Recognition with Fuzzy Objective Function Algorithms. — 1981. — ISBN 0-306-40671-3.