涉及概念
过拟合:当学习器把训练样本学的“太好”了的时候,很可能已经把训练样本本身的一些特点当作了所有潜在样本都会具有的一般性质,这样就会导致泛化性能下降。(简单来说就是机器已经悟透了训练集,但是它不知道这个只适用于训练集,而不是所有的样本,就会导致它在其他样本上的效果不理想,即泛化性能下降)
验证集:模型评估与选择中用于评估测试的数据集常称为“验证集”。
性能度量:衡量模型泛化能力的评价标准。
错误率:是分类错误的样本数占样本总数的比例。
精准率:分类正确的样本数占样本总数的比例。
查准率亦称“准确率”,查全率亦称“召回率”。
评估方法
通过实验测试来对学习期的泛化误差进行评估病进而做出选择。我们需要选择“测试集”与“和训练集”完全没有相同的进行实验。然后把测试误差作为泛化误差的近似。
下面介绍几种常见的做法。
1.留出法
简单的来说,留出法就是将一个训练集S再次分割为S1,S2,其中S1作为新的训练集,S2作为测试集。在分割的过程中需要注意以下几点:①样本的平均分布。比如:一个1000条的数据集(500正,500负),训练集需要取350正、350负,测试集需要取150正、150负。②多种方式进行划分,最后取平均值。比如:一个1000条的数据集,我第一次取了前500条作为训练集,后500条作为测试集,下次分割可将后500条作为训练集,前500条作为测试集。③划分训练集、测试集的比例大致为:2/3~4/5作为训练集,剩下的作为测试集。
2.交叉验证法
交叉验证法是将数据集S划分为k个大小的子集,然后每次用(k-1)个子集作为训练集,剩下的那一个作为测试集。这样就会有k个测试结果产生,最后对k个结果求平均值得到最后的返回结果。在这个过程中,k的取值十分重要,这就引出了“k折交叉验证”,k最常用的取值是10,其他常用的k值由5、20等。
在交叉验证法中,由一个特例,假如数据集有k条数据,利用交叉验证法将它划分为k个子集,那么每个子集就包含一条数据,这种方法叫做留一法。这样做的好处是它不需要考虑样本随即划分;但是棋缺点是当数据集规模较大时,计算量十分巨大。
3.自助法
给定包涵m个样本的数据集D,我们对它进行采样产生数据集D’:每次随机从D中挑选一个样本,将其拷贝放入D’,然后再将该样本放回初始数据集D中,使得该样本在下次采样时仍有可能被采到;这个过程重复执行m次后,我们就得到了包涵m个样本的数据集D’。
4. 调参与最终模型
大多数学习算法都有很多参数,而参数的设定决定了模型的效率。在调参过程中我们大多是对每个参数选定一个范围和变化布长,例如:在[0,0.2]间,设置步长为0.05,则参数可以设置为0,0.05,0.1,0.15,0.2,但是如果需要调参的个数过多,会增加很大的工作量。
性能度量
回归任务常用的性能度量是“均方误差”:
E
(
f
;
D
)
=
1
m
∑
i
=
1
m
(
f
(
x
i
)
−
y
i
)
2
E(f;D)=\frac{1}{m}\sum_{i=1}^{m}(f(x_i)-y_i)^2
E(f;D)=m1∑i=1m(f(xi)−yi)2
下面是分类任务中常用的性能度量。
1.错误率与精度
错误率的定义为:
E
(
f
;
D
)
=
1
m
∑
i
=
1
m
Ⅱ
(
f
(
x
i
)
≠
y
i
)
E(f;D)=\frac{1}{m}\sum_{i=1}^{m}Ⅱ(f(x_i)≠y_i)
E(f;D)=m1∑i=1mⅡ(f(xi)=yi)
精度则定义为:
a
c
c
(
f
;
D
)
=
1
m
∑
i
=
1
m
Ⅱ
(
f
(
x
i
)
≠
y
i
)
=
1
−
E
(
f
;
D
)
acc(f;D)=\frac{1}{m}\sum_{i=1}^{m}Ⅱ(f(x_i)≠y_i)=1-E(f;D)
acc(f;D)=m1∑i=1mⅡ(f(xi)=yi)=1−E(f;D)
2.查准率P(准确率)、查全率R(召回率)与F1
查准率(准确率)就是在所有“预测结果”为“正的(0)”中,真实情况为真的(+)所占的比例。即(+0)/(+0 + -0)
查全率(召回率)就是在所有“真实情况”为“真的(+)”中,预测情况为正的(0)所占的比例。即(+0)/(+0 + +1)
总结来说:查准率(准确率)的分母是预测结果正的;
查全率(召回率)的分母是真实情况真的;
两者的分字都是预测结果和真实情况都是真的或正的。
一般来说查准率(准确率)和查全率(召回率)是相互矛盾的:如果查准率(准确率)高,那么查全率(召回率)低;如果查准率(准确率)低,那么查全率(召回率)高。
F1度量:是基于准确率与查全率的调和平均。
F
1
=
2
×
P
×
R
P
+
R
=
2
×
T
P
样
例
总
数
+
T
P
−
T
N
F1=\frac{2×P×R}{P+R}=\frac{2×TP}{样例总数+TP-TN}
F1=P+R2×P×R=样例总数+TP−TN2×TP
F1度量的一般形式——
F
β
F_β
Fβ,能让我们表达出对查准率/查全率的不同偏好,它定义为:
F
β
=
(
1
+
β
2
)
×
P
×
R
(
β
2
×
P
)
+
R
F_β=\frac{(1+β^2)×P×R}{(β^2×P)+R}
Fβ=(β2×P)+R(1+β2)×P×R
其中,β>0度量了查全率对查准率的相对重要性,β=1时退化为标准的F1;β>1时查全率有更大;β<1时准确率有更大影响。
3.ROC与AUC
ROC全称是“受试者工作特征”
(未完待续)