在哪里能找到最后的版本的示例程序? AI Studio-MNIST

简 介: 在上面测试过程中总是时不常碰到版本不兼容的问题。这还是都是在AI STudio环境测试的结果。不知为什么,现在手头的版本还是没有能够反映出最终的软件的版本的情况下。

AIMNIST

横纵教学法 目 录
Contents
手写数字识别任务 MNIST数据集合 构建CNN 极简方案 建立MNIST工程 测试条件 显示图片 飞浆API 总 结

 

§01 横纵教学法


??这是 零基础实践深度学习 中【2.2】MNIST实验内容。

??核心的内容来自于: 百度架构师手把手带你零基础入门深度学习

▲ 图1.1.1  手写数字识别任务

??手写数字识别是深度学习中相对简单的模型,非常适用初学者。正如学习编程时,我们输入的第一个程序是打印“Hello World!”一样。 在飞桨的入门教程中,我们选取了手写数字识别模型作为启蒙教材,以便更好的帮助读者快速掌握飞桨平台的使用。

二、MNIST数据集合

??MNIST数据集是从NIST的Special Database 3(SD-3)和Special Database 1(SD-1)构建而来。Yann LeCun等人从SD-1和SD-3中各取一半作为MNIST训练集和测试集,其中训练集来自250位不同的标注员,且训练集和测试集的标注员完全不同。

▲ 图1.3.1  利用PaddlePaddle构建NN过程

(2) 构建NN特点

  • 从代码结构上看,模型均为数据处理、定义网络结构和训练过程三个部分。

  • 从代码细节来看,两个模型也很相似。

??这就是使用飞桨框架搭建深度学习模型的优势,只要完成一个模型的案例学习,其它任务即可触类旁通。在工业实践中,程序员用飞桨框架搭建模型,无需每次都另起炉灶,多数情况是先在飞桨模型库中寻找与目标任务类似的模型,再在该模型的基础上修改少量代码即可完成新的任务。

▲ 图1.1  “横纵式”教学方法-纵向极简实现方案

??在“横纵式”教学法中,纵向概要介绍模型的基本代码结构和极简实现方案。横向深入探讨构建模型的每个环节中,更优但相对复杂的实现方案。例如在模型设计环节,除了在极简版本使用的单层神经网络(与房价预测模型一样)外,还可以尝试更复杂的网络结构,如多层神经网络、加入非线性的激活函数,甚至专门针对视觉任务优化的卷积神经网络。

??这种“横纵式”教学法的设计思路尤其适用于深度学习的初学者,具有如下两点优势:

  • 帮助读者轻松掌握深度学习内容:采用这种方式设计教学案例,读者在学习过程中接收到的信息是线性增长的,在难度上不会有阶跃式的提高。
  • 模拟真实建模的实战体验:先使用熟悉的模型构建一个可用但不够出色的基础版本(Baseline),再逐渐分析每个建模环节可优化的点,一点点的提升优化效果,让读者获得到真实建模的实战体验。

??相信在本章结束时,大家会对深入实践深度学习建模有一个更全面的认识,接下来我们将逐步学习建模的方法。

 

§02 极简方案


一、建立MNIST工程

??在AI Studio下简历MNIST Notebook工程。在建立过程中增加MNIST数据集合。

1、添加MNIST数据集合

▲ 图2.1.2 进入工程之后看到的数据文件

▲ 图2.1.4 通过鼠标右键加压缩数据文件

二、测试条件

??根据 百度架构师手把手带你零基础入门深度学习 中测试,测试paddlepaddle环境中软件包是否符合要求。

1、测试数据包

/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/setuptools/depends.py:2: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses  import impTraceback (most recent call last):  File "testmnist.py", line 7, in module>    from paddle来源:卓晴
                                                        

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年1月22日
下一篇 2022年1月22日

相关推荐