1. 问题描述

在用KMeans算法训练数据的时候,报错如下:

2. 解决途径

经过各种途径的查询,有些回答建议尝试对sklearn、numpy修改版本。经过验证,sklearn与numpy版本与建议者所要修改的版本一致,故没有采纳。

经过自己的仔细观察,因为在使用KMeans算法训练数据代码之前,只有一行代码,那就是

clf = KMeans(n_clusters=3,max_iter=10,n_init=10,init="k-means++",
             algorithm="full",tol=1e-4,random_state=1)

故尝试修改KMeans初始化函数参数。

3. 解决办法

将KMeans的algorithm="full"时,报错。

将KMeans的algorithm="elkan"时(经过查看源码,algorithm的取值只有三个,分别为full、elkan、auto。),没有报错

algorithm : {"auto", "full", "elkan"}, default="auto"

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐