使用scikit-learn在python中进行SVM MNIST数字分类
该项目提出了的众所周知的问题。 出于本教程的目的,我将使用具有原始像素特征的算法。 该解决方案使用易于使用的机器学习库以python编写。
该项目的目标不是达到最先进的性能,而是教您如何使用sklearn的SVM在图像数据上训练SVM分类器。 尽管该解决方案并未针对高精度进行优化,但结果还是不错的(请参见下表)。
如果您想获得最佳性能,这两个资源将向您展示当前的最新解决方案:
下表显示了与其他模型相比的一些结果:
方法
准确性
评论
随机森林
0.937
简单的一层神经网络
0.926
简单的2层卷积网络
0.981
支持向量机
0.9852
C = 5,伽玛= 0.05
线性SVM + Nystroem内核逼近
线性SVM +傅立叶核逼近
项目设置
本教程是在Ubuntu 18.10上编写和测试的。 项目包含具有所有必要库的Pipfile
Python-版本> = 3.6
pipenv-软件包和虚拟环境管理
麻木
matplotlib
scikit学习
安装Python。
git克隆仓
1