[机器学习]Fuzzy C-Means算法原理解析

模糊C-Means(FCM)算法是一种引入模糊概念的聚类算法,相较于K-Means,它通过隶属度来表示样本属于某个簇的程度。算法包括初始化隶属度矩阵、计算聚类中心、计算目标函数值以及更新隶属度矩阵等步骤。FCM算法的模糊度参数β决定了隶属度的模糊程度,当β趋近于1时,FCM退化为K-Means算法。
摘要由CSDN通过智能技术生成

1、概述

模糊C均值(Fuzzy C-Means、FCM)算法本质上是一个以距离作为衡量标准的聚类算法, 但是与传统的K均值(K-Means)算法相比,FCM算法引入了模糊的概念,此时就没有明确指出样本属于某一个簇,而是通过隶属度来表示样本属于某一个簇的程度。

2、FCM算法的一般步骤

本文以 x i , i = 1 , 2 , . . . , n x_i,i=1,2,...,n xi,i=1,2,...,n为样本,使用FCM算法聚为 e e e个簇。

1)初始化隶属度矩阵

首先使用(0,1)范围内的随机值初始化隶属度矩阵,且要满足约束条件 ∑ j = 1 e u i j = 1 , ∀ i ∈ [ 1 , 2 , . . . , n ] , \sum_{j=1}^{e}u_{ij}=1,\forall i \in [1,2,...,n], j=1euij=1,i[1,2,...,n],其中 u i j u_{ij} uij代表第 i i i个样本 x i x_i xi属于第 j j j个簇的程度。

2)计算聚类中心

使用如下公式计算聚类的中心 c j = ∑ i = 1 n u i j β x i ∑ i = 1 n u i j β , c_j=\frac{\sum_{i=1}^{n}u_{ij}^\beta x_i}{\sum_{i=1}^{n}u_{ij}^\beta}, cj=i=1nuijβi=1nuijβxi,其中 β ( β > 1 ) \beta(\beta>1) β(β>1)表示模糊度。

3)计算目标函数值

使用如下公式计算目标函

好的,关于k-means、EM、fuzzy c-means算法的异同如下: 1. 目的不同 - k-means算法的目的是将一组数据划分成k个簇,使得同一簇内的数据相似度高,不同簇之间的数据相似度低; - EM算法的目的是估计一个概率模型的参数,其中有些观测变量是缺失的; - fuzzy c-means算法的目的也是将一组数据划分成k个簇,但每个数据点可以属于不同的簇以不同的概率。 2. 算法思想不同 - k-means算法是基于距离的聚类算法,通过计算每个数据点到簇中心的距离来进行聚类; - EM算法是基于概率的算法,通过估计概率密度函数的参数来进行聚类; - fuzzy c-means算法也是基于概率的算法,但与EM算法不同的是,它引入了隶属度的概念,即每个数据点都分别属于各个簇,且属于每个簇的概率是由一个隶属矩阵表示的。 3. 簇的特征不同 - k-means算法中的簇是由其簇中心代表的,即所有数据点到该簇中心的距离最小; - EM算法中的簇是概率模型中的分布簇,由概率分布的参数代表; - fuzzy c-means算法中的簇则由簇中心和隶属矩阵共同决定,即每个簇都有一个簇中心和每个数据点对于该簇的隶属度,而不是只有一些数据点被分配到簇中。 4. 算法求解不同 - k-means算法通过迭代优化簇中心来达到最小化目标函数的目的; - EM算法通过迭代优化概率分布的参数来达到最大化似然函数的目的; - fuzzy c-means算法通过迭代优化簇中心和隶属矩阵来达到最小化目标函数的目的。 以上是k-means、EM、fuzzy c-means算法的主要异同,它们各自有不同的应用场景和优缺点,在具体问题中需要选择合适的算法进行聚类分析。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值