1.经验误差与过拟合
错误率
分类错误的样本占样本总数的比例;如:m个样本中有a个样本分类错误则,错误率 E=a/m ;
精度
精度=1-错误率;
误差
学习器的实际预测输出与样本的真实输出之间的差异 ;
训练误差
学习器在训练集上的误差;
泛化误差
在新样本上的误差;
过拟合
把训练样本自身的一些特点当做所有潜在样本都会具有的一般性质,导致泛化性下降;
欠拟合
对训练样本的一般性质尚未学好;
过拟合是机器学习面临的关键障碍,对于各类学习算法来说,过拟合是无法彻底避免的,只能缓解。
2.评估方法
选取 “测试集” 来测试学习器对新样本的判别能力;
问:如何选取 “测试集” ?
2.1留出法
直接将数据集划分为两个互斥的集合 D 一个作为 测试集 T 一个作为 训练集 S
用 T 来评估测试误差,作为对泛化误差的估计;
问题:S与T的比例不能完美的划分;
2.2交叉验证法
将数据集D划分为k个大小相似的互斥子集,每个子集都尽可能保证数据分布的一致性,即从D中通过分层采样得到;
每次用k-1个子集的并集作为训练集,余下的子集作为测试集;
最终返回k次测试结果的均值;
留一法 为其的一个特例:数据集中包含m个样本,当m=k时
留一法 的缺陷:数据集较大时,计算开销大
2.3自助法
问:较少训练样本规模不同造成的影响,同时还能比较高效的进行试验估计?
自助法 它直接以自主采样法为基础。给定包含m个样本的数据集D,我们对它进行采样产生数据集D':每次随机从 D 中挑选一个样本,将其拷贝放入D',然后再将该样本放回初始数据集 D 中,使得该样本在下次采样时仍有可能被采集到;这个过程重复执行m次后,我们就得到了包含m个样本的数据集D',之久是自助采样的结果;
包外估计 通过自助采样,初始数据集D中约有36.8%的样本未出现在采样数据集D'中,于是可将D'作训练集,D\D'用作测试集;
优:自助法 在数据集较小、难以有效划分 训练/测试集 是很有用;
能从初始数据集中产生多个不同的训练集,这对集成学习等方法有很大的好处;
缺:自助法 产生的数据集改变了初始数据集的分布,这会引入估计偏差,因此,在初始数据量足够时,留出法 和 交叉验证法 更常用;
2.4调参与最终模型
调参 :对算法参数进行设定;
3.性能度量
性能度量 对学习器的泛化性能进行评估,不仅需要有效可行的 实验评估方法,还需要有 衡量模型泛化能力的评价标准;
反映了任务需求,在对比不同模型的能力时,使用不同的 性能度量 往往会导致不同的评判结果;这意味着模型的“好坏”是相对的,什么样的模型的模型是好的,不仅取决于算法和数据,还决定于任务需求;
均方误差 回归任务最常用的 性能度量;
3.1错误率与精度
错误率和精度 是分类任务中最常用的两种 性能度量,既适用于二分类任务,也适用于多分类任务。
错误率 是分类错误的 样本数 占 样本总数 的比例;
精度 是分类正确的样本数 占 样本总数 的比例;
3.2查准率、查全率与F1
查准率与查全率 为了适用于 “检索出的信息中有多少比例是用户感兴趣的”、“检索出的信息中有多少比例是用户感兴趣的”
混淆矩阵 TP(真正例)、FP(假正例)、FN(假反例)、TN(真反例)
TP+FP+TN+FN=样例总数.
查准率和查全率是一对矛盾的度量;
F1 度量的一般形式,能让我们表达出对 查准率/查全率 的不同偏好
3.3ROC与AUC
排序本身的质量好坏,体现了综合考虑学习器在不同任务下的“期望泛化性能”的好坏,或者说,“一般情况下”泛化性能的好坏。ROC 曲线则是从这个角度出发来研究学习器泛化性能的有力工具。
AUC 为ROC曲线下的面积;
3.4代价敏感错误率与代价曲线
最小化总体代价;
4.比较检验
问:如何对学习器进行性能比较
步骤:①泛化性能;
②测试集上的性能与测试集本身的选择有很大关系;
③机器学习算法本身有一定的随机性;
4.1假设检验
假设检验 中的 “假设” 是对学习器泛化错误率分布的莫衷判断或猜想。
我们并不知学习器的返回错误率,只能获知其测试错误率。泛化错误率与测试错误率未必相同,但接近的可能性大。因此,可根据测试错误率估推出泛化错误率的分布;