1.1 统计学习
1.统计学习的特点
统计学习(statistical learning)是关于计算机基于数据构建概率统计模型与运用模型进行预测与分析的一门学科,又称统计机器学习(statistical machine learning)。
统计学习的主要特点:
(1)以计算机和网络为平台,建立在计算机网络之上;
(2)统计学习以数据为研究对象,是数据驱动的科学;
(3)统计学习的目的是对数据进行预测与分析;
(4)统计学习以方法为中心,统计学习方法构建模型并应用模型进行预测与分析;
(5)统计学习是概率论、统计学、信息论、计算理论、最优化理论及计算机科学等多个领域的交叉学科,并在发展中形成独自的理论体系与方法论。
2.统计学习的方法
统计学习的方法是基于数据构建统计模型从而对数据进行预测和分析。
关于监督学习:从训练数据(training data)集合出发,假设数据独立同分布,假设要学习的模型属于某个函数的集合,成为假设空间(hypothesis space),应用某个评价准则(evaluation criterion),从假设空间选择一个最优的模型,对数据在评价准则下进行预测,最优模型的选取由算法实现。
统计学习的三要素:模型(model)、策略(strategy)、算法(algorithm)
统计学习方法的步骤:
(1)样本数据集合;
(2)确定假设空间,及学习模型的集合;
(3)确定模型选择的准则,即学习的策略;
(4)实现求解最优模型的算法,即学习的算法;
(5)通过学习方法选择最优模型;
(6)利用学习的最优模型对新数据进行预测或分析。
1.2 监督学习
1.2.1 基本概念
1. 输入空间、特征空间与输出空间
2.联合概率分布
3.假设空间
1.2.2 问题的形式化
1.3 统计学习三要素
方法=模型+策略+算法
1.3.1 模型
1.3.2 策略
1.损失函数和风险函数
(1)0-1损失函数(0-1 loss function)
L ( Y , f ( X ) ) = { 1 , Y ≠ f ( X ) 0 , Y = f ( X ) L(Y,f(X))=\begin{cases} 1,& Y\neq f(X)\\ 0,&Y=f(X) \end{cases} L(Y,f(X))={1,0,Y̸=f(X)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)
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))
其中,
F
\mathcal{F}
F是假设空间。
极大似然估计(maximum likelihood estimation)是经验风险最小化的一个例子。
结构风险最小化(structural risk minimization,SRM)是为了防止过拟合而提出来的策略。
结构风险最小化等价于正则化(regularization)。结构风险在经验风险上加上表示模型的复杂度的正则化项(regularization)或罚项(penalty term)。
1.3.3 算法
统计学习问题归结为最优化问题,统计学习的算法成为求解最优化问题的算法。若最优化问题有显示解,问题则比较简单,若显示解不存在,则需要用到数值计算的方法。
1.4 模型评估与模型选择
1.4.1 训练误差与测试误差
学习方法评估的标准:基于损失函数的模型的训练误差(training error)和模型的测试误差(test error)。
假设学习到的模型
Y
=
f
^
(
X
)
Y=\hat{f}(X)
Y=f^(X),训练误差是
Y
=
f
^
(
X
)
Y=\hat{f}(X)
Y=f^(X)关于训练数据集的平均损失:
R
e
m
p
f
^
(
X
)
=
1
N
∑
i
=
1
n
L
(
y
i
,
f
^
(
x
i
)
)
R_{emp}\hat{f}(X)=\frac{1}{N}\sum_{i=1}^n L(y_i,\hat{f}(x_i))
Rempf^(X)=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_{i=1}^{N'}L(y_i,\hat{f}(x_i))
etest=N′1i=1∑N′L(yi,f^(xi))
其中
N
′
N'
N′是测试样本容量。
当损失函数是0-1损失时,测试误差就变成了常见的测试数据集上的误差率(error rate)
e
t
e
s
t
=
1
N
′
∑
i
=
1
N
′
I
(
y
i
≠
f
^
(
x
i
)
)
e_{test}=\frac{1}{N'}\sum_{i=1}^{N'}I(y_i\neq\hat{f}(x_i))
etest=N′1i=1∑N′I(yi̸=f^(xi))
这里的
I
I
I是指示函数,即
y
≠
f
^
(
x
i
)
y\neq\hat{f}(x_i)
y̸=f^(xi)时为1,否则为0。
测试数据集的**准确率(accuracy)**为
t
t
e
s
t
=
1
N
′
∑
i
=
1
N
′
I
(
y
i
≠
f
^
(
x
i
)
)
t_{test}=\frac{1}{N'}\sum_{i=1}^{N'}I(y_i\neq\hat{f}(x_i))
ttest=N′1i=1∑N′I(yi̸=f^(xi))
显然,
r
t
e
s
t
+
e
t
e
s
t
=
1
r_{test}+e_{test}=1
rtest+etest=1
1.4.2 过拟合与模型选择
过拟合(over-fitting):学习时选择的模型所包含的参数过多,以至于出现这一模型对已知数据预测得很好,但对未知数据预测的很差的现象,所选模型的复杂度比真模型更高。
1.5 正则化与交叉验证
1.5.1 正则化
模型选择的典型方法是正则化(regularization),正则化是结构风险最小化决策略的实现,是在经验风险上加上一个正则化项(regularizer)或罚项(penalty term)。
正则化的一般形式:
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)
第1项为经验风险,第2项为正则化项。
λ
≥
0
\lambda\geq0
λ≥0为调整两者之间关系的系数。
正则化项可以取不同的形式,
L
2
L_2
L2范数:
min
f
∈
F
1
N
∑
i
=
1
n
L
(
y
i
,
f
(
x
i
)
)
+
λ
2
∣
∣
w
∣
∣
2
\min_{f\in\mathcal{F}}\frac{1}{N}\sum_{i=1}^n L(y_i,f(x_i))+\frac{\lambda}{2} ||w||^2
f∈FminN1i=1∑nL(yi,f(xi))+2λ∣∣w∣∣2
L
1
L_1
L1范数:
min
f
∈
F
1
N
∑
i
=
1
n
L
(
y
i
,
f
(
x
i
)
)
+
λ
∣
∣
w
∣
∣
1
\min_{f\in\mathcal{F}}\frac{1}{N}\sum_{i=1}^n L(y_i,f(x_i))+{\lambda}||w||_1
f∈FminN1i=1∑nL(yi,f(xi))+λ∣∣w∣∣1
1.5.2 交叉验证
另一种选择模型的方法为交叉验证(cross validation)
- 简单交叉验证
- S折交叉验证
- 留一交叉验证
1.6 泛化误差
1.6.1 泛化误差
若学到的模型为
f
^
\hat{f}
f^,用此模型对未知数据预测的误差即为泛化误差(generalization error)
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}(\hat{f})=E_p[L(Y,\hat{f}(X))]=\int_{\mathcal{X}\times\mathcal{Y}}L(y,\hat{f}(X))P(x,y)dxdy
Rexp(f^)=Ep[L(Y,f^(X))]=∫X×YL(y,f^(X))P(x,y)dxdy
1.6.2 泛化误差上界
1.7 生成模型和判别模型
监督学习方法又可分为生成方法(generative approach)和判别方法(discriminative approach).
生成模型:
P
(
X
∣
Y
)
=
P
(
X
,
Y
)
P
(
X
)
P(X|Y)=\frac{P(X,Y)}{P(X)}
P(X∣Y)=P(X)P(X,Y)
典型的生成模型:朴素贝叶斯和隐马尔科夫模型
典型的判别模型:K近邻、感知机、决策树、逻辑斯蒂回归、最大熵模型、支持向量机、提升方法和条件随机场。
1.8 分类问题
二分类问题常用的评价指标:分类准确率(accuracy)、精确率(precision)、召回率(recall)
TP——将正类预测为正类数;
FN——将正类预测为负类数;
FP——将负类预测为正类数;
TN——将负类预测为负类数;
精确率:
P
=
T
P
T
P
+
F
P
P=\frac{TP}{TP+FP}
P=TP+FPTP
召回率:
P
=
T
P
T
P
+
F
N
P=\frac{TP}{TP+FN}
P=TP+FNTP
F
1
F_1
F1值:精确率和召回率的调和均值,即
2
F
1
=
1
P
+
1
R
\frac{2}{F_1}=\frac{1}{P}+\frac{1}{R}
F12=P1+R1
F
1
=
2
T
P
2
T
P
+
F
P
+
F
N
F_1=\frac{2TP}{2TP+FP+FN}
F1=2TP+FP+FN2TP
1.9 标注问题
标注(tagging)是监督学习问题,是分类问题的一个推广,是更复杂的结构预测(structure prediction)问题的简单形式。
评价标注模型的指标:标注准确率、精确率、召回率
常用的统计学习方法:隐马尔科夫链、条件随机场
1.10 回归问题
回归问题的常用损失函数:平法损失函数,最小二乘法求解。