3 评估(划分、PR、ROC)
数据集划分
- 训练集:
用于训练模型,在训练过程中,可以优化模型,更改参数。 - 验证集:
在训练的过程中,使用验证数据选择性能最佳的方法,比较算法和训练参数,确定选择哪种结果最佳 - 测试集:
训练结束后,测试训练好的模型性能。
过拟合和欠拟合
评估方法
留出法:
直接将数据集划分为两个互斥集合
训练/测试集划分要尽可能保持数据分布的一致性
一般若干次随机划分、重复实验取平均值
训练/测试样本比例通常为2:1~4:1
交叉验证法:
将数据集分层采样划分为k个大小相似的互斥子集,每次用k-1个子集的并集作为训练集,余下的子集作为测试集,最终返回k个测试结果的均值,k最常用的取值是10.
自助法:
以自助采样法为基础,对数据集 D
有放回采样 m
次得到训练集 D'
, 用D\D'
做测试集。
性能度量
回归 MAE(mean absolute error) = mean(abs(Prediction-Real)) MSE(mean squared error) = mean((Prediction-Real)^2) RMSE(Root mean squared error) = sqrt(MSE) 分类 Accuracy , Precision , Recall , F1,ROC,P-R,AUC
对于分类任务,错误率和精度是最常用的两种性能度量:
错误率:分错样本占样本总数的比例
精度:分对样本占样本总数的比率
查准率:挑出来的西瓜中有多少比例是好瓜
查全率:所有好瓜中有多少比例挑了出来
(信息检索、Web搜索等场景)
统计真实标记和预测结果的组合可以得到“混淆矩阵”
F1度量
ROC曲线
类似P-R曲线,根据学习器的预测结果对样例排序,并逐个作为正例进行预测,以“假正例率”为横轴,“真正例率”为纵轴可得到ROC曲线,全称“受试者工作特征”.
真正率与假正率
偏差与方差
通过实验可以估计学习算法的泛化性能,而==“偏差-方差分解”可以用来帮助解释泛化性能==。偏差-方差分解试图对学习算法期望的泛华错误率进行拆解。
偏差度量了学习算法期望预测与真实结果的偏离程度;即刻画了学习算法本身的拟合能力;
方差度量了同样大小训练集的变动所导致的学习性能的变化;即刻画了数据扰动所造成的影响;
噪声表达了在当前任务上任何学习算法所能达到的期望泛化误差的下界;即刻画了学习问题本身的难度。
泛化性能是由学习算法的能力、数据的充分性以及学习任务本身的难度所共同决定的。给定学习任务为了取得好的泛化性能,需要使偏差小(充分拟合数据)而且方差较小(减少数据扰动产生的影响)。