手写数字-实验报告(11页)-原创力文档.doc

手写数字-实验报告(11页)-原创力文档.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

手写数字识别实验报告一、实验的内容

试验包括数据准备,配置神经网络,通过PaddlePaddle内的数据集来训练模型,评估模型和通过模型识别手写数字五个步骤。其中模型训练和评估通过函数图形化处理方便学习调节参数。由于能力所限,本次实验内容主要是通过改变参数来观察对模型准确度的影响。

二、运行环境

1.硬件环境:

CPU2

RAM8GB

磁盘100GB

2.环境配置:

Python版本python3.7

框架版本PaddlePaddle1.5.1

三、实验课题分析

实验中主要可以调节的参数包括网络中的激活,损失函数,优化函数,学习率。模型准确度和误差反映在评估模型的图表中,为了减小误差,每轮结果都进行了输出。

在之前学长关于学习率的实验中,了解到0.001的学习率不错,我的实验决定主要从优化函数对模型的影响出发。通过更换优化函数来观察模型情况。对于一个收敛差准确率低的优化器,尝试用不同的学习率进行实验。

四、实验过程和运行结果

Step1

Step2

Step3

Step4

Step5

数据准备

网络配置

模型训练

模型评估

模型预测

构造数据提供器

网络模型、损失函数、

优化函数

训练、保存模型

观察模型训练的中间结

加载模型,图像预处理,

进行预测

trainreader和

testreader

定义Program

创建训练的Executor,执行

Program,feed数据,

save模型

输出Cost和Accuracy

创建预测Executor,load

预测Program并执行

首先导入必要的包

numpy---------python第三方库,用于进行科学计算

PIL------------Pythonlmagelibrary.python第三方图像处理库

matplotlib-----python的绘图库pyplot:matplotib的绘图框架

os-------------提供了丰富的方法来处理文件和目录

#导入需要的包

importnumpyasnp

importpaddleaspaddle

importpaddle.fluidasfluid

fromPILimportImage

importmatplotlib.pyplotasplt

importos

Step1:准备数据。

(1)数据集介绍

MNIST数据集包含60000个训练集和10000测试数据集。分为图片和标签,图片是28*28的像素矩阵,标签

为0~9共10个数字。

3/

L

)

(2)train_reader和test_reader

paddle.datasetmnist.trainO和test0分别用于获取mnist训练集和测试集

paddle.reader.shuffleO表示每次缓存BUF_SIZE个数据项,并进行打乱

paddle.batch0表示每8ATCH_SIZE组成一个batch

(3)打印看下数据是什么样的?PaddlePaddle接口提供的数据已经经过了归一化、居中等处理。

1

2

3

4

5

6

9

10

11

12

13

14

15

16

17

BUF_51ZE=512

BATCH_SIZE=128

#用于训练的数据提供器,每次从缓存中随机读取批次大小的数据

trsin_resder=paddle.batch(

paddle.resder.shuffle(paddle.dataset.mnist.trein(),

buf_size=BUF_SIZE),

batch_size=BATCH_SIZE)

#用于训练的数据提供器,每次从缓存中随机读取批次大小的数据

test_readerspaddle.batch(

paddle.resder.shuffle(paddle.dataset.mnist.test(),

buf_size=BUF_SIZE),

batch_size=BATCH_SIZE)

#用于打印,查看mnist数据

train_data=paddle.dataset.mnist.train();

sampledatasnext(train_data())

print(sampledata)

Step2.网络配置

以下四化历并新就最生义一个周单的参显感红理,一共有三面,到个大小为10%的选层和一个大小为1出园,回为1可数报集是于写0有获层像,提有10个,所以量后的输出大小最

10.最后输出能结经教是5ofme,所以最后的增出层个分资料,

文档评论(0)

zhanghaoyu888 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档