K-means 与在线 K-means

数据挖掘 聚类 算法 k-均值
2021-09-22 01:16:27

K-means是一种众所周知的聚类算法,但也有这种算法的在线变体(在线 K-means)。这些方法的优缺点是什么,什么时候应该首选它们?

2个回答

在线 k-means(通常称为顺序 k-means)和传统 k-means 非常相似。不同之处在于在线 k-means 允许您在收到新数据时更新模型。

当您希望一个接一个地接收数据(或者可能以块的形式)时,应该使用在线 k-means。这允许您在获得更多信息时更新您的模型。这种方法的缺点是它依赖于接收数据的顺序(ref)。

最初的 MacQueen k-means 出版物(第一个使用名称“kmeans”)是一种在线算法。

麦昆,JB (1967)。“多变量观察的分类和分析的一些方法”。5th Berkeley Symposium on Mathematical Statistics and Probability 1. 加州大学出版社。第 281–297 页

在分配每个点之后,使用简单的加权平均公式递增地更新平均值(旧平均值用 n 加权,如果平均值之前有 n 个观察值,则新观察值用 1 加权)。

据我所知,它也只是对数据的一次传递,尽管它可以重复多次以重新分配点直到收敛。

如果您的数据被打乱,MacQueen 通常比 Lloyds 需要更少的迭代来收敛(因为它更快地更新平均值!)。在有序数据上,它可能会出现问题。不利的一面是,它需要对每个对象进行更多计算,因此每次迭代花费的时间稍长(显然是额外的数学运算)。