正则化
L2正则化(L-2 Regularization)
J ( w , b ) = 1 m ∑ i = 1 n L ( a i , y i ) + λ 2 m ∥ w ∥ 2 2 J(w,b)=\frac{1}{m}\sum_{i=1}^{n}L(a^{i},y^{i})+\frac{\lambda }{2m}{\parallel w\parallel_2}^2 J(w,b)=m1i=1∑nL(ai,yi)+2mλ∥w∥22
∥ w ∥ 2 = ∑ j = 1 n x w j 2 = w T w \parallel w\parallel^2=\sum_{j=1}^{n_x}{w_j}^2=w^Tw ∥w∥2=j=1∑nxwj2=wTw
L2正则化也叫权重衰减算法
不增加正则化项时梯度下降的算法如下:
增加正则化项时梯度下降算法如下:
W
[
l
]
=
W
[
l
]
(
1
−
α
λ
m
)
−
α
(
f
r
o
m
b
a
c
k
p
o
p
)
{W}^{[l]}={W}^{[l]}(1-\frac{\alpha \lambda}{m})-\alpha(from backpop)
W[l]=W[l](1−mαλ)−α(frombackpop)
相当于
W
[
l
]
{W}^{[l]}
W[l]乘上一个小于1 的值
当正则化参数很大的时候
W
[
l
]
{W}^{[l]}
W[l]趋近于0那么
Z
[
l
]
{Z}^{[l]}
Z[l]就会趋近于0
如果隐藏层采用的是tanh激活函数那么激活函数就会呈现相对线性,整个神经网络就会变成线性,只能处理一些线性的函数
随机失活(Dropout regularization)
对神经网络的每一层上设置概率随机使某个节点删除使得整个神经网络的结构变简单
反向随机失活技术(Inverted dropout)
归一化技术(Normalizing training sets)
先求出所有数据的均值变成零
μ
=
1
m
∑
i
=
1
m
x
i
\mu =\frac{1}{m}\sum_{i=1}^{m}x^{i}
μ=m1i=1∑mxi
x
=
x
−
μ
x=x-\mu
x=x−μ
在将所有数据的方差变为1
σ
2
=
1
m
∑
i
=
1
m
x
i
∗
∗
2
\sigma ^2=\frac{1}{m}\sum_{i=1}^{m}x^i**2
σ2=m1i=1∑mxi∗∗2
x
/
=
σ
2
x/=\sigma^2
x/=σ2
对训练集和测试集要用同样的归一化方法