1.3 统计学习方法三要素
统计学习方法都是由模型、策略和算法构成,即三要素。可以简单的表示为:方法=模型+策略+算法。可以说构建一种统计学习方法就是确定具体的三要素。监督学习、非监督学习和强化学习等都有三要素,下面以监督学习为例。
1.3.1 模型
统计学习首要考虑的问题是学习什么样的模型。模型即要学习的条件概率分布或决策函数,模型的假设空间包含所有的条件概率分布或决策函数,故一般是无穷多。
假设空间可以定义为决策函数的集合:
F
=
{
f
∣
Y
=
f
(
X
)
}
(1)
F= \{ f|Y=f( X )\}\tag{1}
F={f∣Y=f(X)}(1)
其中
F
F
F为假设空间,
X
X
X和
Y
Y
Y是定义在输入输出空间上的变量。此时
F
F
F通常是由一个参数向量决定的函数族:
F
=
{
f
∣
Y
=
f
θ
(
X
)
,
θ
∈
R
n
}
F= \{ f|Y=f_\theta( X ),\theta \in R^n\}
F={f∣Y=fθ(X),θ∈Rn}
参数向量
θ
\theta
θ取决于n维欧式空间
R
n
R^n
Rn,称为参数空间。
对于条件概率也是一样的,假设空间集合为
F
=
{
P
∣
P
(
Y
∣
X
)
}
F=\{P|P(Y|X)\}
F={P∣P(Y∣X)},而
F
F
F也通常是由一个参数向量决定的条件概率分布簇,表示为:
F
=
{
P
∣
P
θ
(
Y
∣
X
)
,
θ
∈
R
n
}
F=\{P|P_\theta(Y|X),\theta \in R^n\}
F={P∣Pθ(Y∣X),θ∈Rn}。
1.3.2 策略
有了模型的假设空间,统计学习接着需要考虑的是按照什么样的准则学习或选择最优模型,统计学习的目标在于从假设空间中选取最优模型。
1.损失函数和风险函数
损失函数度量模型一次预测的好坏,风险函数度量平均意义下模型预测的好坏。
监督学习问题是在假设空间
F
F
F中选取模型
f
f
f作为决策函数,对于给定的输入
X
X
X输出预测值
f
(
X
)
f(X)
f(X),而
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{matrix} 1, Y\neq f(X) \\ 0,Y=f(X) \end{matrix} \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))=|Y-f(X)| L(Y,f(X))=∣Y−f(X)∣
- 对数损失函数(对数似然损失函数):
L
(
Y
,
P
(
Y
∣
X
)
)
=
−
l
o
g
P
(
Y
∣
X
)
L(Y,P(Y|X))=-logP(Y|X)
L(Y,P(Y∣X))=−logP(Y∣X)
当然,损失函数越小则模型就越好。由于模型的输入、输出是随机变量,遵循联合分布 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 ) R_{exp}(f)=E_P[L(Y,f(X))]=\int_{X \times Y}L(y,f(x))P(x,y) Rexp(f)=EP[L(Y,f(X))]=∫X×YL(y,f(x))P(x,y)
这是理论上模型 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)是无法直接计算的。那么则对于给定的训练集 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x N , y N ) } T=\{(x_1,y_1),(x_2,y_2),...,(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}\displaystyle \sum_{i=1}^{N}L(y_i,f(x_i)) Rempf=N1i=1∑NL(yi,f(xi))
而依据大数定律,当样本容量N趋于无穷时,经验风险 R e m p ( f ) R_{emp}(f) Remp(f)趋于期望风险 R e x p ( f ) R_{exp}(f) Rexp(f),因此可以用经验风险估计期望风险。当然样本量要大,样本量小时,则估计并不理想,则需要对 R e m p ( f ) R_{emp}(f) Remp(f)进行矫正,固有经验风险最小化和结构风险最小化。
2.经验风险最小化和结构风险最小化
经验风险最小化的策略认为,经验风险最小的模型是最优模型,即求解最优化问题:
min f ∈ F 1 N ∑ i = 1 N L ( y i , f ( x i ) ) \displaystyle \min_{f \in F}\frac {1}{N}\displaystyle \sum_{i=1}^{N}L(y_i,f(x_i)) f∈FminN1i=1∑NL(yi,f(xi))
F F F即为假设空间
前面提到,当样本量很小时,经验风险最小化学习的效果不理想,甚至会产生过拟合现象。
结构风险最小化是为了防止过拟合而提出的策略。结构风险最小化等价于正则化。结构风险是在经验风险上加上表示模型复杂度的正则化项或罚项。在假设空间、损失函数和训练集确定的情况下,结构风险为:
R s r m f = 1 N ∑ i = 1 N L ( y i , f ( x i ) ) + λ J ( f ) R_{srm}{f}=\frac {1}{N}\displaystyle \sum_{i=1}^{N}L(y_i,f(x_i))+\lambda J(f) Rsrmf=N1i=1∑NL(yi,f(xi))+λJ(f)
其中 J ( f ) J(f) J(f)为模型的复杂度,是定义在假设空间 F F F上的泛函,模型 f f f越复杂,则 J ( f ) J(f) J(f)越大,反之亦然。 λ ≥ 0 \lambda\geq0 λ≥0是系数,用于权衡经验风险和模型复杂度。显然,结构风险小需要经验风险和模型复杂度同时小。结构风险小的模型往往对训练数据以及未知数据都有较好的预测。而与经验风险最小化一样,结构风险最小化也是求解最优化问题,即:
min f ∈ F 1 N ∑ i = 1 N L ( y i , f ( x i ) ) + λ J ( f ) \displaystyle \min_{f \in F}\frac {1}{N}\displaystyle \sum_{i=1}^{N}L(y_i,f(x_i))+\lambda J(f) f∈FminN1i=1∑NL(yi,f(xi))+λJ(f)
故监督学习问题转化为经验风险或结构风险函数的最优化问题,此时经验或结构风险函数是最优化的目标函数。
1.3.3 算法
算法是之学习模型的具体计算方法。统计学习基于训练数据集,根据学习策略,从假设空间中选择最优模型,最后需要考虑用什么样的计算方法求解最有模型。即此时统计学习问题归结为最优化问题,统计学习的算法成为求解最优化问题的算法。
小结
统计学习方法之间的不同,主要来自其模型、策略、算法的不同,故确定了模型、算法、策略,统计学习的方法也就确定了。