码迷,mamicode.com
首页 > 编程语言 > 详细

反向传播算法的微分详细证明过程

时间:2016-06-02 20:01:13      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:

看了andrew ng 老师的机器学习教程,在关于反向传播算法进行讲解时,微分过程被省略掉了,只是说这个过程非常复杂。网上找了一些资料,有一篇比较详细的讲解,在http://axon.cs.byu.edu/resources/backprop_derived.pdf可以下载。这里也贴出来。微分过程中记法和andrew ng教程不太一样。不过貌似看着也蛮方便的。第20-24步的过程正好是δ反向传播的过程。

注意h(θ)这个假设函数,是关于输入向量的l层复合函数。

向量形式大概是这个样子    h(θ) = g(θ2 * g(θ1*xi )),这里是一个三层神经网络的简单示意。其中g代表激活函数,andrew ng的示例使用的是logistic function作为激活函数。i代表输入层向量。θ1和θ2代表第一层和第二层的权重矩阵。n层的时候是类似的复合过程。求偏导的过程其实是E(h(θ), y)对θij求偏导的过程。

andrew ng老师的反向传播过程如图:

技术分享

 

它其实是20-24步过程的一个向量化的形式。 

技术分享

技术分享

技术分享

 

反向传播算法的微分详细证明过程

标签:

原文地址:http://www.cnblogs.com/chyl411/p/5553999.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!