第一章 统计学习及监督学习概论
1.1 统计学习
统计学习是关于计算机基于数据构建概率统计模型并运用模型对数据进行预测与分析的一门学科。
统计学习的对象
统计学习研究的对象是数据。
统计学习关于数据的基本假设是同类数据具有一定的统计规律性,这是统计学习的前提。
数据分为由连续变量和离散变量表示的类型。
统计学习的目的
统计学习用于对数据的预测和分析。
对数据的预测和分析是通过构建概念统计模型实现的。
统计学习的方法
统计学习由监督学习、无监督学习和强化学习等组成。
统计学习算法可以概况如下:从给定的、有限的、用于学习的训练数据集合出发,假设数据是独立同分布产生的;并且由假设要学习的模型属于某个函数的集合,称为假设空间;应用某个评价准则,从假设空间中选取一个最优模型,使它对已知的训练数据及未知的测试数据在给定的评价准则下有最优的预测;最优的模型的选取由算法实现。
统计学习的三要素:模型、策略、算法
实现统计学习方法的步骤:
1、得到一个有限的训练数据集合
2、确定包含所有可能的模型的假设空间,即学习模型的集合
3、确定模型选择的准则,即学习的策略
4、实现求解最优模型的算法,即学习的算法
5、通过学习方法选择最优模型
6、利用学习的最优模型对新数据进行预测或分析
统计学习的重要性
1、统计学习是处理海量数据的有效方法
2、统计学习是计算机智能化的有效手段
3、统计学习是计算机科学发展的一个重要组成部分
1.2 统计学习的分类
基本分类
监督学习
监督学习是指从标注数据中学习预测模型的机器学习问题
无监督学习
无监督学习是指从无标注数据中学习预测模型的机器学习问题
强化学习
强化学习是指智能系统在与环境的连续互动中学习最优行为策略的机器学习问题
假设智能系统与环境的互动基于马尔可夫决策过程,智能系统能观测到的是与环境互动得到的数据序列。强化学习的本质是学习最优的序贯决策
半监督学习和主动学习
半监督学习是值利用标注数据和为标注数据学习预测模型的机器学习问题,通常有少量的标注数据、大量为标注数据。
主动学习是指机器不断主动给出实例让教师进行标注,然后利用标注数据学习预测模型的机器学习问题。通常监督学习使用给定的标注数据,往往是随机得到的,可以看作是 “被动学习”
半监督学习和主动学习往往更接近监督学习。
按模型分类
概率模型和非概率模型
统计学习可以分为概率模型和非概率模型或者确定性模型。
决策树、朴素贝叶斯、隐马尔科夫模型、条件随机场、概率潜在语义分析、潜在狄利克雷分配、高斯混合模型等是概率模型。
感知机、支持向量机、k近邻、AdaBoost、k均值、潜在语义分析、神经网络等是非概率模型。
逻辑斯蒂回归既可以看作是概率模型,也可以看作是非概率模型。
概率模型和非概率模型的区别不在于输入与输出之间的映射关系,而在于模型的内在结构。
线性模型和非线性模型
如果函数y=f(x)或z=g(x)是线性函数,则称模型为线性模型,否则为非线性模型。
感知机、线性支持向量机、k近邻、k均值、潜在语义分析等是线性模型。
核函数支持向量机、AdaBoost、神经网络等是非线性模型。
深度学习实际是复杂的神经网络学习,也就是复杂的非线性模型的学习。
参数化模型和非参数化模型
参数化模型假设模型参数的维度固定,模型可以由有限维参数完全刻画;非参数化模型假设模型参数的维度不固定或者说无穷大,随着训练数据量的增加而不断增大。
感知机、朴素贝叶斯、逻辑斯蒂回归、k均值、高斯混合模型、潜在语义分析、概率潜在语义分析、潜在狄利克雷分配等是参数化模型。
决策树、支持向量机、AdaBoost、k近邻等是非参数化模型。
按算法分类
在线学习
在线学习是指每次接受一个样本,进行预测,之后学习模型,并不断重复此操作的机器学习。
利用随机梯度下降的感知机学习算法就是在线学习算法。
批量学习
批量学习一次接受所有数据,学习模型,之后进行预测。
按技巧分类
贝叶斯学习
核方法
1.3 统计学习的三要素
方法=模型+策略+算法
模型
策略
损失函数度量模型一次预测的好坏,风险函数度量平均意义下模型预测的好坏。
损失函数和风险函数
经验风险最小化和结构风险最小化
1.4 模型评估和模型选择
所选模型的复杂度比真模型的更高,这种现象称为过拟合。过拟合是指学习时选择的模型所包含的参数过多,以致出现这一模型对已知数据预测得很好,但对未知数据预测得很差的现象。
解决方法:首先确定模型得复杂度,即确定多项式的次数;然后在给定的模型复杂度下,按照经验风险最小化的策略,求解参数,即多项式的系数。
噪声:真实标记与数据集中实际标记的偏差。
1.5 正则化与交叉验证
正则化
正则化是结构风险最小化策略的实现,是在经验风险上加一个正则化项或罚项。
正则化项一般是模型复杂度的单调递增函数,模型越复杂,正则化值就越大。
正则化的作用是选择经验风险与模型复杂同时较小的模型。
正则化符合奥卡姆剃刀原理。
交叉验证
简单交叉验证
首先随机将数据分为两部分一部分为训练集,一部分为测试集;然后用训练集在各种条件下训练模型,从而得到不同的模型;在测试集上评价各个模型的测试误差,选出测试误差最小的模型。
S 折交叉验证
首先随机的将已给数据切分为S个互不相交、大小相同的子集;然后利用S-1个子集的数据训练模型,利用余下的子集测试模型;将这一过程对可能的S中选择重复进行;最后选出S次评测中平均测试误差最小的模型。
留一交叉验证
S 折交叉验证的特殊情形是S=N,称为留一交叉验证,往往在数据缺乏的情况下使用。这里,N是给定数据集的容量。
1.6 泛化能力
泛化能力是指该方法学习到的模型对未知数据的预测能力。
泛化误差
如果学到的模型是f,那么用这个模型对未知数据预测的误差即为泛化误差
事实上,泛化误差就是所学习到的模型的期望风险。
泛化误差上界
1.7 生成模型和判别模型
监督学习方法又可分为生成方法和判别方法。所学习到的模型分别为生成模型和判别模型。
生成方法
特点:
- 生成方法可以还原出联合概率分布P(X,Y),而判别方法则不能
- 生成方法的学习收敛速度更快,即当样本容量增加的时候,学习到模型可以更快的收敛于真实模型
- 当存在隐变量时,仍可以用生成方法学习,此时判别方法则不能用
判别方法
判别方法由数据直接学习决策函数f(X)或者条件概率分布P(X|Y)作为预测模型,即判别模型。
判别方法关心的是对给定的X,应该预测什么样的输出Y
典型的判别模型:k近邻法、感知机、逻辑斯蒂回归模型、最大熵模型、支持向量机、提升方法和条件随机场等
特点:
判别方法直接学习的是条件概率或决策函数,直接面对预测,往往学习的准确率更高;
可以对数据进行各种程度上的抽象、定义特征并使用特征,因此可以简化学习问题
1.8 监督学习应用
分类问题
标注问题
标注问题输入的是一个观测序列,输出的是一个标记序列或者状态序列。
回归问题
回归用于预测输入变量和输出变量之间的关系