一、基本概念
AP聚类一般翻译为近邻传播聚类,2007年被提出,核心思想是:通过在不同点之间不断的传递信息,从而最终选出聚类中心,完成聚类。
其优点有:
- 不需要制定最终聚类族的个数
2. 已有的数据点作为最终的聚类中心,而不是新生成一个族中心。
3. 模型对数据的初始值不敏感。
4. 对初始相似度矩阵数据的对称性没有要求。
5. 相比与k-centers聚类方法,其结果的平方差误差较小。
在聚类的过程中有两种不同的信息进行交换,每一种信息代表一种竞争。
二、参数解释
1.s(i,k)
点i和点k之间的相似性,表示点k适合作为点i的聚类中心的程度,越大表示越适合。
2.s(k,k)
称为参考度(Preference),是相似度矩阵中横轴和纵轴坐标相同的点,如:s(k,k),表示的是点k作为聚类中心的可能程度。最终的类别数目受初始参考度(Preference)的影响:通常是参考度越大则最终的聚类中心的数目越多。
如果迭代开始之前所有点成为聚类中心的可能性相同,那么应该将参考度设定为一个公共值:相似度矩阵的平均值或者相似度矩阵的最小值。
3.r(i,k)
称为吸引度,从点i发送至候选聚类中心点k。反映了在考虑其他潜在聚类中心后,点k适合作为点i的聚类中心的程度。
4.a(i,k)
称为归属度,从候选聚类中心点k发送至点i。反映了在考虑其他点对点k成为聚类中心的支持后,点i选择点k作为聚类中心的合适程度。
三、公式计算
算法开始时,所有归属度(availability)都被初始化为0。
1.r(i,k)计算
该式说明任意一个候选聚类中心都可以对其他候选聚类中心产生影响,允许所有的候选聚类中心参与到争夺点的归属权中。
2.a(i,k)计算
a(i,k)等于自我吸引度(
如果
3.a(k,k)计算
自我归属度a(k,k)等于从其他点获得的积极吸引度之和。
四、算法流程
1.在给定归属度的条件下,更新相似度矩阵中的每个点的吸引度信息
2.在给定吸引度的条件下,更新每个点的归属度信息
3.对每个点的吸引度信息和归属度信息进行求和,进行决策;判断迭代是否停止
如果达到预设的迭代次数,或者聚类中心不再变化、或者在一个子区域内对样本点的决策经过数次迭代之后不再改变,迭代就可以终止。
在任意时刻我们都可以将吸引度和归属度相加,获得聚类中心。对于点i来说,假定使得
-
,那么点i就是聚类中心
-
,那么点i属于聚类中心k'
在算法实现的过程中,需要使用阻尼系数(damping factor)来衰减吸引度信息和归属都信息,以免在更新的过程中出现数值振荡。
五、参考文献
1.Affinity Propagation: AP聚类算法
2.《Clustering by Passing Messages Between Data Points》
3.AP算法中两个参数的交替过程怎么样通俗的理解?