ReLU(z)={z0z>0z<=0(1)
(1)
R
e
L
U
(
z
)
=
{
z
z
>
0
0
z
<=
0
后向过程
a) 我们将激活函数也看做一层, 设第l
l
层输出为zl, 经过激活函数后的输出为zl+1
z
l
+
1
b) 记损失函数L关于第l
l
层的输出zl 的偏导为δl=∂L∂zl
δ
l
=
∂
L
∂
z
l
则损失函数L关于关于第l层的偏导如下:
δl=∂L∂zl+1∂zl+1∂zl=δl+1∂ReLU(zl)∂zl=δl+1{10zl>0zl<=0={δl+10zl>0zl<=0(1)(2)(3)(2)
(1)
δ
l
=
∂
L
∂
z
l
+
1
∂
z
l
+
1
∂
z
l
(2)
=
δ
l
+
1
∂
R
e
L
U
(
z
l
)
∂
z
l
(3)
=
δ
l
+
1
{
1
z
l
>
0
0
z
l
<=
0
(2)
=
{
δ
l
+
1
z
l
>
0
0
z
l
<=
0
LeakyReLU
ReLU在取值小于零部分没有梯度,LeakyReLU在取值小于0部分给一个很小的梯度
前向过程
LeakyReLU(z)={zαzz>0z<=0,α=0.1(3)
(3)
L
e
a
k
y
R
e
L
U
(
z
)
=
{
z
z
>
0
α
z
z
<=
0
,
α
=
0.1
后向过程
同Relu可知损失函数L关于关于第l层的偏导为:
δl={δl+1αδl+1zl>0zl<=0,α=0.1(4)
(4)
δ
l
=
{
δ
l
+
1
z
l
>
0
α
δ
l
+
1
z
l
<=
0
,
α
=
0.1
PReLU(z)={zαzz>0z<=0,α是与z相同形状的变量(5)
(5)
P
R
e
L
U
(
z
)
=
{
z
z
>
0
α
z
z
<=
0
,
α
是
与
z
相
同
形
状
的
变
量
后向过程
a) 同LeakyRelu可知损失函数L关于关于第l层的偏导为:
δl={δl+1αδl+1zl>0zl<=0,α是需要学习的参数(6)
(6)
δ
l
=
{
δ
l
+
1
z
l
>
0
α
δ
l
+
1
z
l
<=
0
,
α
是
需
要
学
习
的
参
数
b) 损失函数L关于关于参数α
α
的偏导为:
∂L∂α=∂L∂zl+1∂zl+1∂α=δl+1∂PReLU(zl)∂α=δl+1{0zlzl>0zl<=0={0δl+1zlzl>0zl<=0(4)(5)(6)(7)
(4)
∂
L
∂
α
=
∂
L
∂
z
l
+
1
∂
z
l
+
1
∂
α
(5)
=
δ
l
+
1
∂
P
R
e
L
U
(
z
l
)
∂
α
(6)
=
δ
l
+
1
{
0
z
l
>
0
z
l
z
l
<=
0
(7)
=
{
0
z
l
>
0
δ
l
+
1
z
l
z
l
<=
0