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

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

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

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

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

相关代码

原文地址

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

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

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

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

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

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

前向传播过程

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

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

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

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

反向传播过程

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

1. 计算总误差

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

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

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

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

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

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

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

最后三者相乘

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

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

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

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

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

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

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

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

同理,计算出

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

两者相加,得到总值

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

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

最后,三者相乘

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

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

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

PC端查看完整代码

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


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

查看所有标签

猜你喜欢:

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

程序员第二步

程序员第二步

尹华山 / 人民邮电出版社 / 2013-11 / 45.00元

这本书是写给程序员和项目经理的。作者结合自身的丰富成长历程,通俗易懂地讲述了一名程序员如何才能成为一名优秀的项目经理。内容涉及职业规划、学习方法、自我修炼、团队建设、项目管理等,书中理清了项目管理领域中典型的误区及具有迷惑性的观点,并对项目中的难点问题提出了针对性的解决方法。 全书行文流畅,严谨中带着活泼,理智中透着情感,给读者带来轻松愉快的阅读感受。书中诸多富有创见的观点,让人耳目一新,引......一起来看看 《程序员第二步》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

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

HSV CMYK互换工具