写在前面
均方误差,偏置和方差都是统计学中非常重要的概念。
均方误差MSE
对于机器学习来说,MSE一般是计算两个东西的MSE,一个是参数估计的MSE,一个是模型预测的MSE。我主要关注的是参数估计的MSE。
定义
参数估计的MSE定义为
M
S
E
=
E
θ
[
(
θ
^
−
θ
)
2
]
MSE = E_\theta[(\hat{\theta}-\theta)^2]
MSE=Eθ[(θ^−θ)2],其中
θ
\theta
θ表示真值,
θ
^
\hat{\theta}
θ^表示预测值,
E
θ
E_\theta
Eθ并不是表示在
θ
\theta
θ的分布上求期望,而是关于似然函数的期望,即
E
θ
[
(
θ
^
−
θ
)
2
]
=
∫
x
(
θ
^
−
θ
)
2
f
(
x
;
θ
)
d
x
E_\theta[(\hat{\theta}-\theta)^2]=\int_{x}(\hat{\theta}-\theta)^2f(x;\theta)dx
Eθ[(θ^−θ)2]=∫x(θ^−θ)2f(x;θ)dx
,可以理解为在所有观测值上求平均。
方差偏置分解
MSE可以进行分解:
M
S
E
=
E
θ
[
(
θ
^
−
θ
)
2
]
=
E
θ
[
θ
^
2
+
θ
2
−
2
θ
^
θ
]
=
E
θ
[
θ
^
2
]
−
E
θ
[
θ
^
]
2
+
E
θ
[
θ
^
]
2
+
θ
2
−
2
θ
E
θ
[
θ
^
]
=
V
θ
[
θ
^
]
+
(
θ
−
E
θ
[
θ
^
]
)
2
MSE = E_\theta[(\hat{\theta}-\theta)^2] =E_\theta[\hat{\theta}^2+\theta^2-2\hat{\theta}\theta] \\= E_\theta[\hat{\theta}^2]-E_\theta[\hat{\theta}]^2+E_\theta[\hat{\theta}]^2+\theta^2-2\theta E_\theta[\hat{\theta}]\\=V_\theta[\hat{\theta}]+(\theta-E_\theta[\hat{\theta}])^2
MSE=Eθ[(θ^−θ)2]=Eθ[θ^2+θ2−2θ^θ]=Eθ[θ^2]−Eθ[θ^]2+Eθ[θ^]2+θ2−2θEθ[θ^]=Vθ[θ^]+(θ−Eθ[θ^])2
定义估计的偏置(偏差)为:
b
i
a
s
=
E
θ
[
θ
^
]
−
θ
bias = E_\theta[\hat{\theta}]-\theta
bias=Eθ[θ^]−θ
则上式进一步写为:
M
S
E
=
V
θ
[
θ
^
]
+
b
i
a
s
2
MSE = V_\theta[\hat{\theta}]+bias^2
MSE=Vθ[θ^]+bias2
如果利用蒙特卡洛积分估计MSE这个期望:
E
θ
[
(
θ
^
−
θ
)
2
]
=
∫
x
(
θ
^
−
θ
)
2
f
(
x
;
θ
)
d
x
=
1
N
∑
i
=
1
N
(
θ
^
i
−
θ
)
2
E_\theta[(\hat{\theta}-\theta)^2]=\int_{x}(\hat{\theta}-\theta)^2f(x;\theta)dx\\= \frac{1}{N}\sum_{i=1}^{N}(\hat{\theta}_i-\theta)^2
Eθ[(θ^−θ)2]=∫x(θ^−θ)2f(x;θ)dx=N1i=1∑N(θ^i−θ)2其中,
θ
^
i
\hat{\theta}_i
θ^i是由第
i
i
i个数据估计得来。很多时候下,做机器学习的时候,我们都用这个均方误差来作为优化的目标。
无偏估计
当
b
i
a
s
bias
bias为0的时候,该估计就是参数的无偏估计。
有时候,虽然估计是有偏的,但是当数据愈来愈多的时候,参数的估计能够依概率收敛到真实值上,称为相合:
θ
^
→
θ
\hat{\theta}\rightarrow\theta
θ^→θ
最小二乘估计(OLS)的MSE
模型为:
y
=
X
θ
+
ϵ
y = X\theta+\epsilon
y=Xθ+ϵ
多元最小二乘估计(多元高斯噪声最大似然估计)的解为:
θ
^
=
(
X
T
X
)
−
1
X
T
y
\hat{\theta}=(X^TX)^{-1}X^Ty
θ^=(XTX)−1XTy
偏差为:
E
[
(
X
T
X
)
−
1
X
T
y
]
−
θ
=
(
X
T
X
)
−
1
X
T
E
[
y
]
−
θ
=
(
X
T
X
)
−
1
X
T
X
θ
−
θ
=
θ
−
θ
=
0
E[(X^TX)^{-1}X^Ty]-\theta\\=(X^TX)^{-1}X^TE[y]-\theta\\=(X^TX)^{-1}X^TX\theta-\theta\\=\theta-\theta=0
E[(XTX)−1XTy]−θ=(XTX)−1XTE[y]−θ=(XTX)−1XTXθ−θ=θ−θ=0
若假设噪声的方差是
σ
2
I
\sigma^2I
σ2I,则估计量的方差是:
V
θ
[
(
X
T
X
)
−
1
X
T
y
]
=
(
X
T
X
)
−
1
X
T
)
V
θ
[
y
]
(
X
T
X
)
−
1
X
T
)
T
=
σ
2
(
X
T
X
)
−
1
V_\theta[(X^TX)^{-1}X^Ty]=(X^TX)^{-1}X^T)V_\theta[y](X^TX)^{-1}X^T)^T\\=\sigma^2(X^TX)^{-1}
Vθ[(XTX)−1XTy]=(XTX)−1XT)Vθ[y](XTX)−1XT)T=σ2(XTX)−1
进一步,由方差-偏置分解可得
M
S
E
=
0
+
t
r
a
c
e
(
σ
2
(
X
T
X
)
−
1
)
=
t
r
a
c
e
(
σ
2
(
X
T
X
)
−
1
)
MSE=0+trace(\sigma^2(X^TX)^{-1})=trace(\sigma^2(X^TX)^{-1})
MSE=0+trace(σ2(XTX)−1)=trace(σ2(XTX)−1)
这里使用trace是因为多元情形下方差是矩阵。