关于online KMeans步骤中成员更新分类的问题?

  统计/机器学习 无监督学习    浏览次数:900        分享
0

我之前问了K-Means实现mini-batch online learning的原理是什么?

我对其中一个步骤还是有一些疑问

第13步是更新聚类的中心点。但是如果中心点坐标更新之后,它不再是这个聚类中原来一些成员的最近中心了,那么是否应该剔除掉这些成员,然后重新计算中心点。因为那些成员会被分配到其他聚类,是否也要重新计算所有聚类的中心点?

 

lllinnn   2018-10-22 04:26



   1个回答 
3

不需要剔除cluster里的成员,也不需要计算每个点新的cluster label。只有在第7步里计算当前batch里点的临时culster label$d[x]$,在第10步里用完$d[x]$后就不会再用,真正全局都记录和更新的信息是中心点$c$和每个cluster的点数$v$。

SofaSofa数据科学社区DS面试题库 DS面经

Zealing   2018-10-23 23:34

如果不对过去的点进行更新的话,和传统的kmeans应该不完全等价 - sasa   2018-10-24 01:38
对,和传统kmeans不等价。而且传统kmeans本来就没有唯一最优解,不同起始的中心点就有不同的解。这算法相当于对原数据resample,并使用类似sgd的更新策略。 我认为kmeans最主要特点是把点与集合的距离简化为点与中心点距离;其余比如数据输入顺序,如何更新label等,都是算法细节。 - Zealing   2018-10-24 02:48
谢谢!明白了,感觉online kmeans这个名字也有点名不符实啊,哈哈 - lllinnn   2018-10-24 09:06


  相关主题

通俗地解释c-means以及fuzzy c-means是什么意思   1回答

进行K-Means聚类前,需要对数据做怎样的预处理?   1回答

关于小批量K均值(mini-batch K Means)的问题   3回答

如何用K Means做异常检测(outlier anomaly detection)?   3回答

K-means怎么选K?   6回答

K-Means实现mini-batch online learning的原理是什么?   1回答

二分法K Means的算法是什么?和普通的K Means有什么区别?   2回答

KMeans++是怎么选初始点的?   1回答

K means对数据的分布有要求吗?需要符合哪些前提假设?   4回答

为什么K Means算法对样本的输入顺序比较敏感?   2回答

K Means初始点必须是样本中的点吗   2回答

K-MEANS初始点选择的问题   2回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!