В чем разница между "означает" и "нечеткие означает" целевые функции? - PullRequest
28 голосов
/ 27 февраля 2010

Я пытаюсь понять, можно ли сравнить производительность обоих на основе целевых функций, над которыми они работают?

Ответы [ 4 ]

25 голосов
/ 27 февраля 2010

Кстати, алгоритм кластеризации Fuzzy-C-Means (FCM) также известен как Soft K-Means .

Целевые функции практически идентичны , единственное отличие заключается во введении вектора, который выражает процент принадлежности данной точки к каждому из кластеров. Этот вектор представлен показателю «жесткости», целью которого является придание большего значения более сильным связям (и наоборот, минимизация веса более слабых); кстати, когда коэффициент жесткости стремится к бесконечности, результирующий вектор становится двоичной матрицей, что делает модель FCM идентичной модели K-средних.

Я думаю, что за исключением некоторой возможной проблемы с кластерами, которым не назначены точки, можно эмулировать алгоритм K-средних с алгоритмом FCM, моделируя бесконечный коэффициент жесткости (= путем введения функция, которая изменяет наибольшее значение в векторе на 1 и обнуляет другие значения вместо возведения в степень вектора). Это, конечно, очень неэффективный способ запуска K-средних, потому что алгоритм должен выполнить столько же операций, сколько и с истинным FCM (если только со значениями 1 и 0, что упрощает арифметику, но не сложность)

Что касается производительности , то FCM, следовательно, должен выполнить k (то есть количество кластеров) умножений для каждой точки для каждого измерения (не считая также возведения в степень для учета жесткости). Это, плюс накладные расходы, необходимые для вычисления и управления вектором близости, объясняет, почему FCM работает намного медленнее, чем обычные K-средние.

Но FCM / Soft-K-Means менее «глупы», чем Hard-K-Means, когда речь идет, например, о вытянутых кластерах (когда точки, в других отношениях совместимые в других измерениях, имеют тенденцию рассеиваться вдоль определенного измерения или двух), и вот почему это все еще вокруг; -)

Из моего оригинального ответа:

Кроме того, я только что подумал об этом, но не придумал никакой «математической» мысли, что FCM может сходиться быстрее, чем жесткие K-средние, что несколько компенсирует большие вычислительные требования FCM.

Май 2018 г. отредактировано:

На самом деле нет авторитетного исследования, которое бы я мог определить, которое бы поддержало мою догадку о более высокой скорости сходимости FCM. Спасибо Бенджамин Хорн , чтобы сохранить меня честным; -)

17 голосов
/ 27 февраля 2010

Кластеризация K-средних и Кластеризация нечетких средств очень похожи в подходах. Основное отличие состоит в том, что в кластеризации Fuzzy-C Means каждая точка имеет вес, связанный с конкретным кластером, поэтому точка не находится «в кластере», а имеет слабую или сильную связь с кластером, определяется обратным расстоянием до центра скопления.

Средство Fuzzy-C будет работать медленнее, чем средство K, поскольку на самом деле оно выполняет больше работы. Каждая точка оценивается с каждым кластером, и в каждой оценке участвует больше операций. K-Means просто нужно вычислить расстояние, в то время как нечеткое c означает, что нужно выполнить полное обратное взвешивание.

2 голосов
/ 31 марта 2019

C-означает нечеткое, но k-означает сложное (не нечеткое), каждая точка принадлежит центроиду в K-средних, но в нечетком c-означает, что каждая точка может принадлежать двум центроидам, но с разным качеством ,

enter image description here

каждая точка является частью первых центроидов или вторых центроидов. Но в C-средних одна точка может быть частью первых центроидов (90%) и вторых центроидов (10%). Например, студент потерпел неудачу или прошло, если у нее / у него 49. это как-то прошло, и реальность не удалась, на этот раз мы назвали нечетким.

1 голос
/ 29 июля 2016

человек написал технически, и каждый ответ хорошо написан. Но то, что я хочу сказать, то же самое на языке неспециалистов. K означает кластеризацию кластера всего набора данных в число K кластера, где данные должны принадлежать только одному кластеру. Нечеткие c-средства создают k чисел кластеров, а затем присваивают каждую информацию каждому кластеру, но они будут фактором, который будет определять, насколько сильно данные принадлежат этому кластеру.

...