手推BP算法-面试前抢救一下

栏目: 编程工具 · 发布时间: 5年前

内容简介:网上关于BP算法的解释浩如烟海,我没必要多写一篇充数,不过面试之前总想快速的复习一下,奈何没有成文的资料。本文旨在提取出纯净的推导过程,不过多解释,为了有基础的朋友们面试前快速过一下。给定训练集 以单隐层前馈网络为例,如上图所示:单个神经元的最简单神经网络模型如上图所示,也称作“M-P神经元模型”。该模型可以视为神经网络的最小单位。我们着重注意这个阈值 , 神经元输出 ,模型输出的是分类结果,所以这个 也直接影响分类结果。神经网络的训练就是连接权值的更新,所以这个连接权值的训练不用多解释。阈值本身也可以被作

网上关于BP算法的解释浩如烟海,我没必要多写一篇充数,不过面试之前总想快速的复习一下,奈何没有成文的资料。本文旨在提取出纯净的推导过程,不过多解释,为了有基础的朋友们面试前快速过一下。

抽象出问题

手推BP算法-面试前抢救一下

给定训练集 以单隐层前馈网络为例,如上图所示:

介绍一下出现的参数:

  • 输入层神经元的数
  • 输出层神经元的个数
  • 隐层神经元个数
  • 输出层第 个神经元的阈值
  • 隐层第 个神经元的阈值
  • 输入层第 个神经元和隐层第 个神经元的连接权值
  • 隐层第 个神经元和输出层第 个神经元的连接权值
  • 隐层第 个神经元的输出
  • 隐层第 个神经元的输入
  • 输出层第 个神经元的输入

介绍一下主要优化的内容

手推BP算法-面试前抢救一下

单个神经元的最简单神经网络模型如上图所示,也称作“M-P神经元模型”。该模型可以视为神经网络的最小单位。我们着重注意这个阈值 , 神经元输出 ,模型输出的是分类结果,所以这个 也直接影响分类结果。神经网络的训练就是连接权值的更新,所以这个连接权值的训练不用多解释。阈值本身也可以被作为一个值为-1的哑结点的权值。所以我们BP算法种训练的 主要内容便是神经元的连接权值和神经元的阈值。

BP算法训练过程

  1. 明确损失函数和参数调整策略

对样本 ,假定神经网络的输出为 ,即

网络在样本 上的均方误差

调整策略为梯度下降:

  1. 计算输出层阈值 的梯度

直接影响 , 直接影响 , 利用链式法则:

由之前公式可接着计算得出:

由于激活函数为sigmoid函数,导数可以用乘积来表示,有:

所以有

  1. 计算隐层到输出层连接权值 的梯度

直接影响 , 直接影响 , 直接影响 ,利用链式法则,所以有:

由于激活函数为sigmoid函数

由 定义可知:

综合求出:

  1. 计算隐层阈值 的梯度

影响到 , 直接影响 ,则有:

  1. 总结最终结果

引申一下,在多层前向网络中,将隐层阈值梯度表述为m层的阈值梯度 ,隐层神经元输出表述为m层神经元的输出 ,隐层与输出层的连接权值表述为m+1层的权值 ,将输出层阈值梯度表述为m+1层的阈值梯度 。则隐层阈值梯度可以表示为:

可知,在阈值调整过程中, 当前层的阈值梯度取决于下一层的阈值梯度 ,这就是BP算法的精髓,同理:

可知,当前层的连接权值梯度,取决于当前层神经元阈值梯度和上层神经元输出。

BP算法的优缺点


以上所述就是小编给大家介绍的《手推BP算法-面试前抢救一下》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

XML Hacks

XML Hacks

Michael Fitzgerald / O'Reilly Media, Inc. / 2004-07-27 / USD 24.95

Developers and system administrators alike are uncovering the true power of XML, the Extensible Markup Language that enables data to be sent over the Internet from one computer platform to another or ......一起来看看 《XML Hacks》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具