第一章统计学习方法概论
1.1 统计学习
- 统计学习的特点:(1) 以计算机及网络为平台,(2)以数据为研究对象,即数据驱动,(3)以对数据进行预测和分析为目的,(4)以方法为中心,构建并应用模型,(5)多领域交叉(可略)。
- 统计学习的对象:数据。(假设前提:同类数据具有一定的统计规律性。ps此处区别于另一种对数据类型的理解:结构化和非结构化数据类型)
- 统计学习的目的:对数据进行预测和分析。考虑学习什么样的模型和如何学习模型来预测和分析数据。
- 统计学习的方法:基于数据构建统计模型来对数据预测和分析。
ps1 分类有监督学习、非监督学习、半监督学习、强化学习,这里主要认识监督学习。则监督学习方法为:假设给定的有限的数据符合独立同分布,待学习的模型属于某函数集合(假设空间),应用某个评价准则,从假设空间中选取一个最优模型,对已知的训练数据和未知的测试数据在评价准则下有最优的预测。 最优模型的选择由算法实现。
ps2 监督学习方法主要包括用于分类(输出为有限离散的)、标注(输入输出均为变量序列的预测问题)、回归(输入输出均为连续的)问题的方法。
ps3 统计学习方法三要素:
模型model | 策略strategy | 算法algorithm |
---|---|---|
假设空间 | 评价准则 | 模型的学习算法 |
- 统计学习的研究:统计学习方法、统计学习理论、统计学习应用三方面的研究。
- 统计学的的重要性:略。
1.2 监督学习
1.2.1 基本概念
【实例instance】:每个具体的输入,通常由特征向量(feature vector) 表示。这时所有特征向量存在的空间称为特征空间(feature space),每一维对应一个特征。模型实际上都是定义在特征空间上的。
【输入(出)空间(input|output space)】:所有可能的输入(出)取值集合。可有限也可无限,入>=出。有时假设输入空间和特征空间相同,有时则需要区分。
【样本(点)(sample)】:输入输出对(x,y)组成。
【联合概率分布】:假设输入输出的随机变量X、Y遵循联合概率分布P(X,Y)。训练数据和测试数据假设为符合联合概率分布P(X,Y)的独立分布。
【假设空间(hypothesis space)】:模型的集合
F
\mathcal{F}
F。假设空间的确定意味着学习范围的确定。
ps 监督学习的模型可以是概率模型,也可以是非概率模型。由条件概率分布P(Y|X)或决策函数Y=f(X)表示。
1.3 统计学习三要素
方法=模型+策略+算法
1.3.1 模型
在监督学习中,模型就是所要学习的条件概率分布或决策函数。
F
=
{
f
∣
Y
=
f
θ
(
X
)
,
θ
∈
R
n
}
\mathcal{F}=\{ {f|Y=f_{\theta}(X), \theta \in \bf R^n} \}
F={f∣Y=fθ(X),θ∈Rn}
F
=
{
P
∣
P
θ
(
Y
∣
X
)
,
θ
∈
R
n
}
\mathcal{F}=\{ {P|P_{\theta}(Y|X), \theta \in \bf R^n} \}
F={P∣Pθ(Y∣X),θ∈Rn}
【参数空间】:参数向量
θ
\theta
θ取值于n维欧氏空间
R
n
\bf R^n
Rn,称为参数空间。
ps 由决策函数表示的模型称为非概率模型,由条件概率表示的模型称为概率模型。
1.3.2 策略
按照什么样的准则学习或选择最优模型。
1)损失函数和风险函数
一般用损失函数(loss function)或代价函数(cost function)来度量预测错误的程度。
【损失函数(loss function)】: 预测值
f
(
X
)
f(X)
f(X)和真实值
Y
Y
Y的非负实值函数,记作
L
(
Y
,
f
(
X
)
)
L(Y,f(X))
L(Y,f(X))
常见的损失函数:
(1) 0-1损失函数(0-1 loss function)
L
(
Y
,
f
(
X
)
)
=
{
1
,
Y
≠
f
(
X
)
0
,
Y
=
f
(
X
)
L(Y,f(X))=\left\{\begin{aligned}1, Y\neq f(X)\\0, Y = f(X)\end{aligned}\right.
L(Y,f(X))={1,Y=f(X)0,Y=f(X)
(2)平方损失函数(quadratic loss function)
L
(
Y
,
f
(
X
)
)
=
(
Y
−
f
(
X
)
)
2
L(Y,f(X))=(Y-f(X))^2
L(Y,f(X))=(Y−f(X))2
(3)绝对损失函数(absolute loss function)
L
(
Y
,
f
(
X
)
)
=
∣
Y
−
f
(
X
)
∣
L(Y,f(X))=|Y-f(X)|
L(Y,f(X))=∣Y−f(X)∣
(4)对数损失函数(logarithmic loss function)
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
)
d
x
d
y
R_{exp}(f)=E_{p}[L(Y,f(X))]=\int_{x\times 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
上式称为 【风险函数(risk function)】 或 【期望损失(expected loss)】
ps 希望选择风险函数最小的模型,但是
P
(
X
,
Y
)
P(X,Y)
P(X,Y)未知,所以监督学习成为一个病态问题(ill-formed problem)。
【经验风险(empirical risk)】 或 【经验损失(empirical loss)】:模型关于训练数据集的平均损失,记作
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))
ps 根据大数定律,当样本容量
N
N
N趋近无穷时,
R
e
x
p
(
f
)
R_{exp}(f)
Rexp(f)趋近于
R
e
m
p
(
f
)
R_{emp}(f)
Remp(f)。
但现实
N
N
N往往很小,所有直接用经验风险估计期望风险效果不理想,要对经验风险进行矫正。监督学习有两个策略:经验风险最小化和结构风险最小化。
2) 经验风险最小化与结构风险最小化
【经验风险最小化(empirical risk minimization, ERM)】:经验风险最小的模型就是最优模型。
求最优模型即为求解最优问题:
min
f
∈
F
1
N
∑
i
=
1
N
L
(
y
i
,
f
(
x
i
)
)
\min_{f\in{\mathcal F}}\frac{1}{N}\sum_{i=1}^{N}{L(y_{i},f(x_{i}))}
f∈FminN1i=1∑NL(yi,f(xi))
样本容量
N
N
N很小的时候,会产生**过拟合(over-fitting)**现象。
【结构风险最小化(structural risk minimization, SRM)】:等价于正则化(regularizer),在经验风险上加上表示模型复杂度的正则化项或罚项,可避免过拟合。结构风险定义: 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)
1.3.3 算法
学习模型的具体计算方法。用什么样的计算方法求解最优模型。这一步,统计学习问题归结为最优化问题,目标是找到求解最优化问题的算法,即最优化算法。
1.4 模型估计与模型选择
【训练误差(training error)】:模型 Y = f ^ ( X ) Y=\hat {f}(X) Y=f^(X)关于训练数据集的平均损失: R e m p ( f ^ ) = 1 N ∑ i = 1 N L ( y i , f ^ ( x i ) ) R_{emp}(\hat{f})=\frac{1}{N}\sum_{i=1}^{N}{L(y_{i},\hat{f}(x_{i}))} Remp(f^)=N1i=1∑NL(yi,f^(xi))
【测试误差(test error)】:模型
Y
=
f
^
(
X
)
Y=\hat {f}(X)
Y=f^(X)关于测试数据集的平均损失:
R
t
e
s
t
(
f
^
)
=
1
N
′
∑
i
=
1
N
′
L
(
y
i
,
f
^
(
x
i
)
)
R_{test}(\hat{f})=\frac{1}{N^{\prime}}\sum_{i=1}^{N^{\prime}}{L(y_{i},\hat{f}(x_{i}))}
Rtest(f^)=N′1i=1∑N′L(yi,f^(xi))
ps 通常将学习方法对未知数据的预测能力称为泛化能力(generalization ability)
ps选择模型要于真模型的参数个数相同,参数向量与真模型的参数向量相近。
【过拟合(over-fitting)】:一味追求提高对训练数据的预测能力,所选模型的复杂度会比真模型更高。会出现对已知数据预测很好,对未知数据预测很差。
ps 选择复杂度适当的模型,以使测试误差最小为目的。
1.5 正则化与交叉验证
【正则化(regularization)】:模型选择的典型方法,实现结构风险最小化策略:
min
f
∈
F
1
N
∑
i
=
1
N
L
(
y
i
,
f
(
x
i
)
)
+
λ
J
(
f
)
\min_{f\in{\mathcal 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)
后面一项为正则化项,可以为参数向量的
L
1
L_{1}
L1、
L
2
L_{2}
L2范数。正则化符合奥卡姆剃刀原理。从贝叶斯估计的角度来看,正则化项对应于模型的先验概率。可以假设复杂的模型有较小的先验概率,简单的模型有较大的先验概率。(没看懂这一句!!!没理解!!)
【交叉验证(over-fitting)】 :另一种常用的模型选择方法。若样本充足,随机将数据集切分成三份:训练集、验证集、测试集。训练集用来训练模型,验证集用于模型选择,测试集用于最终对学习方法的评估。选择对验证集有最小预测误差的模型。 由于验证集有足够多数据,用它对模型进行选择也是有效的。但往往实际数据是不够的,因此采用交叉验证方法。
- 简单交叉验证:
1) 随机分成两部分(7:3),2) 用训练集在各种条件下(如不同参数个数)训练模型,得到不同的模型结果;3) 在测试集上评价各模型的测试误差,选出测试误差最小的模型。 -
S
S
S折交叉验证(S-fold cross validation):
应用最多,1) 随机等分成S份,2) 用S-1份数据集训练模型,得到不同的模型结果;3) 利用剩下的数据集测试模型,4) 将这一过程对可能的S种选择重复进行,5) 选出S次评测钟平均测试误差最小的模型。 - 留一交叉验证:
S=N时的 S S S折交叉验证,在数据缺乏的情况下使用。
1.6 泛化能力
由某一方法学习到的模型对未知数据的预测能力。现实中常采用测试误差来衡量,但它依赖测试集,评价结果不可靠。
【泛化误差(generalization error)】:所学到的模型的期望风险。
1.7 生成模型与判别模型
略
1.8 监督学习应用
1.8.1 分类问题
略
1.8.2 标注问题
略
1.8.3 回归问题
略
课后习题
1.1
解:
设随机变量X服从参数为p的伯努利分布,这里p是待估参数(0<p<1)。随机变量X的分布列为
P
{
X
=
x
}
=
p
x
(
1
−
p
)
1
−
x
P\{ X=x\} = p^{x}(1-p)^{1-x}
P{X=x}=px(1−p)1−x,这里x=0或1,0<P<1。
设
(
X
1
,
X
2
,
.
.
,
X
n
)
(X_{1},X_{2},..,X_{n})
(X1,X2,..,Xn)与
x
1
,
x
2
,
.
.
,
x
n
x_{1},x_{2},..,x_{n}
x1,x2,..,xn 分别为从总体出取出的容量为n的样本及其观测值,考虑到n次试验中有k次的结果为1,则
∑
i
=
1
N
x
i
=
k
\sum_{i=1}^{N}{x_{i}=k}
∑i=1Nxi=k。
三要素:模型、策略、算法
两种方法 | 模型model | 策略strategy | 算法algorithm |
---|---|---|---|
极大似然估计 | 条件概率 | 结构风险最小化 | 求数值解 |
贝叶斯估计 | 条件概率 | 结构风险最小化 | 求解析解 |
极大似然估计:
L
(
θ
)
=
Π
i
=
1
N
p
(
A
i
)
=
θ
k
(
1
−
θ
)
n
−
k
L(\theta)=\mathop{\Pi}\limits_{i=1}^{N}p(A_{i})=\theta^{k}(1-\theta)^{n-k}
L(θ)=i=1ΠNp(Ai)=θk(1−θ)n−k
θ
^
=
k
n
\hat\theta=\frac{k}{n}
θ^=nk
贝叶斯估计:
P
(
θ
∣
Y
1
,
Y
2
,
.
.
.
,
Y
n
)
=
P
(
Y
1
,
Y
2
,
.
.
.
,
Y
n
∣
θ
)
P
(
θ
)
P
(
Y
1
,
Y
2
,
.
.
.
,
Y
n
)
P(\theta|Y_{1},Y_{2},...,Y_{n})=\frac{{P(Y_{1},Y_{2},...,Y_{n}|\theta)}{P(\theta)}}{P(Y_{1},Y_{2},...,Y_{n})}
P(θ∣Y1,Y2,...,Yn)=P(Y1,Y2,...,Yn)P(Y1,Y2,...,Yn∣θ)P(θ)
根据先验概率和估计后验概率,使后验概率最大化。
所以贝叶斯估计得到的概率取决于所选择的先验分布。
1.2
证明: