Mean Shift

论文学习--Real-Time Tracking of Non-Rigid Objects using Mean Shift

Mean Shift

Mean Shift是一种聚类算法,有些类似于回归中的梯度下降法,是通过一步步的迭代来实现最大密度的定位。

一、基本形式

给定d维空间的n个数据点集X,那么对于空间中的任意点x的Mean Shift向量基本形式可以表示为:
在这里插入图片描述
这个向量即被成为“漂移向量”,其中Sk表示一个高维球(因为数据X为d维),x表示该球的球心,xi表示数据集中的数据。该向量即表示球内所有起点为球心,终点为各个数据的向量均值。漂移即指更新球心位置。
在这里插入图片描述
总结为一句话就是:求解一个向量,使得圆心一直往数据集密度最大的方向移动。说的再简单一点,就是每次迭代的时候,都是找到圆里面点的平均位置作为新的圆心位置。

二、加入核函数后的Mean Shift

简单点说就是加入一个高斯权重(使用高斯核函数),最后的漂移向量公式为:
在这里插入图片描述
因此每次更新的圆心坐标为:

在这里插入图片描述

三、Mean Shift实现聚类的流程

假设在一个多维空间中有很多数据点需要进行聚类,Mean Shift的过程如下:
1、在未被标记的数据点中随机选择一个点作为中心点center
2、找出距离center点在bandwidth内的所有点,记为集合M,认为这些点属于簇c。同时把球内点属于这个类的概率加一。
3、以center为中心点,计算向量shift,并进行center的移动(即center=center+shift)。
4、重复2、3步骤,知道shift的值很小(即达到收敛),得到此时的center。在该迭代过程中所有的点都归类与簇c。
5、如果收敛时当前簇c的center和其他已经存在的簇的center的距离小于阈值,那么把两个簇合并,否则就把簇c当作新的聚类,增加一类。
6、重复以上步骤直到所有点都被标记访问。
7、分类:根据每个类对每个点的访问频率,取访问频率最大的那个类作为当前簇的所属类。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值