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

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

内容简介:网上关于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算法-面试前抢救一下》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

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

用户故事地图

用户故事地图

Jeff Patton / 李涛、向振东 / 清华大学出版社 / 2016-4-1 / 59.00元

用户故事地图作为一种有效的需求工具,越来越广泛地应用于开发实践中。本书以用户故事地图为主题,强调以合作沟通的方式来全面理解用户需求,涉及的主题包括怎么以故事地图的方式来讲用户需求,如何分解和优化需求,如果通过团队协同工作的方式来积极吸取经验教训,从中洞察用户的需求,开发真正有价值的、小而美的产品和服务。本书适合产品经理、用户体验设计师、产品负责人、业务分析师、IT项目经理、敏捷教练和精益教练阅读和......一起来看看 《用户故事地图》 这本书的介绍吧!

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具