模糊C―均值聚类问题描述成求目标函数极小值优化问题,即满足约束条件式(3)和式(4)前提下,求式(2)极小值。用拉格朗日法求解可得到 为最小值时 、 值分别为式(5)和(6):
使用迭代法求解就是FCM算法。
FCM是反复修改聚类中心和分类矩阵的,其流程图如图2所示,从图中可看出,FCM实现过程有以下四个主要步骤:
(1) 初始化。取模糊加权数m=2,聚类的类别值c(2 c n),n为数据样本点个数,迭代停止阈值 ,初始的聚类中心值 ,以及迭代次数l=0。
(2) 计算由隶属函数值所组成的划分矩阵 。对任意的i,j,如果 >0,则
(7)
对于任意i,r,如果 ,则 ,当k r时,
(3) 更新聚类中心,令
(8)
(4) 若 < ,则算法停止,否则令l=l+1,并转到步骤2。
2.2.3 模糊C―均值聚类算法缺点
首先,模糊聚类是无监督的一种分类,但FCM需人为设定分类数C而不能自动得到最佳分类数。因此破坏聚类的无监督性。其次,由于模糊聚类目标函数是非凸的,FCM又是迭代爬山,因此FCM对初始值设置敏感,设置不好就易陷入局部最优。
FCM本质属局部搜索爬山法,对聚类中心初始化较敏感。“研究表明,FCM强烈依赖参数初始化优劣,该算法本身有两个致命缺点:第一,模糊聚类目标函数是个非凸函数,有大量局部极值点,若不当会导致算法收敛到局部极值点,将
图2 FCM算法流程图
得不出数据集模糊最优划分;第二,大数据量时耗时严重,制约其应用[29,30]。”
针对FCM算法以上的不足[29,30],本文以前人的成果为基础对FCM算法进行适当的改进,并且将通过在信息处理中的运用来进行实验仿真分析测试。
3. FCM 算法的改进
3.1 减法聚类与FCM的合成聚类分析
减法聚类[31]是“一种用来估计一组数据中聚类数及聚类中心位置的快速算法。该算法将每个数据点作为可能聚类中心,并依据各个数据点周围数据点密度,计算该点作为聚类中心可能性。被选为聚类中心数据点周围有最高数据点密度,同时排除该数据点附近数据点作为聚类中心可能性。选出第一个聚类中心后,从剩余可能为聚类中心数据点中,继续采用相似的方法选择下个聚类中心。该过程一直持续到所有剩余数据点为聚类中心的可能。小于某一阈值时,由减法聚类得到的聚类估计可用于初始化那些基于重复优化过程的模糊聚类。”
用减法聚类获取初始聚类中心,再用得到的初始化聚类中心进行FCM聚类。这样不仅可避免FCM算法陷入局部最优解;还可以根据每个数据点的每一文对聚类中心的影响确定较好的聚类个数,避免先前只通过有效性函数确定最优分类数C的方法。因此,减法聚类与FCM相结合的聚类方法在理论上有较好的聚类性能。
本文所采用改进后的FCM算法是种基于减法聚类算法的FCM算法[27]。利用减法聚类得到聚类数目和聚类中心,作为FCM算法的起点来初始化FCM算法,不仅不需要预先设定分类数目,而且提高了算法效率。
3.2 减法聚类算法
减法聚类[29-31]将每个数据点作为可能的聚类中心,其计算量与数据点的个数相关,与数据点的空间文数无关。
令X={ , ,…, } 是样本点集,n是样本个数,减法聚类原理如下: 知识发现中的模糊聚类方法研究+FCM算法(6):http://www.youerw.com/zidonghua/lunwen_1832.html