BP神经网络(手撕前向和反向传播)

昨天突然看到BP,然后就心里想手撕一下BP的原理和代码,所以就今天看了看。有一个国外哥们写BP写的特别好:BP神经网络。好了,接下来进从这几个方面讲述

BP神经网络

1、什么是BP?

是一种按照误差逆向传播算法训练的多层前馈神经网络

2、什么是反向传播?反向传播传播的是什么?

我们反向传播的目标是更新网络中的每个权重,以便它们使实际输出更接近目标输出,从而将每个输出神经元和整个网络的误差最小化。传播的误差,更新权重使得loss最小。

3、前向传播

前向传播传数据的输入,特征的提取,分类。

前向传播i

4、反向传播

传播误差,更新权重让loss变为最小。

输出层反向传播

 

开始对隐藏层的权重进行更新,更新w1/w2/w3/w4.E01和E02对这四个权重都有影响

 

 

 

总结:手撕一遍反向传播公式后才明白反向传播真正的本质是什么。