BP神经网络原理及权重、阈值参数调整公式推导

本文深入解析了BP神经网络的工作原理,包括前向传播过程、误差反向传播的梯度下降法应用,以及如何通过数学推导调整权重和阈值。重点讲解了权重更新公式的变化,并介绍了误差反向传播的实际操作。适合进一步理解神经网络训练的读者。
摘要由CSDN通过智能技术生成

1.BP神经网络

     BP(Backpropagation, BP)神经网络是一种多层前馈神经网络,该网络的主要特点是信号前向传递,误差反向传播。在前向传递中,输入信号从输入层经隐含层逐层处理,直至输出层。每一层的神经元状态只影响下一层神经元状态。如果输出层得不到期望输出,则转入反向传播,根据预测误差调整网络权值和阈值,从而使BP神经网络预测输出不断逼近期望输出。BP神经网络的拓扑结构如图所示。

 

 这里的(1-1)中应该改成:H_{j}=f(\sum_{i=1}^{n}\omega _{ij}x_{i}+a_{j})

 这里f(x)的导数为f(x)(1-f(x))(可以用数学知识推导一下),所以H_{j}的导数为H_{j}(1-H_{j})

 

 这里的(1-3)中应该改成:O_k=\sum_{j=1}^{l}H_{j}\omega _{jk}+b_{k}

 

 

2.误差反向传播

     这里的误差反向传播利用的是梯度下降法的原理(关于梯度下降法的详细原理可参照此博主

 此处只是简单的一次循环举例,E为均方差代价函数,a3’为真实值,通过梯度下降对权值和阈值进行调整。

\frac{\partial E}{\partial b1}=\frac{\partial E}{\partial a3}*\frac{\partial a3}{\partial z2}*\frac{\partial z2}{\partial a2}*\frac{\partial a2}{\partial b1} =(a3-a3')*w2*\frac{\partial z2}{\partial a2}*1 =e^{k}*\sum_{k=1}^{m}\omega _{jk}H_{j}(1-H_(j))

 \frac{\partial E}{\partial b2}=\frac{\partial E}{\partial a3}*\frac{\partial a3}{\partial b2}=(a3-a3')*1=e_{k}

\frac{\partial E}{\partial w1}=\frac{\partial E}{\partial a3}*\frac{\partial a3}{\partial z2}*\frac{\partial z2}{\partial a2}*\frac{\partial a2}{\partial w1} =(a3-a3')*w2*\frac{\partial z2}{\partial a2}*a1 =e^{k}*\sum_{k=1}^{m}\omega _{jk}H_{j}(1-H_(j))*x(i)

\frac{\partial E}{\partial w2}=\frac{\partial E}{\partial a3}*\frac{\partial a3}{\partial w2}=(a3-a3')*z2=e^{k}*H_{j}

以上就是权重和阈值的梯度下降方向,再乘以下降步长(即\eta),便可得到新的权重和阈值,比如

\omega_{ij}=\omega_{ij}+\eta(e^{k}*\sum_{k=1}^{m}\omega _{jk}H_{j}(1-H_(j))*x(i))

同理可以得到如下:

这里面的1-8公式应该改成b_{k}=b_{k}+\eta*e_{k}

以上就是BP神经网络权重和阈值的调整原理

此篇主要是对大神们作品的进一步祥释,如有侵权,可联系删除。

  • 2
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值