Basic Concept
2020.8.7
为什么会有误差?
误差一般有两个来源
- bias - 偏差
- variance - 方差
如果可以确定误差来源,就可以挑选适当的方法提高模型效果。
理论上最佳的方程,记为
f
^
\hat{f}
f^,对我们来说是未知的。我们只能通过现有的训练集,找到我们能算出的最佳方程,记为
f
∗
f^*
f∗。
f
∗
f^*
f∗并不一定等于
f
^
\hat{f}
f^,是
f
^
\hat{f}
f^的估测值,两者的距离可能来自于Bias+Variance。
假设目前有一个变量
x
x
x,实际的均值为
μ
\mu
μ,方差为
σ
2
\sigma^2
σ2,均未知。
要估计均值,取
N
N
N个点作为样本
(
x
1
,
x
2
,
.
.
.
,
x
N
)
(x^1,x^2,...,x^N)
(x1,x2,...,xN),则均值
m
=
1
N
∑
n
x
n
≠
μ
m=\frac{1}{N}\sum_{n}x^n\neq\mu
m=N1n∑xn=μ取不同的样本,
m
m
m的值不同,不一定等于
μ
\mu
μ,而是围绕其上下波动。计算样本均值
m
m
m的期望
E
(
m
)
=
E
(
1
N
∑
n
x
n
)
=
1
N
∑
n
E
(
x
n
)
=
μ
E(m)=E(\frac{1}{N}\sum_{n}x^n)=\frac{1}{N}\sum_{n} E(x^n)=\mu
E(m)=E(N1n∑xn)=N1n∑E(xn)=μ样本均值是无偏估计(Unbiased estimator)。
散布在周围会散得多开,取决于方差
V
a
r
(
m
)
=
σ
2
N
Var(m)=\frac{\sigma^2}{N}
Var(m)=Nσ2。当样本比较大,即取的
N
N
N较大,均值
m
m
m会相对集中,方差较小;反之,样本较小时方差较大。
s
2
=
1
N
∑
n
(
x
n
−
m
)
2
s_2=\frac{1}{N}\sum_{n}(x^n-m)^2
s2=N1n∑(xn−m)2计算样本方差
s
2
s^2
s2的期望
E
(
s
2
)
=
N
−
1
N
σ
2
≠
σ
2
E(s^2)=\frac{N-1}{N}\sigma^2\neq\sigma^2
E(s2)=NN−1σ2=σ2平均来说样本方差小于总体方差,样本方差是有偏估计(Biased estimator)。
误差存在于两个方面:
- 瞄准位置离靶心位置的距离[准] - Bias
- 射中位置离瞄准位置的距离[稳] - Variance
Variance
每个样本中的数据是不一样的,找到的最好的方程
f
∗
f^*
f∗也是不一样的。用100个样本训练100个
f
∗
f^*
f∗,分别遵循
y
=
b
+
w
⋅
x
c
p
y=b+w·x_{cp}
y=b+w⋅xcp的方程和
y
=
b
+
w
⋅
x
c
p
+
w
2
⋅
(
x
c
p
)
2
+
w
3
⋅
(
x
c
p
)
3
+
w
4
⋅
(
x
c
p
)
4
+
w
5
⋅
(
x
c
p
)
5
y=b+w·x_{cp}+w_2·(x_{cp})^2+w_3·(x_{cp})^3+w_4·(x_{cp})^4+w_5·(x_{cp})^5
y=b+w⋅xcp+w2⋅(xcp)2+w3⋅(xcp)3+w4⋅(xcp)4+w5⋅(xcp)5的方程,得到结果如下图所示。
相对于二次方程来说,五次方程每条线都散布非常开,比较简单的模型受到数据的影响比较小,复杂的模型Variance比较大。
Bias
假设实际观测值遵循的方程为
f
^
\hat{f}
f^,用黑色表示;5000个不同样本训练得到的最优方程为
f
∗
f^*
f∗,用红色表示;5000个最优方程的平均值为
f
ˉ
\bar{f}
fˉ,用蓝色表示。训练二次方程和五次方程分别如下图所示。
方程次数越高,Bias越小,最终得到的平均
f
ˉ
\bar{f}
fˉ越接近实际观测的
f
^
\hat{f}
f^。
欠拟合与过拟合
简单的模型包含的范围是比较小的(较小的Variance),而这个范围可能没有包含Target(较大的Bias),所以在其中不论怎么选择,都无法得到Target。复杂的模型包含的范围比较大(较大的Variance),可能有包含Target(较小的Bias),由于训练集太小或不稳定,所以每次都不一样,但是平均起来可以较接近Target。
随着方程次数增大、复杂性增加,因Bias引起的误差一直减小,因Variance引起的误差一直增大,所以观测到的误差存在先减小后增大的情况。Bias很大而Variance很小的现象称为欠拟合(Underfitting),Variance很大而Bias很小的现象称为过拟合(Overfitting)。
在实际模型训练中,如果模型无法拟合训练集,则欠拟合,Bias大;如果模型在训练集的拟合效果较好,但在测试集的拟合效果非常差,则过拟合,Variance大。两种问题用不同的处理方式。
对于欠拟合(Bias):重新设计更复杂的模型,增加更多的特征
对于过拟合(Variance):增大训练集规模(但是可能会受到收集限制,可以自行创造数据hhh),正则化使模型更加平滑(但是可能会增大Bias)
通常要平衡Bias和Variance,从而减小总误差。
课程视频及资料来自:http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML20.html