Ответ 1
BTW, алгоритм кластеризации Fuzzy-C-Means (FCM) также известен как Soft K-средства.
Целевые функции практически идентичны, с той лишь разницей, что это введение вектора, который выражает процент принадлежности данной точки каждому из кластеров. Этот вектор представлен экспоненте "жесткости", направленной на то, чтобы придать большее значение более сильным связям (и, наоборот, минимизировать вес более слабых); случайно, когда коэффициент жесткости стремится к бесконечности, результирующий вектор становится двоичной матрицей, поэтому делает модель FCM идентичной модели К-сред.
Я думаю, что, за исключением некоторой возможной проблемы с кластерами, у которых нет назначенных им точек, можно эмулировать алгоритм K-Means с алгоритмом FCM, путем моделирования бесконечного коэффициента жесткости (= путем введения функция, которая меняет наибольшее значение в векторе на 1 и выравнивает остальные значения вместо экспоненциальности вектора). Это, конечно, очень неэффективный способ запуска K-Means, потому что тогда алгоритм должен выполнять столько операций, сколько с истинным FCM (если только с 1 и 0 значениями, что упрощает арифметику, но не сложность)
В отношении производительности, FCM, следовательно, необходимо выполнить умножение k (то есть количество кластеров) для каждой точки для каждого измерения (не считая также возведения в степень, чтобы учитывать жесткость). Это, плюс накладные расходы, необходимые для вычисления и управления вектором близости, объясняет, почему FCM работает довольно медленно, чем обычные K-средства.
Но FCM/Soft-K-Means менее "глупый", чем Hard-K-Means, когда он приходит, например, к удлиненным кластерам (когда точки, в противном случае согласованные в других измерениях, разбросаны по определенному размеру или два) и почему он все еще вокруг, -)
Кроме того, я просто подумал об этом, но не придал ему никакой "математической" мысли, FCM может сходиться быстрее, чем жесткий K-Means, что несколько компенсирует большее вычислительное требование FCM.