为什么在kmeans聚类方法中使用kmeans.fit函数?

时间:2019-07-06 06:43:56

标签: machine-learning scikit-learn cluster-analysis

我正在从视频中使用kmeans聚类技术,但是我不明白为什么我们在kmeans聚类中使用.fit方法?

kmeans = KMeans(n_clusters=5, random_state=0)
kmeans.fit(X) //why we use this fit method here

2 个答案:

答案 0 :(得分:0)

因为斯克莱恩人很早就决定一切应该具有fit(X, y)predict(X)功能。由于向后兼容,它可能不会改变。

对于群集没有太大意义,它不使用y(由于忽略,默认为None)。而且,在实际的用例中,您都不希望使用聚类替换分类器。

尽管如此,您有时还是需要运行算法。在构造函数中执行此操作是一种反模式(因此KMeans(n_clusters=5, data=X)是禁止操作),因此您将必须调用某些方法。然后,您也可以将其称为fit,至少适合于基于优化的方法,例如k-means。

但是,您可以简单地使用方法k_means(X, n_clusters=5)而不是使用类。然后它将是一行(请参见fit的源代码作为示例)。

答案 1 :(得分:0)

公里数是您定义的模型。

训练我们的模型,我们在此处使用 kmeans.fit()

中的参数
  

kmeans.fit(参数)

是需要聚类的数据集。

使用

之后
  

fit()函数

我们的模型已经准备就绪。

并且我们使用

获得该集群的标签
  

data_labels = kmeans.labels _