自动分组加速 K-Means 算法
1. 引言
K-means 是数据挖掘和机器学习领域中广为人知的聚类算法,凭借其简单性和适用性,在计算机视觉、市场细分、社交网络分析等众多领域得到广泛应用。标准的 K-means 算法包含两个步骤:分配步骤将每个点分配到其最近的聚类中;更新步骤在点分配完成后更新每个聚类的中心。然而,Lloyd 的 K-means 算法时间复杂度较高,其瓶颈在于通过计算每个点到每个中心的距离来确定每个输入点的最近中心,这会产生大量不必要的距离计算。
为了加速精确的 K-means 算法,相关研究主要集中在避免不必要的距离计算,同时确保在相同初始化条件下得到与标准 K-means 相同的聚类结果。此前加速 K-means 的工作可分为两类:
- 第一类算法通过保留 K-means 的近似解来加速,虽能提升速度,但无法保证最终聚类结果与 K-means 相同。
- 第二类算法则借助一些技术实现与 K-means 完全相同的结果,例如利用高效数据结构加速最近邻搜索,或使用三角形不等式维护距离边界以避免不必要的距离计算。
本文提出了一种名为 Fission-Fusion k-means 的新型加速精确 K-means 算法,该算法在迭代过程中自动对数据点进行分组,从而显著减少不必要的距离计算。与现有加速 K-means 算法相比,Fission-Fusion k-means 不仅速度更快,而且额外内存消耗更少。
2. 相关工作
近期使用三角形不等式加速 K-means 的算法可分为两类:
- 早期加速算法 :
- [7] 算法利用上下界减少冗余距离计
超级会员免费看
订阅专栏 解锁全文
2047

被折叠的 条评论
为什么被折叠?



