FCM算法研究(一)
来源:互联网 发布:js encodeuri 解码 编辑:程序博客网 时间:2024/06/03 05:07
- FCM算法来源
聚类方法是一种研究数据结构的推导工具,可用于无监督模式识别技术、数据挖掘技术等。一般将聚类分为层次聚类和划分聚类。层次聚类算法产生一个嵌套聚类的层次,算法最多包含N步,在第t步,执行的操作就是在前t-1步的聚类基础上生成新聚类。划分聚类是基于目标函数的一种聚类方法。另一方面,可以将聚类分成hard和fuzzy两种聚类类型。这两种聚类方式均是基于隶属度来描述的。隶属度的概念是从模糊集理论中引申出来的,简单的应用就是性别问题,一个人的性别只能是男(0)和女(1),没有介于0-1之间的第三种或者第几种性别。传统的硬聚类隶属度只有0和 1两个值,也就是说一个样本只能属于一个类。而模糊聚类的隶属度取值介于[0-1]。
模糊聚类可以分为3个分支:(a)基于模糊关系[1];(b)基于模糊规则学习[2];(c)基于目标函数最优。FCM 算法在1981年由Bezdek提出[3]。显然,FCM是属于基于目标函数最优的聚类方法。
2. 算法思想
假定数据集为X,如果把这些数据划分成c类的话,那么对应的就有c个类中心为C,每个样本j属于某一类i的隶属度为uij,那么定义一个FCM目标函数(1)及其约束条件(2)如下所示:
我们想要得到min{J(U,V)},
为了求有约束条件下目标函数的极值,我们得利用拉格朗日乘子法构造新的函数
其中 称为Lagrange乘子,
对F函数求极值得最优化条件如下:
极值条件式6解得必要条件如下:
那么,FCM算法流程为:
1.设定聚类数目c和参数m
2.给出初始隶属度矩阵U(0)
3.利用式8计算新的聚类中心Vj
4.利用式7计算新的隶属度矩阵
5.用一个矩阵范数比较两次迭代之间隶属度矩阵,如果‖U(k+1)-U(k)‖<=e 则停止迭代。
3. 算法实例
使用rand函数生成一个100*2的数据,利用FCM结果可得到
这里隶属度初始化是随机的,满足约束条件就ok,但是相对的会对结果有一定的影响。
4. 参考文献
[1] Guoyao, F.: Optimization methods for fuzzy clustering. Fuzzy Sets Syst. 93, 301–309 (1998)
[2] Ravi, V., Zimmermann, H.J.: Fuzzy rule based classification with feature selector and modified threshold accepting. Eur. J. Oper. Res. 123, 16–28 (2000)
[3] Bezdek, J.C.: Pattern Recognition with Fuzzy Objective Function Algorithms. Plenum Press,New York (1981)
- FCM算法研究(一)
- FCM算法研究(二)--近五年改进文献汇总
- FCM算法
- FCM 算法
- 经典的FCM算法
- FCM聚类算法
- FCM压缩算法
- 聚类FCM算法
- FCM聚类算法
- FCM聚类算法(模糊C均值算法)
- 搜索引擎算法研究(一)
- KMP算法研究(一)
- 模糊C均值算法(FCM)分割图像MATLAB程序
- 模糊C均值聚类算法(FCM) --…
- Fcm算法初步学习探索
- fcm算法的MATLAB实现
- 字符串匹配算法研究(一)
- 算法研究(四) 一维模式识别
- Atom 编辑器基本配置
- 解决通过URL传值中文乱码问题
- yarn 调度器 resourcemanager 的 Capacity Scheduler 部分配置说明
- 构建自己的Java Web框架(二)之一个Filter引发的血案
- 002——缺少commons-beanutils包
- FCM算法研究(一)
- c语言 实现按行读取文件。把内容按照第三种内存模型打包数据传出,把行数通过函数参数传出
- 下载资源
- 没有行动力的计划只会让你拖延
- 使用Flexible实现手淘H5页面的终端适配二
- 线性回归与特征归一化(feature scaling)
- PHP Cookies
- 基于Kinect-OpenNI-OpenCV-OpenGL的环境三维重构 windows vs2008 深度彩色图像
- alloc、init你弄懂50%了吗?