对AP(Affinity Propagation)聚类算法的理解

这段时间因为工作需要,了解了一些聚类算法,发现目前国内的一些资料中对于AP(Affinity Propagation)聚类算法的描述和理解局限在列举公式,说明计算流程层面,没有去深入解读,为什么要这样设计公式,以及AP的核心思想。

首先简要介绍一下AP算法,跟其他聚类算法的不同之处是,AP在开始时,将所有节点都看成潜在的聚类中心,然后通过节点之间的通信,去找出最合适的聚类中心,并将其他节点划分到这些中心下去,所以我们可以认为,AP算法所要做的事情就是去发现这些聚类中心。

AP的输入是一个节点间的相似度矩阵,S,其中S(i,j)表示节点i和节点j之间的相似度,也表明了,j作为i的聚类中心的合适程度,这个相似度的计算可以根据具体应用场景,这里未免误导不作相似度的假设。其中S(k,k)表示节点k作为k的聚类中心的合适程度,可以理解为,节点k成为聚类中心合适度,在最开始时,这个值是初始化的时候使用者给定的值,会影响到最后聚类的数量。

AP中节点间传递的消息为两类:吸引度和归属度。

  • 10
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 16
    评论
AP(affinity propagation聚类也被称为近邻传播聚类,它是一种半监督聚类算法。与传统的聚类方法不同,AP聚类不需要事先设定聚类簇的个数,而是通过分析数据点之间的相似性来自动划分数据集。 AP聚类的核心思想是任意两个数据点之间的相似性传播。相似性可以通过计算数据点之间的相似度来衡量,相似度可以是一种度量或者一个简单的距离函数。AP聚类算法中的相似度矩阵表示每对数据点之间的相似性。 AP聚类的过程如下:首先,初始化数据点的选择集合,将其作为当前候选出的聚类中心。然后,通过迭代更新两个矩阵:归属度矩阵和候选出矩阵。归属度矩阵表示每个数据点归属于每个聚类中心的程度,而候选出矩阵表示每个数据点是否被选择为聚类中心的候选。 在每次迭代中,首先更新归属度矩阵。对于每个数据点,计算其与其他数据点的相似性,选择与其相似度最高的数据点作为其聚类中心,同时更新其他数据点对该聚类中心的归属度。接下来,更新候选出矩阵。对于每个数据点,计算其与其他数据点的归属度之和,如果该和大于一个阈值,则将其设置为聚类中心的候选。 通过反复迭代更新归属度矩阵和候选出矩阵,直到算法收敛为止。最终,聚类中心将作为数据点的标签,每个数据点将被划分到与其最相似的聚类中心。 AP聚类的优点是不需要预先设定聚类簇的个数,可以自动发现数据集中的聚类结构。然而,由于其计算和存储相似性矩阵的复杂性,AP聚类对于大规模数据集的处理效率较低。同时,由于其依赖于阈值的选择,AP聚类的结果对于参数的选择较为敏感。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值