一、KMeans算法API说明
class sklearn.cluster.KMeans
(n_clusters=8, init=’k-means++’, n_init=10, max_iter=300, tol=0.0001, precompute_distances=’auto’, verbose=0, random_state=None, copy_x=True, n_jobs=None, algorithm=’auto’)
(1)属性说明:
属性 |
作用 |
cluster_centers_ |
聚类中心点 |
labels_ |
每个点对应的标签 |
inertia_ |
组内距离平方和, 用于衡量聚类效果,输出样本到其最近的聚类中心的平方距离的总和。 |
n_iter_ |
迭代次数 |
(2)参数说明:
参数 |
特征 |
作用 |
n_clusters |
int,default=8 |
聚类的组数,也就是k值 |
init |
{‘k-means++’,‘random’, ndarray},default=’k-means++’ |
k-means++就是一种选择初始聚类中心点的算法 |
n_init |
int,default=10 |
以不同的随机数种子,重复执行10次,然后选择出其中最好的结果 |
max_iter |
int, default=300 |
最大迭代次数 |
tol |
float,default=1e-4 |
如果两次迭代中,聚类中心点的变化,达不到这个值的大小,则停止 |
random_state |
int |
随机种子 |
请根据学习内容回答以下问题:
(1) 哪个参数控制Kmeans将数据聚类成几个簇?
(2) 除了随机选择外, 还有什么方法去选择聚类的初始中心点?