神经网络(9)--如何求参数: backpropagation algorithm(反向传播算法)

反向传播算法详解:从单个训练实例到多个实例
本文深入解析反向传播算法(Backpropagation),从单个训练实例出发,逐步推导至多个实例的情况,详细解释δ(delta)的概念及其计算过程。包括梯度求导、激活函数的导数以及如何利用这些信息进行参数更新。

Backpropagation algorithm(反向传播算法)

Θij(l) is a real number.

Forward propagation

上图是给出一个training example(x,y),是怎么进行forward propagation的. 

Backpropagation algorithm(一个trainning example)

因为我们是先求的δ(4),再求δ(3),再一层层往input layer那边推,所以叫做Backpropagation algorithm。

δj(l)是对的第l层的node(activation) j的修正,因为第一层是我们观察到的features 的值,是正确的值,不需要修正,所以不存在δ(1)

g'(z(3))是表示对z(3)求sigmoid函数后再求导,在数学上它=a(3) .* (1-a(3))

是对没有regularization的偏导结果,即忽略λ(λ=0).

通过上面的这个式子,我们可以通过backpropagation计算这些δ的式子,这样得到我们需要的偏导

 

Backpropagation algorithm(m个trainning example)

 

我们有m个trainning examples.

Δ 是δ(delta)的大写,Δ ,δ是用来求偏导的。在后面我们要对Δ进行累加。

Δij(l)可以看成是Δ(l)的第i行第j列的元素,所以可以对计算向量化,如上图所示。

转载于:https://www.cnblogs.com/yan2015/p/5008562.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值