Approximate k-means++ in sublinear time  (简称K-MC2,2016)

K-Means聚类算法的目标是找到一个由k个聚类中心构成的集合,使得所有样本点到距其最近的聚类中心之间的距离之和最小。为避免引起歧义,这里解释一下,目标函数中距离的个数等于样本点的个数,并且每个距离都是该样本点到距其最近的聚类中心的距离。

K-Means聚类算法对初始聚类中心非常敏感,比较经典的解决方案是通过k-means++来获得初始的聚类中心集合。k-means++初始化聚类中心采用了一种自适应采样策略,首先,从样本集合中以均匀分布的方式随机选取一个聚类中心,然后,每次迭代过程中,基于概率选择一个新的聚类中心,这里的概率跟该聚类中心到已选聚类中心的距离成正比。然而, k-means++需要k个完整通道,复杂度是O(nkd),其中 n 是样本点的个数, k 是聚类中心的个数, d是样本点的维数,这就对将其用于大规模数据集造成了限制。瑞士苏黎世联邦理工大学的学者(Bachem, O. et al. 2016)为了解决这个问题,提出了一种简单高效的初始化k-means聚类的算法。其主要思想是将k-means++中的采样方法替换为一种基于马尔科夫链蒙特卡洛采样方法的更快速的近似方法。作者给出了证明,对数据集的自然假设成立的前提下,提出的算法不仅延续了k-means++的理论依据,而且计算复杂度是样本点的亚线性函数。

 

算法伪代码如下:

0?wx_fmt=png

 

实验数据集如下:

USGS (United States Geological Survey, 2010),

CSN (Faulkner et al., 2011),

KDD (KDD Cup, 2004),

BIGX (Ackermann et al., 2012),

WEB (Yahoo! Labs, 2008) and

SONG (Bertin-Mahieux et al.,2011). 

0?wx_fmt=png

 

其中的α和β以及相关符号的具体表示如下:

0?wx_fmt=png

0?wx_fmt=png

 

0?wx_fmt=png

图一中m是马尔科夫链的长度。k-means||是k-means++的一种并行实现。

 

0?wx_fmt=png

 

考文献参

Approximate k-means++ in sublinear time  (简称K-MC22016

https://pdfs.semanticscholar.org/04da/6a559dd3a74a5c25f8f84f9f962ec890151f.pdf

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值