KMeans算法-手写数字图像识别

本文介绍了如何使用KMeans算法对手写数字图像进行聚类识别。通过分析UCI数据集,确定了K=3为最佳聚类数,实现了较高的识别准确率,并探讨了K值变化对聚类效果的影响。
数据聚类是无监督学习的主流应用。最经典并易用的聚类模型,是K-means算法。该算法要求我们预设聚类的个数,然后不断更新聚类中心;经过几轮迭代后,让所有数据点到其所属聚类中心距离的平方和趋于稳定。
K-means算法
模型介绍:
算法执行过程:
1.随机设K个特征空间内的点作为初始的聚类中心;
2.对于根据每个数据的特征向量,从K个聚类中心中寻找距离最近的一个,并把该数据标记为从属于这个聚类中心
3.在所有的数据都被标记过聚类中心后,根据这些数据新分配的类簇,重新对K个聚类中心进行计算
4.如果一轮下来,所有数据点从属对聚类中心与上一次的分配的类簇没有变化,停止迭代,否则回到步骤2继续执行

前面在支持向量机(分类)采用了scikit-learn内部集成的手写数字图像数据,是原始数据集合的一部分。而本次,我们使用该数据的完整版本:https://archive.ics.uci.edu/ml/machine-learning-databases/optdigits/

Python源码:

k-means手写数字识别是一种基于聚类算法的图像识别方法。该方法的步骤如下: 1. 首先,通过PCA算法将训练样本中的图像进行降维处理,以提取图像的主要特征。 2. 然后,选择训练样本,并根据图像的特征进行聚类操作,将图像分为不同的类别。 3. 接下来,读取待识别数字图像,并进行连通分量分割,确定待识别数字的个数。 4. 最后,通过判别式进行分类,将待识别数字图像归类到之前训练得到的不同类别中。 在这个过程中,KMeans算法是用于创建一个KMeans对象,并设置相应的参数来进行聚类操作。其中,输入参数包括训练样本、聚类个数等。通过KMeans算法的训练和预测过程,可以得到对于待识别数字的分类结果。 值得注意的是,这里提供了两种不同的引用。引用给出了使用sklearn库进行k-means聚类和性能度量的实例代码。引用则给出了使用tensorflow库中的contrib.factorization模块进行KMeans算法的创建的示例代码。所以,你可以根据实际需要选择合适的库和算法进行手写数字识别。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [KMeans算法-手写数字图像识别](https://blog.youkuaiyun.com/cicilover/article/details/77505120)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [基于PCA算法手写数字识别(matlab)](https://download.youkuaiyun.com/download/InvokerH/12573677)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [tensorflow学习笔记(十二):K-means手写数字(MNIST)识别](https://blog.youkuaiyun.com/ch18328071580/article/details/98873930)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值