3DRX

// post

机器学习:模型评估与选择

Model Evaluation

Updated

误差

  • 训练误差 (training error)、经验误差 (empirical error)
  • 泛化误差 (generalization error)

过拟合与欠拟合

  • 过拟合是模型泛化误差大于测试误差的现象,导致过拟合的原因有
    • 有噪声的数据
    • 训练数据量过少
    • 过于复杂的模型
  • 欠拟合是训练误差和测试误差、泛化误差都很大,处理欠拟合的方式有
    • 添加数据中的特征项
    • 减少正则化参数
    • 增加模型复杂性

评估方法

实验估计方法

hold-out

将数据集划分为两个互斥的集合,一个作为训练集,一个作为测试集。

cross validation

将数据集划分为 k 个大小相似的互斥子集,每次用 k-1 个子集的并集作为训练集,剩下的那个子集作为测试集,最终返回这 k 个测试结果的均值。

bootstrapping 自助法

从给定数据集中有放回地均匀抽取一部分元素组成训练集,在集成学习中用的比较多。

性能度量

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

预测为正预测为反
真实为正TPFN
真实为反FPTN

分类任务

  • 错误率:分类错误的样本占样本总数的比例
  • 精度:分类正确的样本占样本总数的比例
  • 查准率:P=TPTP+FPP = \frac{TP}{TP+FP}
  • 查全率:R=TPTP+FNR = \frac{TP}{TP+FN}

以查准率为纵轴、查全率为横轴作图,得到 P-R 曲线。若一个模型的 P-R 曲线被另一个模型包住,则可断言后者的性能优于前者。

  • F1 度量:F1=2×P×RP+R=2×TP样本总数+TPTNF1 = \frac{2\times P\times R}{P+R} = \frac{2\times TP}{样本总数 + TP - TN}
  • F1 度量的一般形式:
Fβ=(1+β2)×P×R(β2×P)+RF_\beta = \frac{(1+\beta^2)\times P\times R}{(\beta^2\times P)+R}

其中 β>1\beta>1 时查全率有更大影响,β<1\beta < 1 时查准率有更大影响。

回归任务

  • ROC (Receiver Operating Characteristic)
    • 纵轴 True positive rate: TPR=TPTP+FNTPR = \frac{TP}{TP+FN}
    • 横轴 False positive rate: FPR=FPTN+FPFPR = \frac{FP}{TN+FP}
  • AUC (Area Under ROC Curve) 越大说明模型性能越好