必威体育Betway必威体育官网
当前位置:首页 > IT技术

多层神经网络BP算法解释

时间:2019-07-18 07:44:17来源:IT技术作者:seo实验室小编阅读:62次「手机版」
 

bp神经网络

# 多层神经网络BP算法解释 ## 前向传播 *** * 该项目采用反向传播算法描述了多层神经网络的教学过程。 为了说明这个过程,使用了具有两个输入和一个输出的三层神经网络,如下图所示:


  • 每个神经元由两个单元组成。
  • 第一单元添加权重系数和输入信号的乘积。
  • 第二个单元实现非线性功能,称为神经元激活功能。
  • 信号 e" role="presentation">e 是加法器输出信号.
  • y=f(e)" role="presentation">y=f(e) 是非线性元件的输出信号。
  • 信号 y" role="presentation">y 也是神经元的输出信号。


  • 训练数据由(期望输出)z" role="presentation">z 和输入信号 x1" role="presentation">x1x2" role="presentation">x2 组成。
  • 神经网络训练是一个迭代过程。 在每次迭代中,使用来自训练数据集的新数据来修改节点的权重系数 w" role="presentation">w
  • 使用下面描述的算法计算修改:每个教学步骤从强制来自训练集的两个输入信号开始。 在此阶段之后,我们可以确定每个网络层中每个神经元的输出信号值。
  • 下面的图片说明了信号如何通过网络传播,符号w(xm)n" role="presentation">wxmn表示输入层中网络输入xm" role="presentation">xm和神经元n" role="presentation">n之间的连接权重。 符号yn" role="presentation">yn表示神经元n" role="presentation">n的输出信号。

y1=f1(w(x1)1∗x1+w(x2)1∗x2)" role="presentation">y1=f1(w(x1)1x1+w(x2)1x2)

y2=f2(w(x1)2∗x1+w(x2)2∗x2)" role="presentation">y2=f2(w(x1)2x1+w(x2)2x2)

y3=f3(w(x1)3∗x1+w(x2)3∗x2)" role="presentation">y3=f3(w(x1)3x1+w(x2)3x2)

* 其中 f()" role="presentation">f()函数可以是 sigmod" role="presentation">sigmod 函数

ex.f(z)=11+e−z" role="presentation">ex.f(z)=11+ez

/p> *** * 通过隐藏层传播信号。 * 符号wmn" role="presentation">wmn表示下一层中神经元m" role="presentation">m的输出与神经元n" role="presentation">n的输入之间的连接的权重。

## BP网络 *** * 将神经网络的输出信号y^" role="presentation">y^与在训练数据集中找到的真实值(y" role="presentation">y)进行比较。 该差异被称为输出层神经元的误差信号δ" role="presentation">δ

δ=y−y^" role="presentation">δ=yy^

与下图片对应关系为 y=z" role="presentation">y=z ,y^=y" role="presentation">y^=y


  • 无法计算直接计算隐藏层的真实值和误差,因为该过程在实际生产中不存在,或不可得。
  • 为此,八十年代中期,提出了 BP算法


  • 上一条是重点,重点,重点。

  • 注意 下图公式有误 ,正确表达为
  • δ4=w46∗δ∗df6(e)de=−w46∗δ∗y^∗(1−y^)" role="presentation">δ4=w46δdf6(e)de=w46δy^(1y^)

  • 其他的同类表达式也需要类似的修改,请注意。
  • 对于有多条边连接的节点,δ" role="presentation">δ为每条边结果的和。


  • 获得每个神经元的误差信号后,可以利用误差来修改每个神经元输入节点的权重系数。
  • 下面的公式

    ∂(δ2)∂e=∂(y−y^)2∂e=−(y−y^)∗y^∗(1−y^)" role="presentation">(δ2)e=(yy^)2e=(yy^)y^(1y^)

    表示神经元激活函数的导数残差

  • δ2" role="presentation">δ2即为 损失函数
  • 又因为对dedθ" role="presentation">dedθ
  • dedθ=∂θTx∂θ=x" role="presentation">dedθ=θTxθ=x

  • 由于链式法则
  • ∂(δ2)∂θ=∂(y−y^)2∂ededθ=−(y^−y)∗y^∗(1−y^)∗x=−δ∗y^∗(1−y^)∗x" role="presentation">(δ2)θ=(yy^)2ededθ=(y^y)y^(1y^)x=δy^(1y^)x

  • y^" role="presentation">y^ 表示输出值

  • y" role="presentation">y 表示真实值
  • x" role="presentation">x代表上一层的输出或者原始的输入
  • δ" role="presentation">δ 表示误差 这里用到了上一节BP中的假设
  • 通过这部分化简,我们利用误差δ" role="presentation">δ代替了的y−y^" role="presentation">yy^ 从而避开了隐藏层中的未知量y" role="presentation">y
  • 最后利用标准的* 梯度下降公式*:

    w^=w−η∗∇=w+η∗δ∗y^∗(1−y^)∗x=w+η∗δ∗∂y∂e∗x" role="presentation">w^=wη=w+ηδy^(1y^)x=w+ηδyex



转载请注明出处,csdn的markdown还是很迷的。

参考

参考资料来源

相关阅读

利用MATLAB 2016a进行BP神经网络的预测(含有神经网络工

利用MATLAB 2016a进行BP神经网络的预测(含有神经网络工具箱)   最近一段时间在研究如何利用预测其销量个数,在网上搜索了一下,发现

FAT32文件系统学习(1) —— BPB的理解

origin: https://www.cnblogs.com/fantacity/p/3895771.html FAT 32 文件系统学习 1、本文的目标 本文将通过实际读取一个FAT3

NVIDIA送出显存频率升级更贵的GTX1080显卡:11Gbps显存

3月初NVIDAIA发布了GTX 1080 Ti,它启用了完整的GP102核心,性能比Pascal架构的Titan X显卡还要强,但是价格只是取代之前GTX 1080的位

佳能lbp3500网络打印机怎么设置?

4、“搜索要安装的网络打印机”-“添加打印机并更新现有驱动程序”5、点击选中“打印机列表”搜索

iPad Pro和三星Galaxy TabPro s买哪个好?

如今,二合一平板电脑以新科技和新生活方式的姿态进入了公众的视野,一时之间,各种品牌的二合一平板电脑纷纷涌入了市场,可谓是“

分享到:

栏目导航

推荐阅读

热门阅读