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