mnist数据集处理:
convert_MNIST_to_mat.m函数功能:将mnist数据集转换为mat格式,方便后续处理,详情可参考博客:https://blog.csdn.net/didi_ya/article/details/105075859
【注意】:处理时将mnist的四个文件夹放在E:\My Graduation project\MatlabReadMNIST\mnist目录下,当然也可自行更改目录。
数据增强:
DataAdd.m 函数功能:利用图像平移,图像旋转,图像放缩来扩充数据集,将数据集最大扩充为5000*8=40000组。
movement.m:图像平移函数
BP神经网络训练算法:
training.m:训练主函数
backpropagation.m:BP算法
prop_forward.m:前向传播
final_layer_sens.m:计算隐含层-输出层灵敏度
hidden_layer_sens.m:计算输入层-隐含层灵敏度
update_weights_biases.m:权值-阈值更新函数
nndlogsig.m:sigmoid函数
test_network.m:测试网络函数,用于验证集验证以及测试集测试
testing_test_network.m:计算正确率函数
主函数:
randomize_data.m:矩阵随机化函数,将mnist数据集构成的矩阵随机打乱
split_sets.m:将一个矩阵随机拆分成两个给定百分比的矩阵
vectorize_outputs:设立分类规则,把输出从1维变成10维单位向量,就是对10类设置期望值(即one-hot编码,可自行百度)
main.m:主函数,负责处理数据集并进行神经网络的训练
Transformation.m:将train_labels的图像转换为标准格式28*28
识别:
TransformationD.m:将现成的手写数字图像转换为标准格式28*28
Recognition.m:单一数字识别函数
Recognition_multi.m:多数字识别
【注意事项】:调用识别函数时最好将画图工具里的笔画调粗一些(8px最佳),多数字识别时数字间隔尽量大一点,然后白底黑字书写。可以利用本文件夹图片中的图片进行识别(这里的图片都是博主利用画图工具手写生成,绝对没毛病),当然也可自行手写;需要注意的是答辩的时候没必要现场手写,只需要读取能正常识别出来的即可,博主就是读取这些图片拿到优秀毕业设计的,如果你能看懂全部代码,相信你也可以!!!
基于MATLAB利用BP神经网络进行手写数字识别.zip
版权申诉
43 浏览量
2023-04-22
17:01:40
上传
评论 6
收藏 71.71MB ZIP 举报
wendy_ya
- 粉丝: 3w+
- 资源: 202
最新资源
- 5G网络基础培训课件.zip
- 2024-spring-HIT-CS-大作业
- yolo目标检测项目实验
- downloadFile-1.hc
- C++课程设计:基于Qt的航班信息管理系统
- ADS7822UVerilog驱动,前面传的有点问题
- 基于python的高性能爬虫程序,使用了多线程+缓存+xpath实现的,这里以彼-岸图库为例,实现,仅用于学习交流
- 中分辨率成像光谱仪(MODIS)烧毁面积产品信息MODIS-C6-BA-User-Guide-1.2.pdf
- Screenshot_20240427_172613_com.huawei.browser.jpg
- 关于学习Python的相关资源网站链接及相关介绍.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈