美文网首页
第二章 模型评估与选择 笔记

第二章 模型评估与选择 笔记

作者: 晨光523152 | 来源:发表于2020-06-23 23:17 被阅读0次

    2.1 经验误差与过拟合

    错误率(error rate): 分类错误的样本数占样本总数的比例

    精度(accuracy):1- 错误率

    训练误差 / 经验误差:在训练集上的误差

    泛化误差:在新样本上的误差

    过拟合

    欠拟合

    image.png

    2.2 评估方法

    测试集:测试学习器对新样本的判别能力,以测试集上的“测试误差”作为泛化误差的近似

    对数据集进行适当的处理,拆分成训练集S和测试集T,常用的处理方法:

    2.2.1 留出法

    直接将数据集划分为两个互斥的集合

    2.2.2 交叉验证法

    将数据集划分为k个大小相似的互斥子集。每次用k-1个子集的并集作为训练集,余下的子集作为测试集合,得到k组训练/测试集,从而进行k次训练和测试,最终返回这k个测试结果的均值。

    image.png

    留一法是交叉验证法的特例。m个样本划分为m个子集i,每个子集只包含一个样本。这样,留一法使用的训练集比原始数据集只少一个样本。

    2.2.3 自助法

    在留出法和交叉验证法中,由于保留了一部分样本用于测试,因此实际评估的模型所使用的训练集比原始数据集小,必然会引入一些因训练样本规模不同而导致的估计偏差。留一法的计算复杂度高,不适合。

    使用自助法解决这个问题。

    以自助采样法为基础。给定包含m个样本的数据集D,对它进行采样产生数据集D^{'}:每次随机从D中挑选一个样本,将其拷贝放入D^{'},然后再将该样本放回初始的数据集D中,使得该样本在下次采样时仍可能被采到。

    这个过程重复执行m次,得到包含m个样本的数据集D^{'}

    样本在m次采样中始终不被采到的概率是(1-1/m)^{1/m}

    image.png image.png

    自助法在数据集较小,难以有效划分训练/测试集时很有用。

    2.2.4 调参与最终模型

    2.3 性能度量

    性能度量:衡量模型泛化能力的评价标准

    2.3.1 错误率与精度

    分类任务中最常用的两种性能度量:错误率,精度

    错误率:分类错误的样本数占样本总数的比例

    精度:分类正确的样本数占样本总数的比例

    image.png image.png

    2.3.2 查准率,查全率与F1

    “查准率” (精确率 precision)
    “查全率”(召回率 recall)

    对于二分类问题,可以将样例根据其真实类别与学习器预测类别的组合划分为:

    • 真正例(true positive):正例里面被预测为正例
    • 假正例(false positive):反例里面被预测为正例
    • 真反例(true negative):反例里面被预测为反例
    • 假反例(false negative):正例里面被预测为反例

    令 TP,FP,TN,FN 分别表示其对应的样例数,则有
    TP + FP + TN + FN = 样例总数
    混淆矩阵为:

    image.png

    精确率 P 与召回率 R的定义如下:

    image.png

    召回率指正例里面预测也为正例的个数;
    精确率指预测为正例里面本身为正例的个数。

    召回率和精确率是一对矛盾的度量。

    image.png

    “平衡点”(Break-Event Point):精确率 == 召回率时的取值

    但是 BEP 过于简化,更常用的是F1度量:

    image.png

    在一些应用中,对召回率,精确率的重视程度不同,使用F1度量的一般形式F_{\beta},能人我们表达出对精确率/召回率的不同偏好:

    image.png

    其中,\beta > 0度量了召回率对精确率的相对重要性;
    \beta > 1时,召回率有更大影响,\beta < 1时,精确率有更大影响

    image.png image.png

    2.3.3 ROC 与 AUC

    image.png

    意思就是设置不同的阶段阈值,可以得到不同的召回率以及精确率,P-R图就是这样画出来的。

    在不同的应用任务中,可以根据任务需求来采用不同的截断点;

    • 重视精确率,可以选择排序中靠前的位置
    • 重视召回率,可以选择排序中靠后的位置
    image.png

    ROC (Receiver Operationg Characteristic)曲线,横轴是“假正例率”(FPR),纵轴是“真正例率”(TPR),定义分别为:

    image.png image.png image.png

    AUC(Area Uunde ROC Curve):ROC曲线下的面积。

    image.png image.png

    2.3.4 代价敏感错误率与代价曲线

    在一些情况下,犯错的代价是不一样的。例如,把正常人误诊为患者,把患者误诊为正常人,前者只需要多诊断一次,后者则可能错过挽救生命的机会。因此,这两个错误的代价是天差地别。

    image.png

    之前考虑的都是均等代价。
    现在在非均等代价下,希望最小化“总体代价”。

    将表2.2中的第0类作为正类,第1类作为反类,令D^{+}D^{-}分别代表样例中的正例子集和反例子集,则“代价敏感”的错误率为:

    image.png

    在非均等代价下,ROC曲线不能直接反映出学习器的期望总体代价,而“代价曲线”则可以达到该目的。

    代价曲线图的横轴:取值为[0,1]的正例概率代价


    image.png

    其中p是样例为正例的概率,(应该就是截断概率)

    代价曲线图的纵轴:取值为[0,1]的归一化代价

    image.png

    其中,FNR = 1 - TPR

    image.png image.png

    2.4 比较检验

    使用某种实验评估方法测得学习器的某个性能度量结果,然后对这些结果进行比较。

    是直接取得性能度量的值比“大小”吗?(唔,不是吗。。。为啥我感觉论文里都是直接比ACC呢,分类任务)

    实际上比较复杂,涉及到几个重要因素:

    • 希望比较的是泛化能力。然而获得的是测试集上的性能,测试集也是样本,可能包括的不全;
    • 测试集上的性能与测试集本身的选择有很大关系,且不论使用不同大小的测试集会得到不同的结果,(即使使用相同大小的测试集,若包含的测试样例不同,测试结果也会有不同)
    • 机器学习算法本身具有一定的随机性,即便使用相同的参数设置在同一个测试集上多次运行,其结果也会有不同。
    image.png

    2.4.1 假设检验

    假设检验中的“假设”是对学习器泛化错误率分布的某种判断或者猜想。

    泛化错误率与测试错误率未必相同,但直观上,二者接近的可能性应该比较大,相差很远的可能性比较小。因此,可根据测试错误率估计推断出泛化错误率

    image.png

    后面这部分,感觉用文字不好写,可以在B站看视频,传送门如下:
    https://www.bilibili.com/video/BV17J411C7zZ?p=28

    相关文章

      网友评论

          本文标题:第二章 模型评估与选择 笔记

          本文链接:https://www.haomeiwen.com/subject/eblpxktx.html