R语言模糊C平均聚类算法,R语言 模糊C均值(FCM)聚类分析

本文详细介绍了R语言中模糊C平均(FCM)聚类算法的工作原理,包括其与K-means的区别、参数选择、算法步骤及其实现代码。FCM允许数据点具有多重归属,通过迭代最小化价值函数来确定最优聚类。文章还提到了R语言中实现FCM的e1071和ppclust包,并提供了可视化聚类结果的方法。此外,讨论了如何选择合适的C值和模糊参数m,并给出了一种根据数据集特性确定m的方法。
摘要由CSDN通过智能技术生成

FCM(Fuzzy C-Means)算法是一个模糊聚类算法,是对早期硬K-means聚类的一种改性,克服了硬聚类的非此即彼的分类缺点。

FCM属于软聚类,它允许一个数据点可以属于多个类,FCM的价值函数跟K-means非常相似,但其引入了隶属度的概念,使得每个数据点用值在[0,1]的隶属度来确定其属于各个组的程度,其结果是每个数据点对聚类中心的隶属程度(membership),取值在0-1之间,并进行归一化使得总和等于1;因此FCM的思想是使得被划分到同一组下的数据点之间相似性最大,而不同组之间的相似度最小

FCM的C跟K-means的K是相同的概念,是指聚类的数目,Fuzzy是指一个事件的发生程度(模糊相似关系),因此FCM算法需要两个参数:聚类数目C和模糊参数m。一般来说,C要远远小于聚类样本(蛋白/基因)数目,并保证至少大于1;而m(fuzzifier值)是控制算法柔性的参数,用于定义整个数据集的模糊度,一般默认是2,接近于1的话会导致结果接近于K-means聚类,因此不同的C和m会导致聚类结果的不同

FCM聚类算法主要涉及隶属度(隶属矩阵u)、聚类中心v(距离)以及模糊参数m等参数,即在满足隶属度约束条件下,通过迭代计算价值函数的最小值;求约束条件的求极值问题,使用拉格朗日乘子法来构建拉格朗日函数,具体公式推导可看 FCM(Fuzzy C-Means)模糊C聚类 ,算法大致步骤如下:

初始化隶属矩阵(满足价值函数的约束条件),计算聚类中心;或者初始化聚类中心

迭代计算价值函数,当其小于某个极小值或者前后两次的差值小于某个极小值,则停止

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值