python中K-means算法是什么?

能够学习和掌握编程,最好的学习方式,就是去掌握基本的使用技巧,再多的概念意义,总归都是为了使用服务的,K-means算法又叫K-均值算法,是非监督学习中的聚类算法。主要有三个元素,其中N是元素个数,x表示元素,c(j)表示第j簇的质心,下面就使用方式给大家简单介绍实例使用。

K-Means算法进行聚类分析

km=KMeans(n_clusters=3)
km.fit(X)
centers=km.cluster_centers_
print(centers)

三个簇的中心点坐标为:

[[5.0063.428]
[6.812765963.07446809]
[5.773584912.69245283]]

比较一下K-Means聚类结果和实际样本之间的差别:

predicted_labels=km.labels_
fig,axes=plt.subplots(1,2,figsize=(16,8))
axes[0].scatter(X[:,0],X[:,1],c=y,cmap=plt.cm.Set1,
edgecolor='k',s=150)
axes[1].scatter(X[:,0],X[:,1],c=predicted_labels,cmap=plt.cm.Set1,
edgecolor='k',s=150)
axes[0].set_xlabel('Sepallength',fontsize=16)
axes[0].set_ylabel('Sepalwidth',fontsize=16)
axes[1].set_xlabel('Sepallength',fontsize=16)
axes[1].set_ylabel('Sepalwidth',fontsize=16)
axes[0].tick_params(direction='in',length=10,width=5,colors='k',labelsize=20)
axes[1].tick_params(direction='in',length=10,width=5,colors='k',labelsize=20)
axes[0].set_title('Actual',fontsize=18)
axes[1].set_title('Predicted',fontsize=18)
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。