tensorflow的入门--手写数字识别mnist的傻瓜教程

来源:互联网 发布:那个答题软件好用 编辑:程序博客网 时间:2024/06/05 23:08

手写数字识别对于深度学习,就像是hello world对于c语言的地位。

是入门的适合上手的第一个小例子。也能通过这个直观的感受到图像识别是个什么鬼。

先不讲理论,直接上手来开始做。

官方的tensorflow官网是英文的,一个偷懒的办法就是百度可以搜到中文版的:

tensorflow官方文档中文版

首先进tensorflow的官网

然后点上面一栏的develop进入界面



这个界面和tensorflow官方文档中文版里的内容就是差不多的了


然后点左边教程里的mnist机器学习入门

中文看起来没什么压力。原理不说,先说操作。

【1】建立一个文件夹,可以建在home里,随意。我是直接建在home里,文件夹就叫mnist

【2】把这个数据集下载下来,这个数据集包含图片和标签,测试集和训练集的都包括了。


【3】编程的准备:需要两个工具,一个是Python,一个是vim

linux自带的Python版本较老,需要先更新,更新方法见百度。

更新为2.7版本就好,不建议更新为3版本,因为很多深度学习的编程都是用Python2的语言写的

vim是一种编辑器,编程方便,具体安装方法也见百度。

然后开始编程

【4】开始编程

整个linux终端的操作只有三句话,就是下面这三句

接下来一点点解释


(1)ctrl+alt+t调出linux系统的终端

终端输入mnist就进入建立的mnist文件夹了

然后终端输入vim mnist.py就会创立一个名为mnist.py的python文件

     后缀.py就是告诉他是Python文件,vim就是vim编辑器

     这句话是建立并打开mnist.py文件

然后进入了mnist.py的编辑界面

(2)先说下vim的操作。

vim刚进入时是normal模式,需要点i才能进入insert模式,才能编辑和编程

最后编辑完先按电脑的esc键退出insert模式,然后输入  :wq是保存并退出(w是保存,q是退出,记得输入冒号哦)

(3)说完操作开始操作。刚刚打开了mnist.py并开始编辑

把tensorflow官网上的程序一行一行粘贴过来就行了


就是上面这些圈起来的这些,后面还有一些,我没截图完

一行行全部粘贴到vim编辑的mnist.py里

然后保存并退出

粘贴过来之后的程序如下


【5】运行mnist.py

在linux终端里输入python mnist.py再回车即可运行

    补充:运行Python文件都是在那个文件所在的目录下输入python 文件名.py即可运行,一定要在那个文件目录里才行

运行之后,会看到迅速的训练过程,从1开始,到999结束

运行过程和结果如下。最后一行0.8706是结果。

0.8706意思就是这个mnist准确识别的概率是87.06%


【6】后记

整个过程到这儿就结束了。是不是对这个结果莫名其妙?是不是以为会有什么高大上的结果哈哈

就是酱紫就结束了。一开始我也是不可置信哈哈

其实还有一部分是测试实验结果怎么样。试验一下到底能不能识别数字。

接下来讲讲这个


【7】检测识别结果

刚才的实验结果已经结束,但是自己不手动识别一张是不是觉得不肯罢休。那就来做一个识别。看如下文件夹:


第一个文件夹MNIST_data就是训练集的数据,第三个mnist.py就是刚才用的训练步骤的程序mnist.py

第二个文件是一张图,可以看出来图片上的数字是0,我们一会儿要做的就是就别出这张图片上的数字0,

第四个文件mnist_test.py就是一会儿要用的测试的python程序


贴上mnist_test.py的代码



整个过程很简单。就是运行这个程序,然后就会识别出这个图片上的数字。就是这么两句代码。


就这两句就可以了,就开始训练了。

这就训练结束了。可以看到最后一句,预测的值是0。可见能正确识别。


【福利】数据集以及程序附上百度云链接

链接:http://pan.baidu.com/s/1jIN3wGI 密码:h1vx


阅读全文
2 0