1.3 统计学习三要素
如前文所述,统计学习方法是由模型、策略和算法构成的,本节讨论了监督学习中的统计学习三要素。个人认为在研究或应用统计学习方法时,仔细思考一下其三要素对于理清思路很有帮助。
1 模型
统计学习首要考虑的问题是学习什么养的模型。在监督过程中,模型就是所要学习的条件概率分布或决策函数。模型的假设空间包含所有可能的条件概率分布或决策函数。例如,假设决策函数是输入变量的线性函数,那么模型的假设空间就是所有线性函数构成的函数集合,假设空间中的模型一般有无穷多个。
假设空间用
F
表
示
\mathscr{F}表示
F表示。假设空间可以定义为决策函数的集合
F
=
{
f
∣
Y
=
f
(
X
)
}
\mathscr{F}=\{f|Y=f(X)\}
F={f∣Y=f(X)}
其中,
X
X
X和
Y
Y
Y是定义在输入空间
X
\mathscr{X}
X和输出空间
Y
\mathscr{Y}
Y上的变量。这时
F
\mathscr{F}
F通常是由一个参数向量决定的函数族:
F
=
{
f
∣
Y
=
f
θ
(
X
)
,
θ
∈
R
n
\mathscr{F}=\{f|Y=f_{\theta}(X),\theta\in\mathbb{R}^n
F={f∣Y=fθ(X),θ∈Rn
参数向量
θ
\theta
θ取值于
n
n
n维欧氏空间
R
n
\mathbb{R}^n
Rn,称为参数空间。
假设空间也可以定义为条件概率的集合
F
=
{
P
∣
P
(
Y
∣
X
)
}
\mathscr{F}=\{P|P(Y|X)\}
F={P∣P(Y∣X)}
其中,
X
X
X和
Y
Y
Y是定义在输入空间
X
\mathscr{X}
X和输出空间
Y
\mathscr{Y}
Y上的随机变量。这时
F
\mathscr{F}
F通常是由一个参数向量决定的概率分布族:
F
=
{
P
∣
P
θ
(
Y
∣
X
)
,
θ
∈
R
n
}
\mathscr{F}=\{P|P_{\theta}(Y|X),\theta\in\mathbb{R}^n\}
F={P∣Pθ(Y∣X),θ∈Rn}
参数向量
θ
\theta
θ取决于
n
n
n维欧氏空间
R
n
\mathbb{R}^n
Rn,也称为参数空间。
本书中称由决策函数表示的模型为非概率模型,由条件概率表示的模型为概率模型。
2 策略
有了模型的假设空间,统计学习接着需要考虑的是按照什么准则学习或选择最优的模型。统计学习的目标在于从假设空间中选取最优模型。
首先引入损失函数和风险函数的概念。损失函数度量模型一次预测的好坏,风险函数度量平均意义下模型预测的好坏。
(1)损失函数和风险函数
监督学习问题是在假设空间
F
\mathscr{F}
F中选取模型
f
f
f作为决策函数,对于给定的输入
X
X
X,由
f
(
X
)
f(X)
f(X)给出相应的输出
Y
Y
Y,这个输出的预测值
f
(
X
)
f(X)
f(X)与真实值
Y
Y
Y可能一致也可能不一致,我们可以用一个损失函数或代价函数来度量预测错误的程度。损失函数是
f
(
X
)
f(X)
f(X)和
Y
Y
Y的非负实值函数,记作
L
(
Y
,
f
(
X
)
)
L(Y,f(X))
L(Y,f(X))。
统计学习常用的损失函数有以下几种:
- 0-1损失函数
L ( Y , f ( X ) ) = { 1 , Y ≠ f ( X ) 0 , Y = f ( X ) L(Y,f(X))=\left\{\begin{aligned}1,\quad Y\neq f(X)\\0,\quad Y=f(X)\end{aligned}\right. L(Y,f(X))={1,Y=f(X)0,Y=f(X) - 平方损失函数
L ( Y , f ( X ) = ( Y − f ( X ) ) 2 L(Y,f(X)={(Y-f(X))}^2 L(Y,f(X)=(Y−f(X))2 - 绝对损失函数
L ( Y , f ( X ) ) = ∣ Y − f ( X ) ∣ L(Y,f(X))=\left | Y-f(X)\right | L(Y,f(X))=∣Y−f(X)∣ - 对数损失函数(对数似然损失函数)
L ( Y , P ( Y ∣ X ) ) = − log P ( Y ∣ X ) L(Y,P(Y|X))=-\log{P(Y|X)} L(Y,P(Y∣X))=−logP(Y∣X)
损失函数的值越小,模型就越好。由于模型的输入、输出 ( X , Y ) (X,Y) (X,Y)是随机变量,遵循联合分布 P ( X , Y ) P(X,Y) P(X,Y),损失函数的期望是
R e x p ( f ) = E P [ L ( Y , f ( X ) ) ] = ∫ X × Y L ( y , f ( x ) ) P ( x , y ) d x d y R_{exp}(f)=E_P[L(Y,f(X))]=\int_{\mathscr{X}\times\mathscr{Y}}{L(y,f(x))P(x,y)dxdy} Rexp(f)=EP[L(Y,f(X))]=∫X×YL(y,f(x))P(x,y)dxdy
这是理论上模型 f ( X ) f(X) f(X)关于联合分布 P ( X , Y ) P(X,Y) P(X,Y)的平均意义下的损失函数,称为风险函数或期望损失。
学习的目标是选择期望风险最小的模型。由于联合分布 P ( X , Y ) P(X,Y) P(X,Y)是未知的,因此 R e x p ( f ) R_{exp}(f) Rexp(f)不能直接计算。实际上如果已知 P ( X , Y ) P(X,Y) P(X,Y)的话我们还学什么学,已经什么都知道了。正因为不知道联合概率分布,所以才需要学习。
给定一个训练集
T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯ , ( x N , y N ) } T=\{(x_1,y_1),(x_2,y_2),\cdots,(x_N,y_N)\} T={(x1,y1),(x2,y2),⋯,(xN,yN)}
模型 f ( X ) f(X) f(X)关于训练数据集的平均损失称为经验风险或经验损失,记作 R e m p R_{emp} Remp:
R e m p ( f ) = 1 N ∑ i = 1 N L ( y i , f ( x i ) ) R_{emp}(f)=\frac{1}{N}\sum_{i=1}^N{L(y_i,f(x_i))} Remp(f)=N1i=1∑NL(yi,f(xi))
期望风险是模型关于概率分布的期望损失,经验风险 R e m p ( f ) R_{emp}(f) Remp(f)是模型关于训练样本集的平均损失,根据大数定律,当样本容量 N N N趋于无穷时,经验风险趋近于期望风险。然而现实生活中,训练样本往往是有限的,因此用经验风险估计期望风险往往并不理想,需要对经验风险进行一定的矫正。这关系到监督学习的两个基本策略:经验风险最小化和结构风险最小化。
(2)经验风险最小化和结构风险最小化
在假设空间、损失函数以及训练数据集确定的情况下,经验风险函数即可以确定。经验风险最小化的策略认为,经验风险最小的模型是最优的模型。根据这一策略,按照经验风险最小化可以求得最优化问题:
min
f
∈
F
1
N
∑
i
=
1
N
L
(
y
,
f
(
x
i
)
)
\min\limits_{f\in\mathscr{F}}\frac{1}{N}\sum_{i=1}^N{L(y,f(x_i))}
f∈FminN1i=1∑NL(y,f(xi))
其中,
F
\mathscr{F}
F是假设空间。
当样本容量足够大时,经验风险最小化具有很好的学习效果,然而当样本容量很小时,经验风险最小会导致“过拟合现象”(见下文第4节)。
结构风险最小化是为了防止过拟合而提出的策略。结构风险最小化等价于正则化。结构风险在经验风险上增加表示模型复杂度的正则化项或惩罚项。在假设空间、损失函数以及训练数据集确定的情况下,结构风险的定义是
R
s
r
m
(
f
)
=
1
N
∑
i
=
1
N
L
(
y
i
,
f
(
x
i
)
)
+
λ
J
(
f
)
R_{srm}(f)=\frac{1}{N}\sum_{i=1}^N{L(y_i,f(x_i))+\lambda J(f)}
Rsrm(f)=N1i=1∑NL(yi,f(xi))+λJ(f)
其中J(f)为模型的复杂度,时定义在假设空间
F
\mathscr{F}
F上的泛函。模型越复杂,复杂度
J
(
f
)
J(f)
J(f)越大,反之亦然。也就是说,复杂度表示了对复杂模型的惩罚。
λ
≥
0
\lambda\ge0
λ≥0是系数,用以权衡经验风险与结构风险。综上,结构风险最小化的策略对应优化问题
min
f
∈
F
1
N
∑
i
=
1
N
L
(
y
i
,
f
(
x
i
)
)
+
λ
J
(
f
)
\min\limits_{f\in\mathscr{F}}\frac{1}{N}\sum_{i=1}^N{L(y_i,f(x_i))}+\lambda J(f)
f∈FminN1i=1∑NL(yi,f(xi))+λJ(f)
(3) 算法
算法是指学习模型的具体计算方法。统计学习基于训练数据集,根据学习策略,从假设空间中选择最优模型,最后需要考虑的是用什么样的计算方法来求解最优模型。这时,统计学习问题归结于最优化问题,统计学习的算法成为求解最优问题的算法。