统计机器学习导论
1.知识树
2.监督学习
2.1.监督学习的实现步骤
- 得到一个有限的训练数据集合
- 确定模型的假设空间,也就是所有的备选模型
- 确定模型选择的准则,即学习的策略
- 实现求解最优模型的算法
- 通过学习方法选择最优模型
- 利用学习的最优模型对新数据进行预测
2.2.监督学习数学定义
训练集:
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)}
实例
x
x
x的特征向量:
x
=
(
x
(
1
)
,
x
(
2
)
,
.
.
.
,
x
(
n
)
)
T
x={(x^{(1)},x^{(2)},...,x^{(n)})}^T
x=(x(1),x(2),...,x(n))T
模型:
种类一:
1)决策函数
Y
=
f
(
X
)
Y = f(X)
Y=f(X)
预测形式
y
=
f
(
x
)
y = f(x)
y=f(x)
种类二:
2)条件概率分布
P
(
Y
∣
X
)
P(Y|X)
P(Y∣X)
预测形式
arg
max
y
P
(
y
∣
x
)
\arg\max_y{P(y|x)}
argmaxyP(y∣x)
3.统计学习要素
3.1.要素1:模型(假设空间)
决策函数:
F
=
{
f
∣
Y
=
f
θ
(
X
)
,
θ
∈
R
n
}
F = \{f|Y = {f_\theta(X)},\theta\in\R^n\}
F={f∣Y=fθ(X),θ∈Rn}
条件概率分布:
F
=
{
P
∣
P
θ
(
Y
∣
X
)
,
θ
∈
R
n
}
F = \{P|{P_\theta(Y|X)},\theta\in\R^n\}
F={P∣Pθ(Y∣X),θ∈Rn}
3.2.要素2:策略**
0-1损失函数:
f
(
x
)
=
{
1
,
Y
≠
f
(
X
)
0
,
Y
=
f
(
X
)
f(x) = \left\{ \begin{matrix} 1,Y\neq{f(X)}\\ 0,Y={f(X)} \end{matrix} \right.
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)
经验风险最小化:
min
f
∈
F
1
N
∑
i
=
1
n
L
(
y
i
,
f
(
x
i
)
)
\min_{f\in{F}}{\frac{1}{N}{\sum_{i=1}^{n}{L(y_i,f(x_i))}}}
f∈FminN1i=1∑nL(yi,f(xi))
结构风险最小化:
min
f
∈
F
1
N
∑
i
=
1
n
L
(
y
i
,
f
(
x
i
)
)
+
λ
J
(
f
)
\min_{f\in{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.3.算法
4.模型评估与选择
4.1.训练误差
1 N ∑ i = 1 N L ( y i , f ^ ( x i ) ) {\frac{1}{N}{\sum_{i=1}^{N}{L(y_i,\hat{f}(x_i))}}} N1i=1∑NL(yi,f^(xi))
4.2.测试误差
1 N ′ ∑ i = 1 N ′ L ( y i , f ^ ( x i ) ) {\frac{1}{N^{'}}{\sum_{i=1}^{N^{'}}{L(y_i,\hat{f}(x_i))}}} N′1i=1∑N′L(yi,f^(xi))
5.正则化与交叉验证
5.1.正则化
最小化结构风险
min
f
∈
F
1
N
∑
i
=
1
n
L
(
y
i
,
f
(
x
i
)
)
+
λ
J
(
f
)
\min_{f\in{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)
5.2.交叉验证
数据集随机划分为以下3部分:
训练集:模型的训练
验证集:模型的选择
测试集:模型的评估
6.泛化能力
泛化误差上界
对于二分类问题,当假设空间是有限个函数的集合
F
=
{
f
1
,
f
2
,
.
.
.
,
f
d
}
F=\{f_1,f_2,...,f_d\}
F={f1,f2,...,fd}时,对任意一个函数
f
∈
F
f\in{F}
f∈F,至少以概率
1
−
σ
1-\sigma
1−σ,以下不等式成立:
R
(
f
)
≤
R
^
(
f
)
+
ξ
(
d
,
N
,
σ
)
R(f)\le{\hat{R}(f)+\xi(d,N,\sigma)}
R(f)≤R^(f)+ξ(d,N,σ)
其中,
ξ
(
d
,
N
,
σ
)
=
1
2
N
(
l
o
g
d
+
l
o
g
1
σ
)
\xi(d,N,\sigma) = \sqrt{\frac{1}{2N}(logd+log{\frac{1}{\sigma}})}
ξ(d,N,σ)=2N1(logd+logσ1)
7.生成模型与判别模型
生成方法
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
)
或
P
(
Y
∣
X
)
f(X)或P(Y|X)
f(X)或P(Y∣X)
举例:如何知道女孩子的姓名?
生成方法:我要是把她爸妈建模出来,直接问她爸妈不行么?
判别方法:她叫小红的概率是多少?她叫小刘的概率是多少?
8.统计学习三大问题
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
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
8.2.标注问题
输入:
x
=
(
x
(
1
)
,
x
(
2
)
,
.
.
.
x
(
n
)
)
x=(x^{(1)},x^{(2)},...x^{(n)})
x=(x(1),x(2),...x(n))
输出:
y
=
(
y
(
1
)
,
y
(
2
)
,
.
.
.
,
y
(
n
)
)
y=(y^{(1)},y^{(2)},...,y^{(n)})
y=(y(1),y(2),...,y(n))
8.3.回归问题
9.总结
- 统计学习路线:设计模型->训练->预测
- 监督学习与非监督学习的联系与区别(一个有标签,一个没有标签)
- 统计学习三要素:模型、策略、算法
- 模型的评估:训练误差、验证误差、测试误差
- 正则化与交叉验证
- 泛化能力:泛化误差上界(前提是假设空间有限,适用的范围很小)
- 生成模型与判别模型的联系与区别
- 分类问题:准确率、精准率、召回率、F1值
- 标注问题:序列标注
10.回归问题:输出为连续值
参考内容
- 深度之眼统计学习方法网课
- 统计学习方法,李航老师版