ML之K-means:基于(完整的)手写数字图片识别数据集利用K-means算法实现图片聚类-阿里云开发者社区

开发者社区> 一个处女座的程序猿> 正文

ML之K-means:基于(完整的)手写数字图片识别数据集利用K-means算法实现图片聚类

简介: ML之K-means:基于(完整的)手写数字图片识别数据集利用K-means算法实现图片聚类
+关注继续查看

输出结果

image.png


image.png

设计思路

image.png


核心代码

metrics.adjusted_rand_score(y_test, y_pred)

plt.xlim([0, 10])

plt.ylim([0, 10])

plt.title('Instances')

plt.scatter(x1, x2)

colors = ['b', 'g', 'r', 'c', 'm', 'y', 'k', 'b']

markers = ['o', 's', 'D', 'v', '^', 'p', '*', '+']

clusters = [2, 3, 4, 5, 8]

subplot_counter = 1

sc_scores = []

for t in clusters:

   subplot_counter += 1

   plt.subplot(3, 2, subplot_counter)

   kmeans_model = KMeans(n_clusters=t).fit(X)

   for i, l in enumerate(kmeans_model.labels_):

       plt.plot(x1[i], x2[i], color=colors[l], marker=markers[l], ls='None')

   plt.xlim([0, 10])

   plt.ylim([0, 10])

   sc_score = silhouette_score(X, kmeans_model.labels_, metric='euclidean')

   sc_scores.append(sc_score)

   plt.title('K = %s, silhouette coefficient= %0.03f' %(t, sc_score))

   

plt.figure()

plt.plot(clusters, sc_scores, '*-')

plt.xlabel('Number of Clusters')

plt.ylabel('Silhouette Coefficient Score')

plt.title('Handwritten digits Datasets:the relationship curve between Silhouette Coefficient and the number of different clusters')

plt.show()




版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
使用LRU算法缓存图片,android 3.0
<p class="edui-filter-align-left" style="color:rgb(54,46,43); font-family:Arial; font-size:14px; line-height:26px"> 在您的UI中显示单个图片是非常简单的,如果您需要一次显示很多图片就有点复杂了。在很多情况下<br> (例如使用 ListView, GridView 或者 
1635 0
基于Tablestore 实现大规模订单系统海量订单/日志数据分类存储的实践
前言:从最早的互联网高速发展、到移动互联网的爆发式增长,再到今天的产业互联网、物联网的快速崛起,各种各样新应用、新系统产生了众多订单类型的需求,比如电商购物订单、银行流水、运营商话费账单、外卖订单、设备信息等,产生的数据种类和数据量越来越多;其中订单系统就是一个非常广泛、通用的系统。而随着数据规模的快速增长、大数据技术的发展、运营水平的不断提高,包括数据消费的能力要求越来越高,这对支撑订单系统的数据库设计、存储系统也提出了更多的要求。在新的需求下,传统的经典架构面临着诸多挑战,需要进一步思考架构优化,以更好支撑业务发展;
187 0
QT编写图片数据转换工具
学习QT已经一个月了,觉得QT真是个好东西,他的这种跨平台机制简直太棒了!还有QML这东西,真牛B!在这段学习期间,因为一个项目的需要,需要将图片转成数据,然后传出去,那边接收到数据后再对应转换成图片,才有了下面这个小工具,开发环境:QT 4.7.0,在LINUX下面重新编译也可以在LINUX下面运行,代码不用改!先放张截图吧。
758 0
Matlab实现K-Means聚类算法
人生如戏!!!! 一、理论准备       聚类算法,不是分类算法。分类算法是给一个数据,然后判断这个数据属于已分好的类中的具体哪一类。聚类算法是给一大堆原始数据,然后通过算法将其中具有相似特征的数据聚为一类。
1289 0
DL之Attention:基于ClutteredMNIST手写数字图片数据集分别利用CNN_Init、ST_CNN算法(CNN+SpatialTransformer)实现多分类预测(一)
DL之Attention:基于ClutteredMNIST手写数字图片数据集分别利用CNN_Init、ST_CNN算法(CNN+SpatialTransformer)实现多分类预测
39 0
独家 | 一文教你如何处理不平衡数据集(附代码)
本文作者用python代码示例解释了3种处理不平衡数据集的可选方法,包括数据层面上的2种重采样数据集方法和算法层面上的1个集成分类器方法。
1025 0
c#自带压缩类实现数据库表导出到CSV压缩文件的方法
原文:c#自带压缩类实现数据库表导出到CSV压缩文件的方法      在导出大量CSV数据的时候,常常体积较大,采用C#自带的压缩类,可以方便的实现该功能,并且压缩比例很高,该方法在我的开源工具DataPie中已经经过实践检验。
1063 0
+关注
一个处女座的程序猿
国内互联网圈知名博主、人工智能领域优秀创作者,全球最大中文IT社区博客专家、CSDN开发者联盟生态成员、中国开源社区专家、华为云社区专家、51CTO社区专家、Python社区专家等,曾受邀采访和评审十多次。仅在国内的CSDN平台,博客文章浏览量超过2500万,拥有超过57万的粉丝。
1701
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载