整流线性单元(ReLu)是隐藏单元极好的默认选择。也可以选择其他隐藏单元,但是选用过程中充满了试验和错误,先直觉认为某种隐藏单元可能表现良好,然后用它组成神经网络进行训练,最后用验证集来评估它的性能。
有些隐藏单元并不是在所有点上可微,比如说Relu在z=0点处不可微,但在实践中,梯度下降对这些机器学习模型仍旧表现的足够好。部分原因是神经网络训练算法通常不会达到代价函数的局部最小值,而是仅仅显著减小它的值,这使我们不再期望训练可以达到梯度为0的点,所以代价函数的最小值对于梯度未定义的点是可接受的。
sigmoid,tanh
sigmoid在Z值较大和较小时都容易饱和。
tanh(z)=2σ(2z)−1
t
a
n
h
(
z
)
=
2
σ
(
2
z
)
−
1
整流线型单元及其扩展
为什么选择Relu?
整流线型单元易于优化,因为他们与线性单元十分类似;处于激活状态时,导数大且一致。
特点:半整流半线性旨在描述生物神经元的这些性质:1)对于某些输入,生物神经元是完全不活跃的。2)对于某些输入,生物神经元的输出和输入成正比。3)大多数时间,生物神经元是它们不活跃的状态下进行的操作(即具有稀疏激活)。
Relu的三个扩展
g(z)=max(0,z)+αmin(0,z)
g
(
z
)
=
m
a
x
(
0
,
z
)
+
α
min
(
0
,
z
)
:
绝对值整流g(z)=|z|;leaky Relu
α=0.01
α
=
0.01
;参数化整流线性单元学习
α
α
。
线性行为更容易优化。