第一章 绪论
基本术语:
一组记录的集合称为数据集;每条记录是关于一个事件或对象的描述,称为一个示例;属性上的取值称为属性值,属性张成的空间称为属性空间、样本空间、输入空间。
通过对数据集聚类形成的簇,可能对应一些潜在的概念划分。这样的学习过程有助于我们了解数据内在规律,为更深入地分析数据建立基础。
根据训练数据是否拥有标记信息,学习可分为监督学习和无监督学习,前者代表是分类和回归,聚类是后者代表。
机器学习的目标是使得学得的模型能很好地适用于新样本,模型适应新样本的能力称为泛化能力。具有强泛化能力的模型能很好地适用于整个样本空间。于是,尽管训练集通常只是样本空间的一个小的采样,我们仍希望它能反映整个样本空间的特性。通常假设样本空间全体样本服从一个未知分布,我们获得的样本都是独立的从这个分布上采样获得,即独立同分布。
归纳偏好:
任何一个有效的机器学习算法必有其归纳偏好,否则将被假设空间中看似在训练集上等效的假设所迷惑,而无法产生确定的学习结果。
奥卡姆剃刀:是一种常用的、自然科学研究中最基本的原则,即若有多个假设与观察一致,则选最简单的那个。事实上,归纳偏好对应了学习算法本身作出的关于什么样的模型更好的假设,在具体的现实问题中,这个假设是否成立,即算法的归纳偏好是否与问题本身匹配,大多数时候直接决定了算法能否取得好的性能。
但是无论算法a多聪明,算法b多么笨拙,它们的期望性能是相同的,这就是没有免费的午餐;但是这个定理有一个重要的前提,就是所有问题出现的机会相同、或所有问题同等重要,但实际情况并不是这样。很多时候我们只关注自己正在试图解决的问题,希望为它找到一个解决方案,至于这个方案在别的问题或者在相似的问题上是否为好方案,我们并不关心。
上面的没有免费的午餐定理让我们意识到,脱离具体问题,空谈什么学习算法更好毫无意义,因为若考虑所有潜在的问题,则所有学习算法都一样好。要谈论算法的相对优劣,必须要针对具体的学习问题,学习算法自身的归纳偏好与问题是否匹配,往往起决定性作用。
第二章 模型评估与选择
经验误差与过拟合
错误率:分类错误的样本占样本总数的比例;精度=1-错误率
误差:学习器的实际预测输出与样本的真实输出之间的差异,分为训练误差和泛化误差
我们想要的是在新样本上表现得很好的学习器,为了达到这个目的,应该从训练样本中尽可能地学出适用于所有潜在样本的普遍规律。当学习器把训练样本学得太好了的时候,很可能已经把训练样本本身的一些特点当作了所有潜在样本都会具有的一般性质,就会导致泛化性能下降,称为过拟合。但是对训练样本的一般性质尚未学好,则为欠拟合。
评估方法:
测试集来测试学习器对新样本的泛化能力,作为泛化误差的近似;通常假设测试样本也是从样本真实分布中独立同分布采样而得。
留出法:互斥集合,一训练,一测试;单次使用留出法得到的结果往往不够稳定可靠,需要采用若干次随机划分,重复进行实验评估。
交叉验证:划分k个子集,使用k-1集合进行k次训练,返回k个测试结果的均值,称为k折,需要多次多折。
自助法:给定包含m个样本的数据集,每次随机选取,重复m次,则包含m个样本。通过自助采样,约有36.8%的样本未被抽取。其余样本作为测试集,也称包外估计。
性能度量:
查准率&查全率:
以查准率为纵轴,查全率为横轴,得到P-R曲线
偏差与方差:
泛化误差可分解为偏差、方差和噪声之和。
偏差度量了学习算法的期望预测与真实结果的偏离程度,刻画了学习算法本身的拟合能力;方差度量了同样大小的训练集的变动所导致的学习性能的变化,刻画了数据扰动所造成的影响;噪声表达了当前任务上任何学习算法能达到的期望泛化误差的下界。说明泛化性能是由学习算法的能力、数据的充分性以及学习任务本身的难度所共同决定的。
偏差方差窘境
给定学习任务,假定我们能控制学习算法的训练程度,则在训练不足时,学习器的拟合能力不强,训练数据的扰动不足以使学习器产生显著变化,此时偏差主导泛化错误率。随着训练程度的加深,学习器的拟合能力产生显著变化,此时训练数据发生的轻微扰动都会导致学习器发生显著变化,方差主导泛化错误率。