第1章 统计学习及监督学习概论 3
1.1 统计学习 3
1.统计学习的特点
统计学习是关于计算机基于数据构建概率统计模型并运用 模型对数据进行预测与分析的一 门学科。统计学习也称为统计机器学习。
统计学习的主要特点是:
(1)统计学习以计算机及网络为平台,是建立在计算机 及网络上的;
(2)统计学习以数据为研究对象,是数据驱动的学科;
(3) 统计学习的目的是对数据进行预测与分析;
(4)统计学习以方法为中心,统计学习方法构建模型井 应用模型进行预测与分析;
(5)统计学习是概率论、统计学、信息论、计算理论、最优化理论及计算机科学等多个领域的交叉学科,并且在发展中逐步形成独自的理论体系与方法论。
2.统计学习的对象
统计学习研究的对象是数据 (data)。统计学习关于数据的基本假设是同类数据具有一定的统计规律性,这是统计学习的前提 。
3.统计学习的目的
统计学习用于对数据的预测与分析,特别是对未知新数据的预测与分析。对数据的预测与分析是通过构建概率统计模型实现的。
4.统计学习的方法
统计学习的方法是基于数据构建概率统计模型从而对数据进行预测与分析。统计学习由监督学习(supervised learning)、无监督学习(unsupervised learning)和强化学习(reinforcement learning)等组成。
实现统计学习方法的步骤如下:
(1)得到一个有限的训练、数据集合;
(2)确定包含所有可能的模型的假设空间,即学习模型的集合;
(3)确定模型选择的准则,即学习的策略;
(4)实现求解最优模型的算法,即学习的算法;
(5)通过学习方法选择最优模型;
(6)利用学习的最优模型对新数据进行预测或分析。
5.统计学习的研究
统计学习研究一般包括统计学习方法、统计学习理论及统计学习应用三个方面。
6 统计学习的重要性
统计学习学科在科学技术中的重要性主要体现在以下几个方面:
(1)统计学习是处理海量数据的有效方法。
(2)统计学习是计算机智能化的有效手段。
(3)统计学习是计算机科学发展的一个重要组成部分。
1.2 统计学习的分类 5
统计学习或机器学习一般包括监督学习、无监督学习、强化学习。有时还包括半 监督学习、主动学习。
1.2.1 基本分类
1.监督学习
监督学习(supervised learning)是指从标注数据中学习预测模型的机器学习问题。监督学习的本质是学习输入到输出的映射的统计规律。
(1)输入空间、特征空间和输出空间
在监督学习中,将输入与输出所有可能取值的集合分别称为输入空间(input space)与输出空间(output space)。每个具体的输入是一个实例(jnstance),通常由特征向量(feature vector)表示。 这时,所有特征向量存在的空间称为特征空间(feature space)。输入实例 z 的特征向量记作
x
=
(
x
(
1
)
,
x
(
2
)
,
⋅
⋅
⋅
,
x
(
i
)
,
⋅
⋅
⋅
,
x
(
n
)
)
T
x = (x^{(1)},x^{(2)},···,x^{(i)},···,x^{(n)})^T
x=(x(1),x(2),⋅⋅⋅,x(i),⋅⋅⋅,x(n))T
训练集通常表示为
T
=
{
(
x
1
,
y
1
)
,
(
x
2
,
y
2
)
,
⋅
⋅
⋅
,
(
x
N
,
y
N
)
}
T = \left\{(x_1,y_1),(x_2,y_2),···,(x_N,y_N)\right\}
T={(x1,y1),(x2,y2),⋅⋅⋅,(xN,yN)}
:输入变量与输出变量 均为连续变量的预测问题称为回归问题,输出变量为有限个离散变量的预测问题称为分类问题,输入变量与输出变量均为变量序列的预测问题称为标注问题。
(2)联合概率分布
监督学习假设输入与输出的随机变量 X 和 Y 遵循联合概率分布
P
(
X
,
Y
)
P(X,Y)
P(X,Y)。
P
(
X
,
Y
)
P(X,Y)
P(X,Y) 表示分布函数,或分布密度函数。
(3)假设空间
模型属于由输入空间到输出空间 的映射的集合,这个集合就是假设空间(hypothesis space)。假设空间的确定意味着 学习的范围的确定。
(4)问题的形式化
监督学习分为学习和预测两个过程,由学习系统与预测系统完成:
2. 无监督学习
无监督学习(unsupervised learning)是指从无标注数据中学习预测模型的机器 学习问题。无 监督学习的本质是学习数据中的统计规律或潜在结构。
无监督学习通常使用大量的无标注数据学习或训练,每一个样本是一个实例。无监督学习可以用于对己有数据的分析,也可以用于对未来数据的预测。
3.强化学习
强化学习(reinforcement learning)是指智能系统在与环境的连续互动中学习最优行为策略的机器学习问题。强化学习的本质是学习最优的序贯决策。
强化学习的马尔可夫决策过程是状态、奖励、动作序列上的随机过程,由五元组
<
S
,
A
,
P
,
r
,
γ
>
<S,A,P,r,\gamma>
<S,A,P,r,γ> 组成。
•
S
S
S 是有限状态的集合
•
A
A
A 是有限动作的集合
•
P
P
P 是状态转移概率 函数:
P
(
s
′
∣
s
,
a
)
=
P
(
s
t
+
1
=
s
′
∣
s
t
=
s
,
a
t
=
a
)
P(s'|s,a) = P(s_{t+1} = s'|s_t = s,a_t = a)
P(s′∣s,a)=P(st+1=s′∣st=s,at=a)
•
r
r
r 是奖励函数:
r
(
s
,
a
)
=
E
(
r
t
+
1
∣
s
t
=
s
,
a
t
=
a
)
r(s,a) = E(r_{t+1}|s_t = s, a_t =a)
r(s,a)=E(rt+1∣st=s,at=a)
•
γ
\gamma
γ 是衰减系数:
γ
∈
[
0
,
1
]
γ\in[0,1]
γ∈[0,1]
4. 半监督学习与主动学习
半监督学习(semi-supervised learning)是指利用标注数据和未标注数据学习预测模型的机器学习问题。
主动学习(active learning)是指机器不断主动给出实例让教师进行标注,然后利 用标注数据学习预测模型的机器学习问题。
1.2.2 按模型分类
1 概率模型与非概率模型
在监督学习中,概率模型取条件概率分布形式 P ( y ∣ x ) P(y|x) P(y∣x), 非概率模型取函数形式 y = f ( x ) y=f(x) y=f(x), 其中 z z z 是输入, y y y 是输出。在无监督学习中,概率模型取条件概率分布形式 P ( z ∣ x ) P(z|x) P(z∣x) 或 P ( x ∣ z ) P(x|z) P(x∣z), 非概率模型取函数形式 z = g ( x ) z = g(x) z=g(x), 其中 x x x 是输入, z z z 是输出。在监督学习中,概率模型是生成模 型,非概率模型是判别模型。
概率模型:决策树、朴素贝叶斯、隐马尔可夫模型、条件随机场、概率潜在语 义分析、潜在狄利克雷分配、高斯混合模型。
非概率模型:感知机、支持向量机、k 近邻、AdaBoost、k 均值、潜在语义分析,以及神经网络。
概率模型和非概率模型的区别在于模型的内在结构。概率模型一定可以表示为联合概率分布的形式,其中的变量表示输入、输出、隐变量甚至参数。而针对非概率模型则不一定存在这样的联合概率分布。
概率模型的代表是概率图模型。概率图模型是联合概率分布由有向图或者无向图表示的概率模型,而联合概率分布可以根据图的结构分解为因子乘积的形式。贝叶斯网络、马尔可夫随机场、条件随机场是概率图模型。无论模型如何复杂,均可以用最基本的加法规则和乘法规则进行概率推理。
2. 线性模型与非线I性模型
如果函数
y
=
f
(
x
)
y = f(x)
y=f(x) 或
z
=
g
(
x
)
z = g(x)
z=g(x) 是线性函数,则称模型是线性模型,否则称模型是非线性模型。
线性模型:感知机、线性支持向量机、k 近邻、k 均值、潜在语义分析。
非线性模型:核函数支持向量机、AdaBoost、神经网络。
3. 参数化模型与非参数化模型
参数化模型假设模型参数的维度固定,模型可以由有限维参数完全刻画;非参数化模型假设模型参数的维度不固定或者说无穷大,随着训练数据量的 增加而不断增大。
参数化模型:感知机、朴素贝叶斯、逻辑斯谛回归、k 均值、高斯混合模型。
非参数化模型:决策树、支持向量机、 AdaBoost、 k 近邻、潜在语义分析、概率潜在语义分析、 潜在狄利克雷分配。
1.2.3 按算法分类
在线学习是指每次接受一个样本,进行预测,之后学习模型,并不断重复 该操作的机器学习。与之对应,批量学习一次接受所有数据,学习模型,之后进行预测。
在线的监督学习:学习和预测在一个系统,每次接受一个输入问,用己有模型给出预测
f
^
(
X
t
)
\hat{f}(X_t)
f^(Xt), 之后得到相应的反馈,即该输入对应的输出
y
t
y_t
yt;系统用损失函数计算两者的差异,更新模型;并不断重复以上操作。
1.2.4 按技巧分类
1.贝叶斯学习
在概率模型的学习和推理中,利用贝 叶斯定理,计算在给定数据条件下模型的条件概率,即后验概率,并应用这个原理进 行模型的估计,以及对数据的预测。将模型、未观测要素及其参数用变量表示,使用 模型的先验分布是贝叶斯学习的特点。
朴素贝叶斯、潜在狄利克雷分配的学习属于贝叶斯学习。
2. 核方法
核方法是使用核函数表示和学习非线性模型的一种机器学习方 法,可以用于监督学习和无监督学习。
核函数支持向量机,以及核 PCA、核 k 均值属于核方法。
1.3 统计学习方法三要素 15
方 法 = 模 型 + 策 略 + 算 法 方法=模型+策略+算法 方法=模型+策略+算法
1.3.1 模型
模型的假设空间包含所有可能的条件概率分布或决策函数。
参数向量
θ
\theta
θ 取值于
n
n
n 维欧氏空间
R
n
R^n
Rn,称为参数空间。
假设空间可以定义为决策函数的集合:
F = { f ∣ Y = f ( X ) } \mathcal{F} = \left\{f|Y = f(X)\right\} F={f∣Y=f(X)}
这时
F
\mathcal{F}
F 通常是由一个 参数向量决定的函数族:
F
=
{
f
∣
Y
=
f
θ
(
X
)
,
θ
∈
R
n
}
\mathcal{F} = \left\{f|Y = f_{\theta}(X),\theta\in R^n \right\}
F={f∣Y=fθ(X),θ∈Rn}
假设空间也可以定义为条件概率的集合:
F
=
{
P
∣
P
(
Y
∣
X
)
}
\mathcal{F} = \left\{P|P(Y|X)\right\}
F={P∣P(Y∣X)}
这时
F
\mathcal{F}
F 通常是由 一个参数向量决定的条件概率分布族:
F
=
{
P
∣
P
θ
(
Y
∣
X
)
,
θ
∈
R
n
}
\mathcal{F} = \left\{P|P_{\theta}(Y|X),\theta\in R^n\right\}
F={P∣Pθ(Y∣X),θ∈Rn}
由决策函数表示的模型为非概率模型,由条件概率表示的模型为概率模型。
1.3.2 策略
1.损失函数和风险函数
损失函数(代价函数):度量预测错误的程度。
(1)0-1 损失函数
L
(
Y
,
f
(
X
)
)
=
{
1
,
Y
≠
f
(
X
)
0
,
Y
=
f
(
X
)
L(Y,f(X)) =\left\{ \begin{array}{rcl} 1, & & Y\neq f(X)\\ 0, & & Y=f(X) \end{array} \right.
L(Y,f(X))={1,0,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))2
(3)绝对损失函数
L
(
Y
,
f
(
X
)
)
=
∣
Y
−
f
(
X
)
∣
L(Y,f(X)) = |Y-f(X)|
L(Y,f(X))=∣Y−f(X)∣
(4)对数损失函数(对数似然损失函数)
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)
损失函数值越小,模型就越好。由于模型的输入、输出
(
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
\begin{aligned}R_{exp}(f) &= E_P[L(Y, f(X))] \\ &=\int_{\mathcal{X}\times\mathcal{Y}} L(y,f(X))P(x,y)dxdy \end{aligned}
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)的平均意义下的损失,称为风险函数或期望损失。
2.经验风险最小化与结构风险最小化
经验风险最小化的策略认为,经验风险最小的模型是最优的模型。根据这一策略,按照经验风险最小化求最优模型就是求解最优化问题:
min
f
=
F
1
N
∑
i
=
1
N
L
(
y
i
,
f
(
x
i
)
)
\min\limits_{f=\mathcal{F}} \frac{1}{N}\sum\limits_{i=1}^{N}L(y_i,f(x_i))
f=FminN1i=1∑NL(yi,f(xi))
当模型是条件概率分布、损失函数是对数损失函数时,经验风险最小化就等价于极大似然估计。 当样本容量很小时,经验风险最小化学习的效果就未必很好,会产生"过拟合"现象。
结构风险最小化是为了防止过拟合而提出来的策略:
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\limits_{i=1}^{N}L(y_i,f(x_i)) + \lambda J(f)
Rsrm(f)=N1i=1∑NL(yi,f(xi))+λJ(f)
贝叶斯估计中的最大后验概率估计就是结构风险最小化的一个例子。当模型是条件概率分布、损失函数 是对数损失函数、模型复杂度由模型的先验概率表示时,结构风险最小化就等价于最大后验概率估计。
结构风险最小化的策略认为结构风险最小的模型是最优的模型。所以求最优模型,就是求解最优化问题:
min
f
=
F
1
N
∑
i
=
1
N
L
(
y
i
,
f
(
x
i
)
)
+
λ
J
(
f
)
\min\limits_{f=\mathcal{F}} \frac{1}{N}\sum\limits_{i=1}^{N}L(y_i,f(x_i)) + \lambda J(f)
f=FminN1i=1∑NL(yi,f(xi))+λJ(f)
1.3.3 算法
算法是指学习模型的具体计算方法。统计学习基于训练数据集,根据学习策略, 从假设空间中选择最优模型,最后需要考虑用什么样的计算方法求解最优模型。
1.4 模型评估与模型选择 19
1.4.1 训练误差与测试误差
训练误差是模型
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\limits_{i=1}^{N}L(y_i,\hat{f}(x_i))
Remp(f^)=N1i=1∑NL(yi,f^(xi))
其中 N N N是训练样本容量。
测试误差是模型
Y
=
f
^
(
X
)
Y = \hat{f}(X)
Y=f^(X) 关于测试数据集的平均损失:
e
t
e
s
t
=
1
N
′
∑
i
=
1
N
′
L
(
y
i
,
f
^
(
x
i
)
)
e_{test}=\frac{1}{N^{'}}\sum\limits_{i=1}^{N^{'}}L(y_i,\hat{f}(x_i))
etest=N′1i=1∑N′L(yi,f^(xi))
其中 N ′ N^{'} N′是测试样本容量。
1.4.2 过拟合与模型选择
过拟合:如果一味追求提高对训练数据的预测能力,所选模型的复杂度则往往会比真模型更高。
在学习时就要防止过拟合,进行最优的模型选择,即选择复杂度适当的模型,以达到使测试误差最小的学习目的。
1.5 正则化与交叉验证 23
1.5.1 正则化
正则化是结构风险最小化策略的实现,是在经验风险上加一个正则化项或罚项。
正则化化一般具有如下形式:
min
f
=
F
1
N
∑
i
=
1
N
L
(
y
i
,
f
(
x
i
)
)
+
λ
J
(
f
)
\min\limits_{f=\mathcal{F}} \frac{1}{N}\sum\limits_{i=1}^{N}L(y_i,f(x_i)) + \lambda J(f)
f=FminN1i=1∑NL(yi,f(xi))+λJ(f)
1.5.2 交叉验证
交叉验证的基本想法是重复地使用数据;把给定的数据进行切分,将切分的数据集组合为训练集与测试集,在此基础上反复地进行训练、测试以及模型选择。
1.简单交叉验证
简单交叉验证方法是:首先随机地将己给数据分为两部分, 一部分作为训练集, 另一部分作为测试集;然后用训练集在各种条件下训练模型,从而得到不同的模型;在测试集上评价各个模型的测试误差,选出测试误差最小的模型。
2.S折交叉验证
应用最多的是 S S S 折交叉验证,方法如下:首先随机地将 已给数据切分为 S S S 个互不相交、大小相同的子集;然后利用 S − 1 S-1 S−1 个子集的数据训练 模型,利用余下的子集测试模型:将这一过程对可能的 S S S 种选择重复进行;最后选出 S S S 次评测中平均测试误差最小的模型。
3. 留一交叉验证
S S S 折交叉验证的特殊情形是 S = N S = N S=N, 称为留一交叉验证,往往在数据缺乏的情况下使用。这里, N N N 是给定数据集的容量。
1.6 泛化能力 24
1.6.1 泛化误差
学习方法的泛化能力是指由该方法学习到的模型对未知数据的预测能力,是学习方法本质上重要的性质。如果学到的模型是
f
^
\hat{f}
f^, 那么用这个模型对未知数据预测的误差即为泛化误差:
R
e
x
p
(
f
)
=
E
P
[
L
(
Y
,
f
^
(
X
)
)
]
=
∫
X
×
Y
L
(
y
,
f
^
(
X
)
)
P
(
x
,
y
)
d
x
d
y
\begin{aligned}R_{exp}(f) &= E_P[L(Y, \hat{f}(X))] \\ &=\int_{\mathcal{X}\times\mathcal{Y}} L(y,\hat{f}(X))P(x,y)dxdy \end{aligned}
Rexp(f)=EP[L(Y,f^(X))]=∫X×YL(y,f^(X))P(x,y)dxdy
1.6.2 泛化误差上界
学习方法的泛化能力分析往往是通过研究泛化误差的概率上界进行的,简称为泛化误差上界。
对二类分类问题,当假设空间是有限个函数的集合
F
=
{
f
1
,
f
2
,
⋅
⋅
⋅
,
f
d
}
\mathcal{F} = \left\{f_1,f_2,···,f_d\right\}
F={f1,f2,⋅⋅⋅,fd}时,对任意一个函数
f
∈
F
f\in\mathcal{F}
f∈F, 至少以概率
1
−
δ
1 - \delta
1−δ,
0
<
δ
<
1
0 < \delta < 1
0<δ<1,以下不等式成立:(Hoeffding不等式)
R
(
f
)
≤
R
^
(
f
)
+
ε
(
d
,
N
,
δ
)
R(f) \leq \hat{R}(f)+\varepsilon(d,N,\delta)
R(f)≤R^(f)+ε(d,N,δ)
其中,
ε
(
d
,
N
,
δ
)
=
1
N
(
log
d
+
log
1
δ
)
\varepsilon(d,N,\delta)=\sqrt{\frac{1}{N}(\log d+\log \frac{1}{\delta})}
ε(d,N,δ)=N1(logd+logδ1)
1.7 生成模型与判别模型 27
生成模型:
P
(
Y
∣
X
)
=
P
(
X
,
Y
)
P
(
X
)
P(Y|X)=\frac{P(X,Y)}{P(X)}
P(Y∣X)=P(X)P(X,Y)
判别模型:由数据直接学习决策函数 f ( X ) f(X) f(X) 或者条件概率分布 P ( Y ∣ X ) P(Y|X) P(Y∣X) 作为预测的模型。
生成方法的特点:生成方法可以还原出联合概率分布 P ( X , Y ) P(X,Y) P(X,Y) , 而判别方法则不能;生成方法的学习收敛速度更快,即当样本容量增加的时候,学到的模型可以更快地收敛于真实模型;当存在隐变量时,仍可以用生成方法学习,此时判别方法就不能用。
判别方法的特点:判别方法直接学习的是条件概率 P ( Y ∣ X ) P(Y|X) P(Y∣X) 或决策函数 f ( X ) f(X) f(X) ,直接面对预测,往往学习的准确率更高;由于直接学习 P ( Y ∣ X ) P(Y|X) P(Y∣X) 或 f ( X ) f(X) f(X), 可以对数据 进行各种程度上的抽象、定义特征并使用特征,因此可以简化学习问题。
1.8 监督学习应用 28
1.8.1 分类问题
评价分类器性能的指标一般是分类准确率。
- TP一一 将正类预测为正类数;
- FN一一 将正类预测为负类数;
- FP一一 将负类预测为正类数;
- TN一一将负类预测为负类数。
准确率:
P
=
T
P
T
P
+
F
P
P = \frac{TP}{TP+FP}
P=TP+FPTP
召回率:
R
=
T
P
T
P
+
F
N
R = \frac{TP}{TP+FN}
R=TP+FNTP
F
1
F_1
F1值:
2
F
1
=
1
P
+
1
R
⟺
F
1
=
2
T
P
2
T
P
+
F
P
+
F
N
\frac{2}{F_1} = \frac{1}{P}+\frac{1}{R} \Longleftrightarrow {F_1} = \frac{2TP}{2TP+FP+FN}
F12=P1+R1⟺F1=2TP+FP+FN2TP
许多统计学习方法可以用于分类,包括 k 近邻法、感知机、朴素贝叶斯法、决策树、决策列表、逻辑斯谛回归模型、支持向量机、提升方法、贝叶斯网络、神经网络、Winnow。
1.8.2 标注问题
标注常用的统计学习方法有:隐马尔可夫模型、条件随机场。
1.8.3 回归问题
回归问题按照输入变量的个数,分为一元回归和多元回归:按照输入变量和输出变量之间关系的类型即模型的类型,分为线性回归和非线性回归。回归学习最常用的损失函数是平方损失函数,在此情况下,回归问题可以由著名的最小二乘法求解。
习题 33
有空再补(×