Machine learning 为什么在kmeans聚类方法中使用kmeans.fit函数?
我在视频中使用kmeans聚类技术,但我不明白为什么我们在kmeans聚类中使用.fit方法Machine learning 为什么在kmeans聚类方法中使用kmeans.fit函数?,machine-learning,scikit-learn,cluster-analysis,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 因为sklearn的人很早就决定所有东西都应该有fit(X,y)和predict(X)功能。而且它很可能不会改变,因为向后兼容 它对集群没有太大意义,因为集群不使用y(默认为None,因为它被忽略)。而且,也没有真正
kmeans = KMeans(n_clusters=5, random_state=0)
kmeans.fit(X) //why we use this fit method here
因为sklearn的人很早就决定所有东西都应该有
fit(X,y)
和predict(X)
功能。而且它很可能不会改变,因为向后兼容
它对集群没有太大意义,因为集群不使用y
(默认为None
,因为它被忽略)。而且,也没有真正的用例需要使用集群替换分类器
尽管如此,您还是需要在某个时候运行该算法。在构造函数中执行此操作是一种反模式(因此KMeans(n_clusters=5,data=X)
是一个no-no),因此您必须调用一些方法。您不妨将其称为fit
then,这至少适用于基于优化的方法,如k-means
但是,您可以简单地使用方法
k_means(X,n_clusters=5)
而不是使用类。然后它将是一行(例如,请参见fit
的源代码)。kmeans是您定义的模型
为了训练我们的模型,我们在这里使用kmeans.fit()
争论
kmeans.fit(参数)
是我们需要群集的数据集
使用
fit()函数
我们的模型准备好了
我们使用
数据标签=kmeans.labels_