1.1 统计学习(statistical learning)
1.1.1 统计学习的特点
计算机基于数据构建概率统计模型并运用模型对数据进行预测与分析的一门学科
1.1.2 统计学习的对象-数据(data)
基本假设:同类数据具有一定的统计规律性
1.1.3 统计学习的目的-对数据的预测和分析
1.1.4 统计学习的方法
从给定的、有限的、用于学习的训练数据(training data)集合出发,假设数据是独立同分布产生的;并且假设要学习的模型属于某个函数的集合,称为假设空间(hypothesis space);应用某个评价标准(evaluation criteria),从假设空间选取一个最优模型,使它对已知的训练数据及未知的测试数据在给定的评价准则下有最优的预测;最优模型的选取由算法实现。
模型(model)、策略(strategy)、算法(algorithm)
1.2 统计学习的分类
1.2.1 基本分类
1.2.1.1 监督学习(supervised learning)
从标注数据中学习预测模型,假设X和Y具有联合概率分布
输入空间input space:输入的所有可能取值的集合
输出空间output space:输出的所有可能取值的集合
实例instance:每一个具体的输入,通常由特征向量(feature vector)表示,所有特征向量所在的空间称为特征空间(feature space)
输入变量X,输出变量Y
输入实例x: xi=(xi(1), xi(2), ... , xi(n), xi(1))T xi表示多个输入变量中的第i个变量,x(i)表示x的第i个特征
训练集:T={(x1,y1), (x2,y2), ... , (xN,yN))
回归问题:输入变量和输出变量均为连续变量
分类问题:输出变量为有限个离散变量
标注问题:输入变量和输出变量均为变量序列
监督学习的模型可以是概率模型(条件概率分布P(Y|X))或者非概率模型(决策函数Y=f(X))
预测:yN+1 = argmaxP(y|xN+1), yN+1 = f(xN+1)
1.2.1.2 无监督学习(unsupervised learning)
从无标注数据中学习预测模型的机器学习问题
训练数据:U = {x1, x2, ... , xN}
1.2.1.3 强化学习(reinforcement learning)
在每一步t,智能系统从环境中观测到一个状态(state)st与一个奖励(reward)rt,采取一个动作(action)at,环境根据智能系统选择的动作,决定下一步t+1的状态st+1和奖励rt+1
学习的策略:给定的状态下采取的动作
目标:长期累积奖励的最大化
马尔科夫决策过程(Markov decision process):五元组(S, A, P, r, γ)
- S: 有限状态的集合
- A: 有限动作的集合
- P: 状态转移概率:P(s'|s, a) = P(st+1 = s'|st = s, at = a)
- r: 奖励函数:r(s, a) = E(rt+1|st = s, at = a)
- γ: 衰减系数(discount factor):γ∈[0, 1]
马尔科夫性:下一状态只依赖于前一状态和动作,下一奖励只依赖于前一状态和动作
策略π:给定状态下动作的函数a = f(s), P(a|s)
价值函数(value function)或状态价值函数(state value function):从某一个状态s开始的长期累积的奖励的期望
νπ(s) = Eπ(rt+1 + γrt+2 + γ2rt+3 + ... |st = s)
动作价值函数(action value function):
qπ(s, a) = Eπ(rt+1 + γrt+2 + γ2rt+3 + ... |st = s, at = a)
- 基于策略的(policy-based):不直接学习模型,从一个具体策略出发,搜索更优的策略
- 基于价值的(value-based):不直接学习模型,从一个具体的价值函数开始,搜索更优的价值函数
- 有模型的(model-based):直接学习马尔科夫决策过程的模型包括状态转移概率函数以及奖励函数,求出价值函数最大的π
1.2.1.4 半监督学习(semi-supervised learning)
利用标注数据和未标注数据学习预测模型
1.2.1.5 主动学习(active learning)
机器不断主动给出实例让标注,可以找到对学习最有帮助的实例进行标注
1.2.2 按模型分类
1.2.2.1 概率模型和非概率模型
概率模型(probabilistic model):P(y|x)条件概率分布形式,决策树、朴素贝叶斯、隐马尔可夫模型、条件随机场、概率潜在语义分析、潜在狄利克雷分配、高斯混合模型
非概率模型(non-probabilistic model):y = f(x),感知机、支持向量机、k近邻、Adaboost、k均值、潜在语义分析、神经网络
1.2.2.2 线性模型和非线性模型
线性模型(linear model):感知机、线性支持向量机、k近邻、k均值、潜在语义分析
非线性模型(non-linear model):核函数支持向量机、Adaboost、神经网络、深度学习
1.2.2.3 参数化模型和非参数化模型
参数化模型(parametric model):感知机、朴素贝叶斯、逻辑斯蒂回归、k均值、高斯混合模型、潜在语义分析、概率潜在语义分析、潜在狄利克雷分配
非参数化模型(non-parametric model):决策树、支持向量机、Adaboost、k近邻
1.2.3 按算法分类
在线学习(online learning):每次接受一个输入xt,用已有模型给出预测f(xt),之后得到反馈,即该输入对应的输出yt,系统利用损失函数计算出差异更新模型,不断重复该操作
批量学习(batch learning):一次接受所有数据,学习模型之后进行预测
1.2.4 按技巧分类
1.2.4.1 贝叶斯学习(Bayesian learning)
计算在给定数据条件下模型的条件概率,即后验概率,并应用这个原理进行模型的估计以及对数据的预测
1.2.4.2 核方法(kernel method)
将线性模型扩展到非线性模型,显示的定义从输入空间(低维空间)到特征空间(高维空间)的映射,在特征空间进行内积运算,也就是核函数,假设x1和x2是输入空间的任意两个实例(向量),其内积是<x1, x2>,输入空间到特征空间的映射是ψ,于是x1和x2在特征空间的映像是ψ(x1)和ψ(x2),其内积是<ψ(x1),ψ(x2)>,核方法是直接在输入空间定义核函数K(x1, x2)=<ψ(x1),ψ(x2)>
1.3 统计学习方法三要素
方法 = 模型 + 策略 + 算法
1.3.1 模型
要学习的条件概率分布或决策函数,模型的假设空间包含所有可能的条件概率分布或决策函数
1.3.2 策略
损失函数(loss function):度量模型一次预测的好坏,是f(X)和Y的非负实值函数,记作L(Y, f(X)),有0-1损失函数(0-1 loss function)、平方损失函数(quadratic loss function)、绝对损失函数(absolute loss function)、对数损失函数(logarithmic loss function)
风险函数(risk function):期望损失(expected loss)损失函数的期望值Rexp(f)
但是因为联合概率分布P(X, Y)不知道所以无法求得期望值
经验风险(empitical risk):模型关于训练样本集的平均损失Remp(f),根据大数定律,当样本容量N趋近于无穷的时候经验风险趋于期望风险
经验风险最小化(empirical risk minimization, ERM):经验风险最小的模型就是最优的模型,一个例子是极大似然估计(maximum likelihood estimation)当样本容量大的时候有较好的学习效果,但是当样本小的时候会产生过拟合的情况
结构风险最小化(structural risk minimization, SRM):结构风险在经验风险上加上正则项(regularization)或罚项(penalty term)
1.3.3 算法
学习模型的具体计算方法
1.4 模型评估与模型选择
1.4.1 训练误差和测试误差
训练误差(training error):模型关于训练数据集的平均损失
测试误差(test error):模型关于测试数据集的平均损失
1.4.2 过拟合与模型选择
过拟合:学习是选择的模型所包含的参数过多,以致出现对已知数据预测地很好但对未知数据预测得很差的现象,以多项式函数拟合为例,随着多项式次数(模型复杂度)的增加,训练误差会减小直至趋向0,但是测试误差是先减小后增大
1.5 正则化与交叉验证
1.5.1 正则化
一般是模型复杂度的单调递增函数,模型越复杂,正则化值就越大,正则化的作用是选择经验风险和模型复杂度同时较小的模型
1.5.2 交叉验证
将数据集切分为训练集(training set训练模型)、验证集(validation set选择模型)、测试集(test set最终评估学习方法)此方法在数据充足的情况下适用,数据不充足时交叉验证
1.5.2.1 简单交叉验证
随机的将数据分为训练集和测试集,在训练集上训练出不同的模型,然后选择测试误差最小的一个
1.5.2.2 S折交叉验证(S-fold cross validation)
首先随机的将数据切分为S份,使用其中S-1份作为训练集,1份作为测试集,该过程重复S次,最后选出平均误差最小的模型
1.5.2.3 留一交叉验证(leave-one-out cross validation)
S = N, N是数据集容量
1.6 泛化能力
1.6.1 泛化误差(generalization ability):模型的期望风险
1.6.2 泛化误差上界
样本容量增加,泛化上界趋近于0,假设空间容量越大,泛化误差上界越大P26
1.7 生成模型与判别模型
监督学习方法分为生成方法(generative approach)和判别方法(discriminative approach),所学到的模型分别称为生成模型(generative model)和判别模型(discriminative model)
生成方法:由数据学习联合概率分布P(X, Y),然后求出求出条件概率分布作为预测的模型
判别方法:直接学习决策函数或条件概率分布作为预测的模型
1.8 监督学习应用
1.8.1 分类问题(classification)
在监督学习中,当输出变量Y取有限个离散值时预测问题变为分类问题,输入变量可以是离散的也可以是连续的
TP:将正类预测为正类数
FN:将正类预测为负类数
FP:将负类预测为正类数
TN:将负类预测为负类数
精确率:P = TP / (TP + FP)
召回率:R = TP / (TP + FN)
F1:2 / F1 = 1 / P + 1 / R
1.8.2 标注问题(tagging)
输入是一个观测序列,输出是一个标记序列或状态序列,例隐马尔可夫模型
1.8.3 回归问题(regression)