反向传播(英语:Backpropagation,缩写为 BP )是“误差反向传播”的简称,是一种与最优化方法(如梯度下降法)结合使用的,用来训练人工神经网络的常见方法。该方法对网络中所有权重计算损失函数的梯度。这个梯度会反馈给最优化方法,用来更新权值以最小化损失函数。
很多同学在学习深度神经网络的时候,对反向传播的相关细节表示难以理解,国外有一篇技术博客,用例子进行了非常清晰的推导。我们对此进行了汉化,并提供了相关的代码。有兴趣的同学快来看看吧。
相关代码请见 http://www.momodel.cn:8899/#/explore/5b84e0098fe30b727acaa360?type=app
原文地址 https://mattmazur.com/2015/03/17/a-step-by-step-backpropagation-example/
假设,你有这样一个网络层
接下来,就可以进行反向传播的计算了
我们分别计算每个式子的值:
最后,三者相乘
这样误差反向传播法就完成了,最后我们再把更新的权值重新计算,不停地迭代.
完整代码( PC 端查看): http://www.momodel.cn:8899/#/explore/5b84e0098fe30b727acaa360?type=app
———————————————————————————————— Mo (网址:momodel.cn )是一个支持 Python 的人工智能建模平台,能帮助你快速开发训练并部署 AI 应用。期待你的加入。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.