损失、风险函数与正则化
1 损失函数
1.1 损失函数是啥?
在监督学习问题中:
- 给定的输入变量记为 X \boldsymbol{X} X;
- 函数 f ( X ) f(\boldsymbol{X}) f(X)输出值记为预测值;
- 数据真实变量为 Y \boldsymbol{Y} Y。
那么,损失函数是用于度量预测错误的程度,即 Y \boldsymbol{Y} Y与 f ( X ) f(\boldsymbol{X}) f(X)不一致的程度。该函数记为: L ( Y , f ( X ) ) L(\boldsymbol{Y}, f(\boldsymbol{X})) L(Y,f(X))。
1.2 机器学习中常用的损失函数
1.3 期望风险
损失函数越小,说明
f
(
X
)
f(\boldsymbol{X})
f(X)越好,对于数据
(
X
,
Y
)
(\boldsymbol{X, Y})
(X,Y)来说,其联合分布为
P
(
X
,
Y
)
P(\boldsymbol{X, Y})
P(X,Y)。损失函数
f
(
X
)
f(\boldsymbol{X})
f(X)的期望
R
e
x
p
(
f
)
R_{exp}(f)
Rexp(f)是:
R
e
x
p
(
f
)
=
E
P
[
L
(
Y
,
f
(
X
)
)
]
=
∫
X
,
Y
L
(
Y
,
f
(
X
)
)
P
(
Y
,
f
(
X
)
)
d
x
d
y
(1.1)
\begin{aligned} R_{exp}(f)=&E_P[L(\boldsymbol{Y}, f(\boldsymbol{X}))]\\ =&\int_{X,Y}L(\boldsymbol{Y}, f(\boldsymbol{X}))P(\boldsymbol{Y}, f(\boldsymbol{X}))dxdy \tag{1.1} \end{aligned}
Rexp(f)==EP[L(Y,f(X))]∫X,YL(Y,f(X))P(Y,f(X))dxdy(1.1)
称
R
e
x
p
(
f
)
R_{exp}(f)
Rexp(f)为风险函数或期望损失。
在风险函数中,有
X
,
Y
\boldsymbol{X,Y}
X,Y构成了联合分布,才能更好的学习
f
f
f,但是,由于只知道一部分样本的
P
(
X
,
Y
)
P(\boldsymbol{X,Y})
P(X,Y),所以,在这个已知数据集上计算出来的平均损失称为经验风险,记为
R
e
m
p
R_{emp}
Remp:
R
e
m
p
(
f
)
=
1
N
∑
i
=
1
N
L
(
y
i
,
f
(
x
i
)
)
(1.2)
R_{emp}(f)=\frac{1}{N}\sum_{i=1}^{N}L(y_i,f(\boldsymbol{x_i})) \tag{1.2}
Remp(f)=N1i=1∑NL(yi,f(xi))(1.2)
2 正则化
一般来说,我们的目的是为了让经验风险足够小,但是在训练集上可能出现了过拟合的情况,如右图所示:
正则化就是为了让模型变的简单,也就是尽可能的让 θ 3 , θ 4 \theta_3, \theta_4 θ3,θ4尽可能的小。
总的来说,面对大量参数的时候,我们不知道应该惩罚哪些参数的权重,因此,通常从第1项开始(忽略第0项),有如下形式:
min
f
∈
F
1
N
∑
i
=
1
N
L
(
y
i
,
f
(
x
i
)
)
+
λ
J
(
f
)
\min_{f \in F}\frac{1}{N}\sum_{i=1}^{N}L(y_i, f(\boldsymbol{x_i}))+\lambda J(f)
f∈FminN1i=1∑NL(yi,f(xi))+λJ(f)
其中
λ
\lambda
λ为惩罚系数,
J
(
f
)
J(f)
J(f)代表常用的范数。
J
(
f
)
=
∣
∣
w
∣
∣
=
(
∑
i
∣
w
i
∣
p
)
1
/
p
J(f)=||\boldsymbol{w}||=(\sum_{i}|w_i|^p)^{1/p}
J(f)=∣∣w∣∣=(i∑∣wi∣p)1/p
2.1 L1 范数
J
(
f
)
=
∣
∣
w
∣
∣
=
(
∑
i
∣
w
i
∣
)
J(f)=||\boldsymbol{w}||=(\sum_{i}|w_i|)
J(f)=∣∣w∣∣=(i∑∣wi∣)
L1范数为向量中所有值的绝对值之和,使用L1范数作为正则函数时,优化的目标函数变为:
min
f
∈
F
1
N
∑
i
=
1
N
L
(
y
i
,
f
(
x
i
)
)
+
λ
∣
∣
w
∣
∣
1
\min_{f \in F}\frac{1}{N}\sum_{i=1}^{N}L(y_i, f(\boldsymbol{x_i}))+\lambda ||\boldsymbol{w}||_1
f∈FminN1i=1∑NL(yi,f(xi))+λ∣∣w∣∣1
在上式中,假如
L
(
y
i
,
f
(
x
i
)
)
L(y_i,f(\boldsymbol{x_i}))
L(yi,f(xi))是一个二次函数,那么目标函数的等值线是一个椭圆或圆;而约束条件为L1范数,其等值线为一个菱形。目标函数的等值线与约束边界的图像如下图所示
可以看到,在约束条件下的最优解,总是处于约束条件的角上,而约束条件的角上必定会出现一个或多个
w
i
w_i
wi的情况,这就导致了解稀疏性,在更高维的情况下也是如此。
以L1范数为正则项可以用来筛选特征,得出的非零 w i w_i wi所对应的特征是关联特征,若 w j = 0 w_j=0 wj=0,说明第 j j j个特征肯定是弱特征。
2.2 L2 范数
2.2.1 定义
J
(
f
)
=
∣
∣
w
∣
∣
=
(
∑
i
w
i
2
)
1
/
2
J(f)=||\boldsymbol{w}||=(\sum_{i}w_i^2)^{1/2}
J(f)=∣∣w∣∣=(i∑wi2)1/2
使用L2范数的条件下,目标函数变为:
min
f
∈
F
1
N
∑
i
=
1
N
L
(
y
i
,
f
(
x
i
)
)
+
λ
∣
∣
w
∣
∣
2
\min_{f \in F}\frac{1}{N}\sum_{i=1}^{N}L(y_i, f(\boldsymbol{x_i}))+\lambda ||\boldsymbol{w}||_2
f∈FminN1i=1∑NL(yi,f(xi))+λ∣∣w∣∣2
2.2.2 L2 的来源
假设数据中出现了误差,那么有:
A
(
x
+
Δ
x
)
=
b
+
Δ
b
A
x
+
A
Δ
x
=
b
+
Δ
b
A
Δ
x
=
Δ
b
\begin{aligned} \boldsymbol{A}(\boldsymbol{x}+\boldsymbol{\Delta x})=&\boldsymbol{b}+\boldsymbol{\Delta b}\\ \boldsymbol{A}\boldsymbol{x}+\boldsymbol{A}\boldsymbol{\Delta x}=&\boldsymbol{b}+\boldsymbol{\Delta b}\\ \boldsymbol{A}\boldsymbol{\Delta x}=&\boldsymbol{\Delta b} \end{aligned}
A(x+Δx)=Ax+AΔx=AΔx=b+Δbb+ΔbΔb
因为有:
∣
∣
x
1
∗
x
2
∣
∣
≤
∣
∣
x
1
∣
∣
∗
∣
∣
x
2
∣
∣
||\boldsymbol{x_1}*\boldsymbol{x_2}|| \leq ||\boldsymbol{x_1}||*||\boldsymbol{x_2}||
∣∣x1∗x2∣∣≤∣∣x1∣∣∗∣∣x2∣∣
所以:
∣
∣
Δ
x
∣
∣
≤
∣
∣
A
−
1
∣
∣
∗
∣
∣
Δ
b
∣
∣
∣
∣
x
∣
∣
≥
∣
∣
b
∣
∣
∣
∣
A
∣
∣
||\boldsymbol{\Delta x}|| \leq ||\boldsymbol{A}^{-1}||*||\boldsymbol{\Delta b}||\\ ||\boldsymbol{x}|| \geq \frac{||\boldsymbol{b}||}{||\boldsymbol{A}||}
∣∣Δx∣∣≤∣∣A−1∣∣∗∣∣Δb∣∣∣∣x∣∣≥∣∣A∣∣∣∣b∣∣
所以:
∣
∣
Δ
x
∣
∣
∣
∣
x
+
Δ
x
∣
∣
≤
∣
∣
Δ
x
∣
∣
∣
∣
x
∣
∣
≤
∣
∣
Δ
b
∣
∣
∣
∣
b
∣
∣
∗
∣
∣
A
−
1
∣
∣
∗
∣
∣
A
∣
∣
\begin{aligned} \frac{||\boldsymbol{\Delta x}||}{||\boldsymbol{x}+\boldsymbol{\Delta x}||} \leq \frac{||\boldsymbol{\Delta x}||}{||\boldsymbol{x}||}\leq \frac{||\boldsymbol{\Delta b}||}{||\boldsymbol{b}||} *||\boldsymbol{A}^{-1}||*||\boldsymbol{A}|| \end{aligned}
∣∣x+Δx∣∣∣∣Δx∣∣≤∣∣x∣∣∣∣Δx∣∣≤∣∣b∣∣∣∣Δb∣∣∗∣∣A−1∣∣∗∣∣A∣∣
所以
K
(
A
)
=
∣
∣
A
∣
∣
∗
∣
∣
A
−
1
∣
∣
K(\boldsymbol{A})=||\boldsymbol{A}||*||\boldsymbol{A}^{-1}||
K(A)=∣∣A∣∣∗∣∣A−1∣∣
表示了解关于方程系数的敏感度,也侧面体现了矩阵中列向量之间的线性相关强度。