模糊C均值聚类(Fuzzy c-mean clustering)
模糊是指没有明确边界划分无法精确刻画的现象称为模糊。
对离散且有限的论域
其模糊集可表示为
其中 $F$ 称为隶属度函数
介绍及引入
我们所谓的kmeans聚类,也就是c均值聚类,可以称之为硬C均值聚类。
给定样本集 $D = {x{1},x{2},…,x{m}}$ ,k均值聚类算法针对聚类所得簇划分 $C = {C{1},C{2},…,C{k}}$ 最小化平方误差
其中
模糊概念的引入使得该聚类叫做软C均值聚类,允许每个样本属于一个或以上更多的聚类。可以设想,对于某个样本点,可构建到每个聚类的隶属度函数,设样本数为 $n$ ,聚类数为 $C$ ,则存在 $n*C$ 的隶属度矩阵,每个样本与聚类的硬距离乘对该聚类的隶属度总体求和保证最小,便是模糊C均值聚类所解决的问题。
原理
Fuzzy C-Means聚类所优化的目标函数如下:
$m$ 为大于1的任意实数。(至于 $m$ 具体作用也没有深入考虑 $TODO…$
针对上述目标函数优化,采用启发式迭代。
迭代停止条件可取隶属度矩阵变化值小于某 $\xi$ 时停止。
代码实现
1 | 见github主页 |