Herbert A.Simon 把学习定义为:一个系统通过执行某个过程来改进自身的性能。
在这个定义下,统计机器学习就是计算机系统运用数据和统计学习方法改进计算机系统性能的过程。
统计学习的过程可以总结为:假设训练数据是独立同分布产生的,并且要学习的目标模型属于某类映射的集合,称之为假设空间,然后按照一定的评价标准,称之为学习策略,运用一定的算法从假设空间中选择一个最优的模型。
模型,策略,算法称为统计学习方法的三要素。
统计学习一般包括监督学习,非监督学习,半监督学习和增强学习。其中监督学习是发展最为成熟的,理论支撑最坚实的一个分支,所以后文主要涉及监督学习。
下文首先形式化的定义了监督问题,然后分别从模型,策略,算法三个角度介绍。
问题的定义
给定包含 N N N个样本的数据集 D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . , ( x N , y N ) } D=\{(\textbf x^1,\textbf y^1),(\textbf x^2,\textbf y^2),..,(\textbf x^N,\textbf y^N)\} D={(x1,y1),(x2,y2),..,(xN,yN)}, x i ∈ X \textbf x^i \in X xi∈X称之为输入空间, y i ∈ Y \textbf y^i\in Y yi∈Y称之为输出空间,例如对于二分类问题, Y = { − 1 , 1 } Y=\{-1,1\} Y={−1,1}。并假设数据集 D D D是独立同分布产生的,联合分布函数为 P ( x , y ) P(\textbf x,\textbf y) P(x,y).
输入空间 X X X到输出空间 Y Y Y的映射记为 h h h,并假设输入变量服从分布 X \mathcal{X} X,则映射 h h h的泛化误差定义为:
E ( h ) = P x ∼ X ( h ( x ) ≠ y ) E(h)=P_{\textbf x \sim \mathcal{X}}(h(\textbf x)\ne\textbf y) E(h)=Px∼X(h(x)̸=y)
h
h
h的经验误差定义为:
E
^
(
h
)
=
1
N
∑
i
=
1
N
(
h
(
x
i
)
≠
y
i
?
1
:
0
)
\hat E(h)=\frac{1}{N}\sum_{i=1}^N(h(\textbf x^i)\ne\textbf y^i ? 1 : 0)
E^(h)=N1i=1∑N(h(xi)̸=yi?1:0)
若对于输入空间和输出空间的任何样本 ( x , y ) (\textbf x,\textbf y) (x,y),总有 h ( x ) = y h(\textbf x)=\textbf y h(x)=y,则称映射 h h h为目标映射,或称为目标模型。
给定输入输出空间中的有限的样本集合 D D D,我们希望学习到的映射尽量接近目标映射,一般不能精确的学习到目标映射,这是由于各种客观因素的制约造成的,比如训练样本集一般都是有限的集合,等等。
模型
根据学习的目标,模型可以分为:
- 生成模型:学习联合分布概率 P ( x , y ) P(\textbf x,\textbf y) P(x,y),例如朴素贝叶斯模型和隐马尔可夫模型等
- 判别模型:学习决策函数 f ( x ) f(\textbf x) f(x)或则条件概率分布 P ( y ∣ x ) P(\textbf y|\textbf x) P(y∣x),例如决策树,逻辑回归,感知器,条件随机场,支持向量机等
根据最终的模型是决策函数还是条件概率,模型可分为:
- 概率模型
- 非概率模型
更具模型中先验知识的多少,模型可分为:
- 参数模型:模型的形式基本固定,学习的目标主要在于参数估计
- 非参数模型:例如k近邻模型
策略
常见的学习策略有:
- ERM:经验风险最小化
- SRM:结构风险最小化
- MLE:似然概率最大化
- MAP:后验概率最大化
算法
统计学习领域里,监督学习的理论是发展最成熟的,这些理论的目的是分析学习任务,并指导算法的设计,常见的分析理论包括:
- PAC
- VC
- Rademacher复杂度分析
- 算法稳定性分析