效果不是很好,一般参数取0.01或者0.001
相当于滤波器,过滤噪音,一般噪音越大,
w
\mathbf{w}
w就比较大
最常见处理过拟合的方法
怎么控制模型容量?
-
控制模型参数,使参数少
-
使参数可选择范围小
权重衰退是通过限制参数选择范围来实现对过拟合的处理 -
通过限制参数值的选择范围来控制模型容量
min ℓ ( w , b ) s u b j e c t t o ∣ ∣ w ∣ ∣ 2 ≤ θ \min\ell(\mathbf{w},b)\quad subject\quad to\quad||\mathbf{w}||^2\leq\theta minℓ(w,b)subjectto∣∣w∣∣2≤θ -
通常不限制偏移b(限不限制都差不多,b是对零点的偏移,不应该限制)
-
小的 θ \theta θ意味着更强的正则项
-
就是把参数 w w w的范围限制在一个范围之内,将每个w的值平方限制在 θ \theta θ内
-
一般不会直接用这个优化函数,因为比较麻烦,这里就是给出了一个控制参数范围的概念
使用均方范数进行柔性限制
- 对于每个
θ
\theta
θ,都可以找到
λ
\lambda
λ使得之前的目标函数等价于下面:
min ℓ ( w , b ) + λ 2 ∣ ∣ w ∣ ∣ 2 \min\ell(\mathbf{w},b)+\frac{\lambda}{2}||\mathbf{w}||^2 minℓ(w,b)+2λ∣∣w∣∣2- 用拉格朗日乘子证明
- λ = 0 \lambda=0 λ=0:无作用
- λ → ∞ , w ∗ → 0 \lambda\rightarrow\infty,\mathbf{w}^{*}\rightarrow0 λ→∞,w∗→0
- 这个不是硬性限制,相较于刚才的公式,可以发现,对于参数 w \mathbf{w} w,这里并不是强制限制在某个范围内,而是柔性限制,会更加柔和一些
![[Pasted image 20230426200931.png]]
- 通过图片的演示,可以发现,如果没有 λ \lambda λ的控制,在对损失函数求最小值时,将会按照梯度下降的方式,取到右上角那个函数的较靠近中心处。但是这样可能会出现过拟合,所以我们需要通过类似于控制精度的方式,将 w \mathbf{w} w的取值控制的宽泛一些。通过增加带 λ \lambda λ的式子,相当于在函数图像的中央 ( 0 , 0 ) (0,0) (0,0)处,增加了一个开口向上的函数,由于越远离 ( 0 , 0 ) (0,0) (0,0),函数值越大,将导致原图像最低点向 ( 0 , 0 ) (0,0) (0,0)处移动,这样,求得的 w \mathbf{w} w得到了一些偏差
参数更新法则
为什么叫权重衰退呢?可以根据参数更新公式理解
参数更新仍然是通过梯度下降的方式,在原先参数更新的公式是:
w
t
+
1
=
w
t
−
η
∂
ℓ
(
w
t
,
b
t
)
∂
w
t
\mathbf{w}_{t+1}= \mathbf{w}_{t}-\eta\frac{\partial{\ell(\mathbf{w}_{t},b_t)}}{\partial\mathbf{w}_{t}}
wt+1=wt−η∂wt∂ℓ(wt,bt)
现在:
首先计算梯度:
∂
∂
w
(
ℓ
(
w
,
b
)
+
λ
2
∣
∣
w
∣
∣
2
)
=
∂
ℓ
(
w
,
b
)
∂
w
+
λ
w
\frac{\partial}{\partial\mathbf{w}}(\ell(\mathbf{w},b)+\frac{\lambda}{2}||\mathbf{w}||^2)=\frac{\partial{\ell(\mathbf{w},b)}}{\partial\mathbf{w}}+\lambda\mathbf{w}
∂w∂(ℓ(w,b)+2λ∣∣w∣∣2)=∂w∂ℓ(w,b)+λw
然后将这个梯度带入原公式得:
w
t
+
1
=
(
1
−
η
λ
)
w
t
−
η
∂
ℓ
(
w
t
,
b
t
)
∂
w
t
\mathbf{w}_{t+1}= (1-\eta\lambda)\mathbf{w}_{t}-\eta\frac{\partial{\ell(\mathbf{w}_{t},b_t)}}{\partial\mathbf{w}_{t}}
wt+1=(1−ηλ)wt−η∂wt∂ℓ(wt,bt)
可以发现,在
w
t
\mathbf{w}_t
wt的参数变小了,通常
η
λ
<
1
\eta\lambda<1
ηλ<1,因此在深度学习叫权重衰退
总结
- 权重衰退通过L2正则项使得模型参数不会过大,从而控制模型复杂度
- 正则项权重是控制模型复杂度的超参数