MNIST | 基于k-means和KNN的0-9数字手写体识别
MNIST | 基于k-means和KNN的0-9数字手写体识别 1 背景说明 2 算法原理 3 代码实现 3.1 文件目录 3.2 核心代码 4 实验与结果分析 5 后记 概要: 本实验是在实验“ kaggle|基于k-means和KNN的语音性别识别 ”、实验“ MNIST|基于朴素贝叶斯分类器的0-9数字手写体识别 ”以及实验“ 算法|k-means聚类 ”的基础上进行的,把k-means聚类和CNN识别应用到数字手写体识别问题中去。有关MINIST数据集和kmeans+KNN的内容可以先看我的上面三篇博文,本实验的代码依然是MATLAB。 关键字: 数字手写体识别; k-means; KNN; MATLAB; 机器学习 1 背景说明 我在我的 上上篇博文 中提到会把kmeans聚类算法用到诸如语音性别识别和0-9数字手写体识别等具体问题中去, 语音性别识别的实验 已经在11月2号完成,现在来填0-9数字手写体识别的坑。由于本篇博客承接了我之前若干篇博客,而MNIST数据集、kmeans以及KNN算法的原理和用法等内容均已在之前提到过,所以这里不再专门说明。 2 算法原理 可以将本次实验思路概括如下: S1:训练时,将训练集中0-9对应的数据各聚成k类,共计10k个聚类中心; S2:验证时