AFFINITY PROPAGATION相似传播聚类
来源:互联网 发布:ly51s单片机开发板 编辑:程序博客网 时间:2024/05/20 22:40
AP算法不需要事先指定聚类数目,相反它将所有的数据点都作为潜在的聚类中心,称之为exemplar。
这个聚类算法,基础是置信传播,在邻近节点之间传播massage.
message分成两种,一类是responsibilities,代表从 exemplar 接纳数据点的能力,另外一类是availabilities,。
以S矩阵的对角线上的数值s (k, k)作为k点能否成为聚类中心的评判标准,这意味着该值越大,这个点成为聚类中心的可能性也就越大,这个值又称作参考度p ( preference) 。聚类的数量受到参考度p的影响,如果认为每个数据点都有可能作为聚类中心,那么p就应取相同的值。如果取输入的相似度的均值作为p的值,得到聚类数量是中等的。如果取最小值,得到类数较少的聚类。AP算法中传递两种类型的消息, (responsiility)和(availability) 。r(i,k)表示从点i发送到候选聚类中心k的数值消息,反映k点是否适合作为i点的聚类中心。a(i,k)则从候选聚类中心k发送到i的数值消息,反映i点是否选择k作为其聚类中心。r (i, k)与a (i, k)越强,则k点作为聚类中心的可能性就越大,并且i点隶属于以k点为聚类中心的聚类的可能性也越大。AP算法通过迭代过程不断更新每一个点的吸引度和归属度值,直到产生m个高质量的exemplar,同时将其余的数据点分配到相应的聚类中。
在这里介绍几个文中常出现的名词:
exemplar:指的是聚类中心。
similarity:数据点i和点j的相似度记为S(i,j)。是指点j作为点i的聚类中心的相似度。一般使用欧氏距离来计算,如-|| ||。文中,所有点与点的相似度值全部取为负值。因为我们可以看到,相似度值越大说明点与点的距离越近,便于后面的比较计算。
preference:数据点i的参考度称为P(i)或S(i,i)。是指点i作为聚类中心的参考度。一般取S相似度值的中值。
Responsibility:R(i,k)用来描述点k适合作为数据点i的聚类中心的程度。
Availability:A(i,k)用来描述点i选择点k作为其聚类中心的适合程度。
图3. 数据点之间传递消息示意图
下面是R与A的计算公式:
R(i,k)=S(i,k)-max{A(i,j)+S(i,j)}(j{1,2,……,N,但j≠k}) (2)
A(i,k)=min{0,R(k,k)+ (j{1,2,……,N,但j≠i且j≠k}) (3)
R(k,k)=P(k)-max{A(k,j)+S(k,j)} (j{1,2,……,N,但j≠k}) (4)
由上面的公式可以看出,当P(k)较大使得R(k, k)较大时, A(i, k) 也较大, 从而类代表k作为最终聚类中心的可能性较大; 同样, 当越多的P(i)较大时, 越多的类代表倾向于成为最终的聚类中心。 因此, 增大或减小P可以增加或减少AP输出的聚类数目。
- AFFINITY PROPAGATION相似传播聚类
- python 实现 AP近邻传播聚类算法(Affinity Propagation)
- python 实现 AP近邻传播聚类算法(Affinity Propagation)
- 聚类系列-Affinity Propagation
- affinity propagation 近邻传播算法
- Affinity propagation 近邻传播算法
- ap(affinity propagation)聚类算法
- 聚类算法Affinity Propagation(AP)
- Affinity Propagation: AP聚类算法
- 吸引子传播(Affinity Propagation)算法
- 聚类算法实践——PCCA、SOM、Affinity Propagation
- Affinity Propagation (AP) 聚类算法的Java实现
- 对AP(Affinity Propagation)聚类算法的理解
- 对AP(Affinity Propagation)聚类算法的理解
- Affinity Propagation
- 聚类算法实践(3)——PCCA、SOM、Affinity Propagation
- 聚类算法(3)——PCCA、SOM、Affinity Propagation
- 聚类算法实践(三)——PCCA、SOM、Affinity Propagation
- Hibernate一对多,多对一,多对多,一对一关系汇总
- svn: No repository found in ‘仓库地址’ 问题解决
- unity3D:Unity中的优化技术
- 伪分布式安装Hadoop
- Android 使用WebView
- AFFINITY PROPAGATION相似传播聚类
- 一些Linux世界的术语
- linux ACL权限控制
- 管理员同志,回收站博文希望得到恢复,万分感谢
- 矩阵快速幂专题(一)
- 【POJ 1691】 Painting A Board(dfs)
- 自己动手封装VxWorks下C++基础库
- rails中如何在a标签中添加其他标签
- (七)ExtJs之表单[Ext.form.FormPanel]的使用