机器学习分享——反向传播算法推导

栏目: 数据库 · 发布时间: 5年前

内容简介:反向传播(英语:Backpropagation,缩写为BP)是“误差反向传播”的简称,是一种与最优化方法(如梯度下降法)结合使用的,用来训练人工神经网络的常见方法。该方法对网络中所有权重计算损失函数的梯度。这个梯度会反馈给最优化方法,用来更新权值以最小化损失函数。很多同学在学习深度神经网络的时候,对反向传播的相关细节表示难以理解,国外有一篇技术博客,用例子进行了非常清晰的推导。我们对此进行了汉化,并提供了相关的代码。有兴趣的同学快来看看吧。

反向传播(英语:Backpropagation,缩写为BP)是“误差反向传播”的简称,是一种与最优化方法(如梯度下降法)结合使用的,用来训练人工神经网络的常见方法。该方法对网络中所有权重计算损失函数的梯度。这个梯度会反馈给最优化方法,用来更新权值以最小化损失函数。

很多同学在学习深度神经网络的时候,对反向传播的相关细节表示难以理解,国外有一篇技术博客,用例子进行了非常清晰的推导。我们对此进行了汉化,并提供了相关的代码。有兴趣的同学快来看看吧。

相关代码

原文地址

假设,你有这样一个网络层。

机器学习分享——反向传播算法推导

机器学习分享——反向传播算法推导

现在对他们赋上初值,如下图:

机器学习分享——反向传播算法推导

机器学习分享——反向传播算法推导

前向传播过程

1. 输入层---->隐含层:

机器学习分享——反向传播算法推导

2. 隐藏层---->输出层:

机器学习分享——反向传播算法推导

反向传播过程

接下来,就可以进行反向传播的计算了

1. 计算总误差

机器学习分享——反向传播算法推导

2. 隐含层---->输出层的权值更新:

机器学习分享——反向传播算法推导

下面的图可以更直观的看清楚误差是怎样反向传播的

机器学习分享——反向传播算法推导

我们分别计算每个式子的值:

机器学习分享——反向传播算法推导

最后三者相乘

机器学习分享——反向传播算法推导

看看上面的公式,我们发现:

机器学习分享——反向传播算法推导

机器学习分享——反向传播算法推导

3.隐含层---->隐含层的权值更新:

机器学习分享——反向传播算法推导

机器学习分享——反向传播算法推导

机器学习分享——反向传播算法推导

同理,计算出

机器学习分享——反向传播算法推导

两者相加,得到总值

机器学习分享——反向传播算法推导

机器学习分享——反向传播算法推导

最后,三者相乘

机器学习分享——反向传播算法推导

机器学习分享——反向传播算法推导

这样误差反向传播法就完成了,最后我们再把更新的权值重新计算,不停地迭代。

PC端查看完整代码

———————————————————————————————————————————Mo (网址: http://momodel.cn )是一个支持 Python 的人工智能建模平台,能帮助你快速开发训练并部署 AI 应用。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

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

Beginning XSLT 2.0

Beginning XSLT 2.0

Jeni Tennison / Apress / 2005-07-22 / USD 49.99

This is an updated revision of Tennison's "Beginning XSLT", updated for the new revision of the XSLT standard. XSLT is a technology used to transform an XML document with one structure into another ......一起来看看 《Beginning XSLT 2.0》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

html转js在线工具
html转js在线工具

html转js在线工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换