我是机器学习的新手,我使用
from sklearn import datasetsiris=datasets.load_iris()
来学习KMeans。因此,我使用如下方式拟合数据:
kmeans=KMeans(n_clusters=1,random_state=42).fit(iris['data'])print(kmeans.cluster_centers_)
结果我发现,我得到了4个坐标而不是2个
[[5.84333333 3.05733333 3.758 1.19933333]]
我查阅了这篇文章来学习KMeans,但这篇文章也仅展示了两个坐标的例子
问题
为什么我得到了4个坐标而不是2个?我哪里做错了?我遗漏了什么?
回答:
Iris数据集包含描述三种不同类型花朵(即3个类别)的4个特征。因此,数据集中每个点都位于一个4维空间中,质心也是如此,因此要描述它们的位置需要4个坐标。
在例子中,使用二维数据(有时是三维)更容易,因为这样更容易绘图和展示用于教学目的,但质心将具有与数据维度(即特征)一样多的坐标,因此对于Iris数据集,你会期望得到4个坐标。