注意: 聚类数目要远远小于样本数目。
聚类算法的核心理解在于隶属度和聚类中心公式的理解,隶属度和聚类中心的计算相互包含,通过多次迭代,最终当目标函数达到某个值时,则认为聚类完成,或者达到迭代次数时,则认为聚类完成。
聚类算法的步骤:
(1)确定分类数,指数m的值,确定迭代次数(这是结束的条件,当然结束的条件可以有多种)。
(2)初始化一个隶属度U(注意条件—和为1)(某个样本属于所有类的隶属度之和为1);
(3)根据U计算聚类中心C;
(4)这个时候可以计算目标函数J了
(5)根据C返回去计算U,回到步骤3,一直循环直到结束。
聚类算法python代码实现:
(1)初始化隶属度矩阵
函数功能: 完成隶属度初始化,以此来计算类中心。
输入: 样本数目n,类别数目k
输出:初始化之后的隶属度矩阵
n:样本数目
k: 类别