提交 69f8ed00 编写于 作者: 异萌's avatar 异萌

Update README.md

上级 8528ee11
cnn_paddle这个项目是我自己学习DL以来独立完成的第三个深度学习方面的项目,代码片段是从网上找来并加以注释修改成为自己可以快速理解的形式。
为了巩固熟悉这些代码,多次在碎片化的时间手动抄写,键盘输入已经很多遍,目的就是为了能都烂熟于心。
整理出来这个项目一直在电脑上放着,20210516抽时间把他发布到codechina,目的也是方便自己温故知新。
另外也希望对DL感兴趣的初学者能够看到,在学习中少走一些弯路,看着这些简单的文件,我从刚开始学习到能够独自整理出来这一个项目也花费了大量的时间。
##项目介绍:
1.这个项目是用经典的MNIST的数据集作为训练对象,训练出来的一个模型,来预测手写数字的算法,属于机器视觉cv领域的图像分类的问题,记住这个词是图像分类
2.训练模型是用的卷积神经网络cnn,用的深度学习框架是paddle,(有时间我会用numpy自己搭建一个cnn卷积神经网络,希望大家关注)
3.这个卷积神经网络分为三层,在源代码里面我都有注释,一层卷积,一层池化,第二层卷积,第二层池化,第三层是fc全连接层
4.全连接层输出10个类别
##项目结构
1.文件train_main.py为训练模型的主程序,运行这个文件,会训练模型,并把训练好的参数保存成mnist.pdparams文件,供预测程序调用
2.cnn_net.py文件为卷积网络模型,这个用的是卷积神经网络模型
首先是数据集文件件
MNIST
下面有processed文件夹
和raw文件夹
2.cnn_net.py文件为卷积网络模型,这个用的是卷积神经网络模型,训练文件和预测文件都会调用这个模型,训练文件用这个模型训练,输出权重文件,预测文件加载权重文件
3.cnn_function.py是构造一个生成器reader,来读取数据
4.image_chuli_function.py是图片处理函数,把图片文件矩阵转换成cnn训练的数据格式
5.decode_binary_function.py是解码二进制函数,下面的数据集介绍里面会有答案,因为MNIST的数据集是以二进制保存的文件,需要先把二进制文件解码,解码称为图片数组的样式
##数据集介绍
MNIST下面有processed文件夹和raw文件夹
ubyte是二进制文件
现在的问题
更多的解释在代码中都注释了,不明白可以认真抄写一遍并运行一遍代码
#mnist使用的大端方法存储的数据
TRAINING SET IMAGE FILE (train-images-idx3-ubyte):
[offset] [type] [value] [description]
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册