matlab下编写bp神经网络实现手写数字识别(含图片及代码)
本文参考链接https://blog.youkuaiyun.com/huang_miao_xin/article/details/51364152。修改了其中部分代码,可以完美运行。
代码主要包括以下五个部分。
一、神经网络初始化
V=double(rand(256,64));
W=double(rand(64,10));
delta_V=double(rand(256,64));
delta_W=double(rand(64,10));
% lf=0;用来看错误在哪一步的参考数据
yita=0.2;%缩放系数,有的文章称学习率
yita1=0.05;%我自己加的参数,缩放激活函数的自变量防止输入过大进入函数的饱和区,可以去掉体会一下变化
train_number=10;%训练样本中,有多少个数字,一共9个,没有0
train_num=400;%训练样本中,每种数字多少张图,一共100张
x=double(zeros(1,256));%输入层
y=double(zeros(1,64));%中间层,也是隐藏层
output=double(zeros(1,10));%输出层
tar_output=double(zeros(1,10));%目标输出,即理想输出
delta=double(zeros(1,10));%一个中间变量,可以不管
%记录总的均方差便于画图
s_record=1:400

本文介绍了如何在MATLAB环境下利用BP神经网络进行手写数字识别,详细讲解了网络初始化、图片读取、前向计算、反向传播、运行状态绘图和测试的过程,并提供了完整代码。文章附带手写数字图片资源下载链接。
最低0.47元/天 解锁文章
554

被折叠的 条评论
为什么被折叠?



