《机器学习》 第二章学习笔记

模型选择与评估

1. 经验误差与过拟合

错误率:分类错误的样本数。 E=a/m E = a / m
精度:1-错误率。 1a/m 1 − a / m
训练误差/经验误差:学习器在训练集上的误差。
泛化误差:学习器在新样本上的误差。
过拟合:把训练样本自身的一些特点当作了所有潜在样本具有的一般性质,导致泛化能力下降。
欠拟合:与“过拟合相对”,指对训练样本的一般性质尚未学好。


2. 评估方法

使用一个“测试集”来测试学习器对新样本的判别能力,然后以测试集上的“测试误差”作为泛化误差的近似。测试集应尽量与训练集互斥。
一个包含m个样例的数据集 D={(x1,y1),(x2,y2),...,(xm,ym)} D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x m , y m ) } ,有以下几种方式来划分训练集 S S 和测试集 T

  1. 留出法

    直接将数据集 D D 划分为两个互斥的集合,其中一个作为训练集 S, 另一个作为测试集 T T 。在 S 上训练出模型后,用 T T 来评估其测试误差,作为对泛化误差的估计。
    要注意训练/测试集的划分要尽可能保持数据分布的一致性,如至少要保留样本的类别比例相似。
    还需注意单次使用留出法得到的估计结果不够可靠,要采用多次随机划分,重复实验评估后取平均值作为留出法的评估结果。
    常将大约 2/3 ~ 4/5 4 / 5 的样本用于训练,剩余样本用于测试。

  2. 交叉验证法

    先将数据集 D D 划分为 k 个大小相似的互斥子集,即 D=D1D2...Dk D = D 1 ∪ D 2 ∪ . . . ∪ D k DiDj=(ij) D i ∩ D j = ∅ ( i ≠ j ) 。每个子集 Di D i 都尽可能保持数据分布的一致性。每次用 k1 k − 1 个子集的并集作为训练集,余下的子集作为训练集,可进行 k k 次训练和测试,最终返回这 k 次结果的均值。通常把交叉验证法称为 “ k k 折交叉验证”。
    k 折交叉验证要随机使用不同的划分重复 p p 次,最终的评估结果是这 p k k 折交叉验证结果的均值。
    特例:留一法(k=m)。

  3. 自助法

    给定包含 m m 个样本的数据集,每次随机从 D 中挑选一个样本,放回的放入 D D ′ ,重复 m m 次,得到包含 m 个样本的数据集 D D ′
    有部分样本始终不会被挑选到,样本在 m m 次采样过程中始终不会被挑选到的概率为 (11m)m , m m 趋向于无穷大时,此概率约为 1e0.368 .
    D D ′ 作为训练集, D/D D / D ′ 作为测试集,称为包外估计。
    自助法在数据集较小的时候较常用。

  4. 调参与最终模型

    调参即模型的参数设定。
    最终模型:在学习算法和参数配置已经选定后,要用数据集 D D 重新训练模型,从而得到最终模型。


3. 性能度量

性能度量:衡量模型泛化能力的评价标准,不同的性能度量会导致不同的评判结果。

  1. 错误率与精度
    分类任务中常用的两种性能度量。
    错误率:分类错误的样本数占总样本数的比例。E(f;D)=1mi=1mI(f(xi)yi)
    精度:分类正确的样本数占总样本数的比例。 acc(f;D)=1mmi=1I(f(xi)=yi)=1E(f;D) a c c ( f ; D ) = 1 m ∑ i = 1 m I ( f ( x i ) = y i ) = 1 − E ( f ; D )

  2. 查准率、查全率、 F1 F 1
    对于二分类问题,根据样例的真实类别与通过学习器预测类别可划分为:真正例(TP,真实类别为正,预测类别为正)、假正例(FP,真实类别为反,预测类别为正)、真反例(TN,真实类别为反,预测类别为反)、假反例(FN、真实类别为正,预测类别为反)。 TP+FP+TN+FN= T P + F P + T N + F N = 样 本 总 数
    查准率: P=TPTP+FP P = T P T P + F P
    查全率: R=TPTP+FN R = T P T P + F N
    查准率与查全率相矛盾,一方升高另一方降低。
    F1 F 1 度量: F1=2×P×RP+R=2×TP+TPTN F 1 = 2 × P × R P + R = 2 × T P 样 例 总 数 + T P − T N
    根据应用中对查准率和查全率的重视程度不同,得到 F1 F 1 度量的一般形式 Fβ F β Fβ=(1+β2)×P×R(β2×P)+R F β = ( 1 + β 2 ) × P × R ( β 2 × P ) + R . β β 度量了查全率对查准率的影响, β>1 β > 1 时查全率有更大影响, β<1 β < 1 时查准率有更大影响。
  3. ROC 与 AUC
    根据学习器的预测结果对样例进行排序,按此顺序逐个将样例作为正反例的分界点,计算出真正例率 TPR=TPTP+FN T P R = T P T P + F N ,假正例率 FPR=FPTN+FP F P R = F P T N + F P , 作为横纵坐标绘制ROC曲线。
    AUC:ROC曲线下的面积,用于比较分类器的优劣。
  4. 代价敏感错误率与代价曲线
    对于二分类问题,将正例误分为反例和将反例误分为正例可能造成不同的后果,可以定义 costij c o s t i j 为将 i i 类分为 j 类的代价。因此代价敏感错误率为:
    E(f;D;cost)=1m(xiD+I(f(xi)yi)×cost01+xiDI(f(xi)yi)×cost10) E ( f ; D ; c o s t ) = 1 m ( ∑ x i ∈ D + I ( f ( x i ) ≠ y i ) × c o s t 01 + ∑ x i ∈ D − I ( f ( x i ) ≠ y i ) × c o s t 10 )

    在非均等代价条件下,ROC曲线不能反映学习器的期望总体代价,因此引入代价曲线。
    横轴为正例概率代价: P(+)cost=p×cost01p×cost01+(1p)×cost10 P ( + ) c o s t = p × c o s t 01 p × c o s t 01 + ( 1 − p ) × c o s t 10 .
    纵轴为归一化代价: costnorm=FNR×p×cost01+FPR×(1p)×cost10p×cost01+(1p)×cost10 c o s t n o r m = F N R × p × c o s t 01 + F P R × ( 1 − p ) × c o s t 10 p × c o s t 01 + ( 1 − p ) × c o s t 10 .
    对ROC曲线上的每一个点,可以计算出一条(0,FPR)到(1, FNR)的线段,所有线段下的面积为期望总体代价。

4比较检验

数学太差,略。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值