一.Summary
本文运用BP神经网络对MNIST手写数字字符进行识别。
BP神经网络是通过样本以及期望输出不断调整权值以达到训练的目的的算法。本文采用三层BP神经网络对MNIST字符进行训练,然后对提供的数据进行测试。
二.Content
1. 分析BP神经网络的基本原理:通过输入向量与权向量加权求和,得到一个下层神经元的输入,再加上偏置,经过激活函数计算,作下层神经元的输出。
2. 该文采用经典的三层神经网络为例,反向传播的过程如下:
先求出
,
其中J(w)为训练误差,t为输出端的期望输出值,z为实际输出值。
令w表示网络里所有的权值,根据J(w)调整w的大小:
,
继续的推导需要基于链式法则,具体过程可参考<模式分类>P237 6.3.1.最终得到隐含层到输出曾的权值更新规则:
![]()
输入层到隐含层权值的权值更新规则是:

本文介绍了使用MATLAB实现BP神经网络对MNIST手写数字进行识别的过程。通过三层神经网络训练,10个隐含层神经元的模型在10000条测试数据上达到89.07%的准确率,而20个隐含层神经元的模型则达到91.70%的识别准确率。文章详细阐述了BP神经网络的原理,训练过程,并提供了相关资源链接。
最低0.47元/天 解锁文章
690





