一、评估方法
留出法hold-out
留出法直接将数据集D划分为两个互斥的集合,其中一个集合作为训练集S,另一个作为测试集T,即 D = S ∪ T , S ∩ T = ∅ D=S \cup T,S \cap T = \varnothing D=S∪T,S∩T=∅,在 S S S上训练处模型后,用 T T T来评估其测试误差,作为对泛化误差的估计。
注意:训练/测试集的划分要尽可能保存数据分布的一致性,避免因数据划分过程引入额外的偏差而对最终结果产生影响。——例如,在分类任务中至少要保存样本的类别比例相似。
交叉验证cross validation
自助法
以自助采样法为基础,对数据集D有放回采样m次得到训练集 , 用做测试集
实际模型与预期模型都使用m个训练样本
约有1/3的样本没在训练集中出现,用作测试集
从初始数据集中产生多个不同的训练集,对集成学 习有很大的好处
自助法在数据集较小、难以有效划分训练/测试集时很有用;由于改变了数据集分布可能引入估计偏差 ,在数据量足够时,留出法和交叉验证法更常用。
二、评估指标
(一)回归问题
均方误差
均方误差是回归任务最常用的性能度量,表示预测值和实际值之间的误差。
M
S
E
=
1
n
∑
i
=
1
n
(
y
^
i
−
y
i
)
2
MSE=\frac{1}{n}\sum_{i=1}^{n}(\widehat{y}_i-y_i)^2
MSE=n1i=1∑n(y
i−yi)2
(二)分类问题
真实情况 | 预测结果 | |
---|---|---|
正例 | 反例 | |
正例 | TP(真正例) | FN(假反例) |
反例 | FP(假正例) | TN(真反例) |
精度:分类正确的样本占总样本的比例 TP+FN/总例数
查准率:预测正确的样本中实际为正确的比例 TP/(TP+FP)
查全率:正例中预测正确的比例 TP/(TP+FN)
F1:查准率和查全率的平均
ROC与AUC
许多机器学习方法分类的方式是为测试样本产生一个实值(或概率预测),并将其与设定好的阈值相比较,大于阈值的分为正类,小于阈值的分为负类。我们可以根据实值的大小,即按是正例的可能性将样本进行排序。分类过程就是在这个排序中找到某个“截断点”将前面一部分判做正例,后面一部分判做反例。
ROC曲线是以每一个实值作为阈值,并衡量模型性能的方法。它以真正例率TPR=TP/(TP+FN)为横坐标,假正例率FPR=FP/(TN+FP)为横坐标。每次按顺序尝试一个实值作为阈值进行测试。
真正例率和反正例率的分母是实际的正例和反例数量,是一个固定的数,因此他们与TP和FP成正比。