2.1 经验误差与过拟合
错误率(error rate): 分类错误的样本数占样本总数的比例
精度(accuracy):1- 错误率
训练误差 / 经验误差:在训练集上的误差
泛化误差:在新样本上的误差
过拟合
欠拟合
image.png2.2 评估方法
测试集:测试学习器对新样本的判别能力,以测试集上的“测试误差”作为泛化误差的近似
对数据集进行适当的处理,拆分成训练集和测试集,常用的处理方法:
2.2.1 留出法
直接将数据集划分为两个互斥的集合
2.2.2 交叉验证法
将数据集划分为个大小相似的互斥子集。每次用个子集的并集作为训练集,余下的子集作为测试集合,得到组训练/测试集,从而进行次训练和测试,最终返回这个测试结果的均值。
image.png留一法是交叉验证法的特例。个样本划分为个子集i,每个子集只包含一个样本。这样,留一法使用的训练集比原始数据集只少一个样本。
2.2.3 自助法
在留出法和交叉验证法中,由于保留了一部分样本用于测试,因此实际评估的模型所使用的训练集比原始数据集小,必然会引入一些因训练样本规模不同而导致的估计偏差。留一法的计算复杂度高,不适合。
使用自助法解决这个问题。
以自助采样法为基础。给定包含个样本的数据集,对它进行采样产生数据集:每次随机从中挑选一个样本,将其拷贝放入,然后再将该样本放回初始的数据集中,使得该样本在下次采样时仍可能被采到。
这个过程重复执行次,得到包含个样本的数据集。
样本在次采样中始终不被采到的概率是
自助法在数据集较小,难以有效划分训练/测试集时很有用。
2.2.4 调参与最终模型
2.3 性能度量
性能度量:衡量模型泛化能力的评价标准
2.3.1 错误率与精度
分类任务中最常用的两种性能度量:错误率,精度
错误率:分类错误的样本数占样本总数的比例
精度:分类正确的样本数占样本总数的比例
image.png image.png2.3.2 查准率,查全率与
“查准率” (精确率 precision)
“查全率”(召回率 recall)
对于二分类问题,可以将样例根据其真实类别与学习器预测类别的组合划分为:
- 真正例(true positive):正例里面被预测为正例
- 假正例(false positive):反例里面被预测为正例
- 真反例(true negative):反例里面被预测为反例
- 假反例(false negative):正例里面被预测为反例
令 TP,FP,TN,FN 分别表示其对应的样例数,则有
。
混淆矩阵为:
精确率 与召回率 的定义如下:
召回率指正例里面预测也为正例的个数;
精确率指预测为正例里面本身为正例的个数。
召回率和精确率是一对矛盾的度量。
image.png“平衡点”(Break-Event Point):精确率 == 召回率时的取值
但是 BEP 过于简化,更常用的是度量:
image.png在一些应用中,对召回率,精确率的重视程度不同,使用度量的一般形式,能人我们表达出对精确率/召回率的不同偏好:
其中,度量了召回率对精确率的相对重要性;
时,召回率有更大影响,时,精确率有更大影响
2.3.3 ROC 与 AUC
image.png意思就是设置不同的阶段阈值,可以得到不同的召回率以及精确率,P-R图就是这样画出来的。
在不同的应用任务中,可以根据任务需求来采用不同的截断点;
- 重视精确率,可以选择排序中靠前的位置
- 重视召回率,可以选择排序中靠后的位置
ROC (Receiver Operationg Characteristic)曲线,横轴是“假正例率”(FPR),纵轴是“真正例率”(TPR),定义分别为:
image.png image.png image.pngAUC(Area Uunde ROC Curve):ROC曲线下的面积。
image.png image.png2.3.4 代价敏感错误率与代价曲线
在一些情况下,犯错的代价是不一样的。例如,把正常人误诊为患者,把患者误诊为正常人,前者只需要多诊断一次,后者则可能错过挽救生命的机会。因此,这两个错误的代价是天差地别。
image.png之前考虑的都是均等代价。
现在在非均等代价下,希望最小化“总体代价”。
将表2.2中的第0类作为正类,第1类作为反类,令与分别代表样例中的正例子集和反例子集,则“代价敏感”的错误率为:
image.png在非均等代价下,ROC曲线不能直接反映出学习器的期望总体代价,而“代价曲线”则可以达到该目的。
代价曲线图的横轴:取值为[0,1]的正例概率代价
image.png
其中是样例为正例的概率,(应该就是截断概率)
代价曲线图的纵轴:取值为[0,1]的归一化代价
image.png其中,
image.png image.png2.4 比较检验
使用某种实验评估方法测得学习器的某个性能度量结果,然后对这些结果进行比较。
是直接取得性能度量的值比“大小”吗?(唔,不是吗。。。为啥我感觉论文里都是直接比ACC呢,分类任务)
实际上比较复杂,涉及到几个重要因素:
- 希望比较的是泛化能力。然而获得的是测试集上的性能,测试集也是样本,可能包括的不全;
- 测试集上的性能与测试集本身的选择有很大关系,且不论使用不同大小的测试集会得到不同的结果,(即使使用相同大小的测试集,若包含的测试样例不同,测试结果也会有不同)
- 机器学习算法本身具有一定的随机性,即便使用相同的参数设置在同一个测试集上多次运行,其结果也会有不同。
2.4.1 假设检验
假设检验中的“假设”是对学习器泛化错误率分布的某种判断或者猜想。
泛化错误率与测试错误率未必相同,但直观上,二者接近的可能性应该比较大,相差很远的可能性比较小。因此,可根据测试错误率估计推断出泛化错误率
image.png后面这部分,感觉用文字不好写,可以在B站看视频,传送门如下:
https://www.bilibili.com/video/BV17J411C7zZ?p=28
网友评论