【发布时间】:2014-01-06 19:23:52
【问题描述】:
我是机器学习的新手,想知道 scipy 中的 kmeans 和 kmeans2 之间的区别。根据文档他们都使用'k-means'算法,但是如何选择它们呢?
【问题讨论】:
标签: python machine-learning scipy k-means
我是机器学习的新手,想知道 scipy 中的 kmeans 和 kmeans2 之间的区别。根据文档他们都使用'k-means'算法,但是如何选择它们呢?
【问题讨论】:
标签: python machine-learning scipy k-means
根据文档,kmeans2 似乎是标准的 k-means 算法,并且会一直运行直到收敛到局部最优 - 并允许您更改种子初始化。
kmeans 函数将由于缺乏变化而提前终止,因此它甚至可能无法达到局部最优。此外,它的目标是生成将特征向量映射到的码本。码本本身不一定是从停止点生成的,而是会使用具有最低“失真”的迭代来生成码本。此方法还将多次运行 kmeans。该文档进入更多细节。
如果您只想将 k-means 作为算法运行,请选择 kmeans2。如果您只想要一个密码本,请选择 kmeans。
【讨论】: