模型评估与选择:
避免过拟合和欠拟合
![](https://i-blog.csdnimg.cn/blog_migrate/1e661089d4d9cadb051525c4006bc811.png)
评估原则:
通常 , 我们可通过实验测试来对学习器的泛化误差进行评估并进而做出选择 , 为此 , 需使用一个 “ 测试集 ” (testing set ) 来测试学习器对新样本的判别能力 , 然后以测试集上的 “ 测试误差 ” (testing error ) 作为泛化误差的近似 . 通常我们假设测试样本也是从样本真实分布中独立同分布采样而得 , 但需注意的是 , 测试集应该尽可能与训练集互斥 , 即测试样本尽量不在训练集中出现 、 未在训练过程中使用过 。(《机器学习》-周志华,第二章)
评估方法
留出法
交叉验证法
![](https://i-blog.csdnimg.cn/blog_migrate/6268ca5c27254ec7cfe93b3fb3eb001c.png)
自助法
自助法在数据集较小 、 难以有效划分训练 / 测试集时很有用 ;在初始数据量足够时 , 留出法和交叉验证法更常用一些 。
性能度量
对学习器的泛化性能进行评估 , 不仅需要有效可行的实验估计方法 , 还需要有衡量模型泛化能力的评价标准 , 这就是性能度量 (performance measure) 。(《机器学习》-周志华,第二章)
性能度量反映了任务需求 , 在对比不同模型的能力时 , 使用不同的性能度量往往会导致不同的评判结果 ; 这意味着模型的 “ 好坏 ” 是相对的 , 什么样的模型是好的 , 不仅取决于算法和数据 , 还决定于任务需求 。(《机器学习》-周志华,第二章)
(1)回归任务
性能度量:“ 均方误差 ” (mean squared error)。
(2)分类任务
性能度量:
错误率与精度
查准率 、 查全率与 F1
![](https://i-blog.csdnimg.cn/blog_migrate/10a2345ebeb9618b3c4a8f5b1c9ba9d6.png)
![](https://i-blog.csdnimg.cn/blog_migrate/853b320254c8adf765c02cf14e103cd5.png)
ROC与AUC
![](https://i-blog.csdnimg.cn/blog_migrate/d6b3afc36f4724d4101738464e5bc9e1.png)
代价敏感错误率与代价曲线
![](https://i-blog.csdnimg.cn/blog_migrate/86b8415919d40813f4d7579bf22ccb52.png)
![](https://i-blog.csdnimg.cn/blog_migrate/106339c80e02f58f06cffe69a8054ebe.png)
比较检验
假设检验
交叉检验t检验
McNemar 检验
Friedman 检验与 Nemenyi 后续检验
偏差与方差
偏差度量了学习算法的期望预测与真实结果的偏离程度 , 即刻画了学习算法本身的拟合能力 ; 方差度量了同样大小的训练集的变动所导致的学习性能的变化 , 即刻画了数据扰动所造成的影响 ; 噪声则表达了在当前任务上任何学习算法所能达到的期望泛化误差的下界 , 即刻画了学习问题本身的难度 , 偏差一方差分解说明 , 泛化性能是由学习算法的能力 、 数据的充分性以及学习任务本身的难度所共同决定的。 给定学习任务 , 为了取得好的泛化性能 , 则需使偏差较小 , 即能够充分拟合数据 , 并且使方差较小 , 即使得数据扰动产生的影响小 。(《机器学习》-周志华,第二章)
![](https://i-blog.csdnimg.cn/blog_migrate/10ad1dc85ddd1d4800b27dff828d4054.png)