您的位置:首页 > 其它

深度学习中的反向误差传播

2017-01-04 16:47 190 查看
深度学习的反向误差传播,其实就是导数的链式求导法则,通过误差对权重的偏导:



求得权重对误差的贡献大小,然后在给定学习率的情况下,根据该偏导求权重的更新值:

反向传播的链式法则,实例推导:

http://www.cnblogs.com/charlotte77/p/5629865.html

反向传播的简单例子:

http://www.ppvke.com/Blog/archives/40563

反向传播最简单的python例子(11行python代码):

http://blog.csdn.net/mingtian715/article/details/53954069

在2层网络中,其反向传播的核心代码如下:

X是输入,nonlin是求sigmoid函数,加第二个参数,且为true时,其求的是sigmoid的导数

syn0是权重,下面后三行中的代码全部是按照偏导求法的链式法则来求的

for iter in xrange(10000):
# forward propagation
l0 = X
l1 = nonlin(np.dot(l0,syn0))

# how much did we miss?
l1_error = y - l1

# multiply how much we missed by the
# slope of the sigmoid at the values in l1 反向传播公式
l1_delta = l1_error * nonlin(l1,True)

# update weights
syn0 += np.dot(l0.T,l1_delta)


反向传播示意图:





































源地址:http://galaxy.agh.edu.pl/~vlsi/AI/backp_t_en/backprop.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: