与已知数据集一致的所有假设的子集集合。
因为假设空间可以因为不同的归类方式而产生不同的归类效果和预测方法,所以设置归纳偏好以得出符合自己要求的模型
误差类型 | 定义 |
---|---|
误差 | 学习器在实际预测中的输出与样本的真实输出之间的差距 |
训练误差/经验误差 | 学习器在训练集上的误差 |
泛化误差 | 学习器在新样本上的误差 |
拟合类型 | 说明 |
---|---|
欠拟合 | 学习次数较为不足,训练误差和泛化误差均为达到最优解 |
过拟合 | 过度学习,使得训练误差下降,但于此同时降低了泛用性,及泛化误差增大 |
将数据集D划为两个互斥的集合,其中一个为训练集S,另外一个为测试集T。及S ⋃ \bigcup ⋃T=1,S ⋂ \bigcap ⋂T= ∅ \emptyset ∅,精度计算方法:在S训练之后,在T中运行,如果300样本中90个错误,则精度为:(300-90)/300=70%
留出法运行的要点:
先将数据集D划分为K个大小相似的互斥子集,每个子集 D i D_i Di尽可能保持数据分布的一致性(采用分层采样),然后以K-1个子集的并集为训练集,剩余的那个子集为测试集,一般常用的K值为5,10,20,即称为K折交叉验证。
交叉验证法运行的要点:
特例 :留一法:假定样本集中共M个元素,且K=M,则此时为留一法(简称LOO),因此留一法训练的模型与原模型即为相似,但当数据量大时有时不如人意。
参考链接:自助法(Bootstraping) - HuZihu - 博客园
在含有 m 个样本的数据集中,每次随机挑选一个样本, 将其作为训练样本,再将此样本放回到数据集中,这样有放回地抽样 m 次,生成一个与原数据集大小相同的数据集,这个新数据集就是训练集。这样有些样本可能在训练集中出现多次,有些则可能从未出现。原数据集中大概有 36.8% 的样本不会出现在新数据集中。因此,我们把这些未出现在新数据集中的样本作为验证集。把前面的步骤重复进行多次,这样就可以训练出多个模型并得到它们的验证误差,然后取平均值,作为该模型的验证误差。
果需要在多个不同的模型中进行选择,那么事先留出测试集,然后在剩余的数据集上用自助法验证模型,选择验证误差最小的模型作为最好的模型,然后用训练集+验证集数据按最好模型的设置训练出一个新的模型,作为最终的模型,最后用测试集测试最终的模型。
为什么原数据集中大概有 36.8% 的样本不会出现在新数据集中?假设数据集中有m个样本,那么每次每一个样本被抽取到的概率是1/m,抽样m次,某个样本始终不被抽取到的概率是(1-1/m)m。当m的取值趋近于无穷大时,样本未被抽中的概率为e的负一次方 ,结果约等于0.368。
优点:训练集的样本总数和原数据集一样都是 m个,并且仍有约 1/3 的数据不出现在训练集中,而可以作为验证集。
缺点:这样产生的训练集的数据分布和原数据集的不一样了,会引入估计偏差。
用途:自助法在数据集较小,难以有效划分训练集/验证集时很有用;此外,自助法能从初始数据集中产生多个不同的训练集,这对集成学习等方法有很大的好处。
略
参考文献: 机器学习模型性能评估(一):错误率与精度、P-R曲线和ROC曲线
P-R曲线是从查准率和查全率的角度去衡量学习模型的泛化性能,ROC曲线则是从更一般的情况下去衡量学习模型的泛化性能,若没有任何先验条件的限制情况下,推荐用ROC曲线去衡量模型的泛化性能。
绘制ROC曲线的思想与P-R曲线一致,对学习模型估计测试样本为正样本的概率从大到小排序,然后根据概率大小依次设置阈值,认为大于阈值的测试样本为正样本,小于阈值的测试样本为负样本,每一次阈值设置都计算”真正例率“(True Positive Rate,简称TPR)和”假正例率“(False Positive Rate,简称FPR)。
TPR和FPR的定义如下:
TP,FP,TN,FN的定义可以参看上面的混淆矩阵。
ROC曲线横坐标为假正例率,纵坐标为真正例率,曲线图如下:
本文对ROC曲线的首末两点进行解释:
测试数据集包含N例正样本和M例负样本,若阈值设置的最大,则学习模型对所有测试样本都预测为负样本,混淆矩阵如下:
TPR = TP / (TP + FN) = 0 / (0 + N) = 0
FPR = FP / (TN + FP) = 0 / (0 + M) = 0
因此,当阈值设置最大时,TPR与FPR均为0
若阈值小于所有模型估计测试样本为正样本的数值时,则测试样本均为正样本,混淆矩阵如下:
TPR = TP / (TP + FN) = N / (N + 0) = 1
FPR = FP / (TN + FP) = M / (M + 0) = 1
因此,当阈值设置最小时,TPR与FPR均为1。
AUC(Area Under Curve)为ROC曲线的面积,面积可以通过梯形面积法求解。
AUC的计算表达式理解起来有点别扭,假设正负样本数均为m例,大家回想下ROC曲线的算法思想,假正例率对应的是真实负样本中分类结果为正样本的比例,真正例率对应的是真实正样本中分类为正样本的比例。
假正例率和真正例率的增长性具有互斥性,每次都只能增加一个,且每次增加的梯度为1/m,横坐标和纵坐标共增加了m次。
理解了这个原理,相信对ROC曲线的绘制和AUC面积的计算应该有更深的认识了。
AUC是衡量模型泛化能力的一个重要指标,若AUC大,则分类模型优;反之,则分类模型差。想象一下,若假正例率不变的情况下,真正例率越大,对应的AUC越大,则模型的泛化能力强,这与实际情况相符。
假设检验是用来判断样本与样本,样本与总体的差异是由抽样误差引起还是本质差别造差别造成的统计推断方法。其基本原理是先对总体的特征作出某种假设,然后通过抽样研究的统计推理,对此假设应该被拒绝还是接受作出推断。
假设检验 - MBA智库百科
假设检验的逻辑是是什么?
交叉验证t检验