有人可以解释如何使用 Ward 的方法来初始化 k-means 吗?
Posted
技术标签:
【中文标题】有人可以解释如何使用 Ward 的方法来初始化 k-means 吗?【英文标题】:Can someone explain how to use Ward's method to initialize k-means? 【发布时间】:2018-03-24 14:19:32 【问题描述】:我了解使用 Ward 方法作为邻近度度量的 HAC(分层凝聚聚类)。但是一旦我这样做了,我该如何使用它来初始化 k-means?我是否只是在我已经计划用于 k-means 的预定 k 处抓取 k 个集群?或者层次聚类也帮助我选择k?
【问题讨论】:
你见过post和vignette吗? 【参考方案1】:正如http://www.stat.cmu.edu/~cshalizi/350/lectures/08/lecture-08.pdf 中所述,这很有意义:该技术包括用 Ward 确定 k,然后应用 k 均值“从 Ward 方法找到的聚类开始,从一个好的起点减少平方和”。
【讨论】:
【参考方案2】:显然,您也可以使用它来帮助您选择 k。
但是当您已经使用 HAC 时,我并没有真正看到使用 k-means 的意义。做k-means的主要原因是因为它通常很快,而HAC总是很慢。所以这对我来说似乎有点过头了。
【讨论】:
我也是这么想的。 K-means 是O(N*K*I)
,其中 K 是簇数,I 是决定“足够”之前的迭代次数。而 HAC 是立方 afaik(有更有效的 hac 版本吗?)以上是关于有人可以解释如何使用 Ward 的方法来初始化 k-means 吗?的主要内容,如果未能解决你的问题,请参考以下文章
有人可以向我解释一起使用的 Math.random() 和宽度/高度吗?
有人可以向我解释初始化 keras lstm 层中传递的激活参数和循环激活参数之间的区别吗?