《机器学习》 周志华学习笔记第二章 模型评估与选择(课后习题)

模型选择与评估

一、内容

1.经验误差与过拟合

1.1 学习器在训练集上的误差称为训练误差(training error),在新样本上的误差称为泛化误差(generalizion error)。

1.2 当学习器把训练样本学习的“太好“了的时候,很有可能已经把训练样本自身的一些特点当作了所有潜在样本都会具有的一般性质,这样就会导致泛化性能下降,这种现象在机器学习中称为“过拟合”。与过拟合相对的是“欠拟合”,是指对样本的一般性质尚未学好。

2.评估方法

2.1 留出法:直接将数据集D划分为两个互斥的集合S(训练集),T(测试集),要保持数据分布的一致性(分层采样)。一般将大约2/3~4/5的样本用于训练,剩余样本用于测试。

2.2 交叉验证法:将数据集D划分为k个大小相似的互斥子集,即D = D1UD2U...Dk。每个子集尽可能保持数据分布的一致性。每次用k-1个子集的并集作为训练集,余下的子集作为测试集;从而可以进行k次训练和测试,最终返回k个测试结果的均值。又称为“k折交叉验证”,比较常用的是10折交叉验证。与留出法相似,数据集D划分为k个子集有多种划分方式。为减小因样本划分不同而引入的差别,k交叉验证通常要随机使用不同的划分重复p次,最终的评估结果是这p次k折交叉验证结果的均值,常见的有10次10折交叉验证。

特殊:留一法

2.3 自助法:实际评估的模型与期望评估的模型都使用m个训练样本。数据量少,难以有效划分训练测试集时很有用,改变了初始数据集的分布,引入了估计偏差

2.4 调参与最终模型:在使用训练数据测试数据评估选择完成后,学习算法和参数配置已选定,此时应该用数据集D重新训练模型

3.性能度量

回归任务最常用的性能度量是“均方误差”

3.1 错误率与精度

3.2 查准率、查全率与F1:P-R曲线,平衡点(Break-Even Point ,BEP) F1 = (2*P*R)/(P+R)

3.3 ROC 与AUC:ROC"受试者工作特这"(Receiver Operatinf Characteristic)曲线。AUC(Area Under ROC Curve)

3.4 代价敏感错误率与代价曲线:代价矩阵

4和5.比较检验,偏差与方差

这一部分个人觉得需要一定的概率论知识,打算先跳过,看看概率论之后再补上。

 

二、课后习题

1.数据集包含1000个样本,其中500个正例,500个反例,将其划分为包含70%样本的训练集和30%样本的测试集用于留出法评估,试估算共有多少种划分方式。

这是一个排列组合问题,500*70% = 350 个正例(反例)做训练集,150个正例(反例)做测试集。

2.数据集包含100个样本,其中正反例各一半,假定学习算法所产生的模型是将新样本预测为训练样本数较多的类别(训练样本数相同时进行随机猜测),试给出用10折交叉验证法和留一法分别对错误率进行评估所得的结果。

10折交叉检验:由于每次训练样本中正反例数目一样,所以讲结果判断为正反例的概率也是一样的,所以错误率的期望是50%。 
留一法:如果留下的是正例,训练样本中反例的数目比正例多一个,所以留出的样本会被判断是反例;同理,留出的是反例,则会被判断成正例,所以错误率是100%。

3.若学习器A的F1值比学习器B高,试析A的BEP值是否也比B高。

这个题目我自己的思路: 就是在BEP点时,P = R ,分别带入A与B 的F1 ,根据大小关系化简得到P1^2/P1 > P2^2/P2 => P1 > P2。 也就是A 的比B 的高。

但是看了其他人的给出了比较复杂的解法,结果也不一样。如果反推确实能证明结论不正确,可是我又不知道上边的证明哪里有问题。。(看了别人的解法 F1 如果就在P = R的地方截断就是能确定的,但是F 1的截断位置是不确定的)

4.试述真正例率(TPR)、假正例率(FPR)与查准率(P)、查全率(R)之间的联系。

查全率: 真实正例被预测为正例的比例 
真正例率: 真实正例被预测为正例的比例 
显然查全率与真正例率是相等的。 
查准率:预测为正例的实例中真实正例的比例 
假正例率: 真实反例被预测为正例的比例 
两者并没有直接的数值关系。

5.试证明(2.22)

用面积证明,lrank 对应的就是曲线上方的面积,罚分0.5的情况就是正好有一个正例一个反例的预测值相等,这样就是一个斜线,面积记0.5。

6.试述错误率与ROC曲线之间的关系

ROCROC曲线每个点对应了一个TPRTPR与FPRFPR,此时对应了一个错误率。 
Ecost=(m+∗(1−TPR)∗cost01+m−∗FPR∗cost10)/(m++m−)
学习器会选择错误率最小的位置作为截断点。

7.试证明任意一条ROC曲线都有一条代价曲线与之对应,反之亦然

由定义可以知道TPRTPR与FPRFPR都是由00上升到11,那么FNRFNR则是由11下降到00。 
每条ROCROC曲线都会对应一条代价曲线,由于第一条代价线段的是(0,0),(1,1)(0,0),(1,1),最后是(0,1)(1,0)(0,1)(1,0), 
所有代价线段总会有一块公共区域,这个区域就是期望总体代价,而这块区域的边界就是代价曲线,且肯定从(0,0)(0,0)到(1,0)(1,0)。 
在有限个样本情况下,ROCROC是一条折线,此时根据代价曲线无法还原ROCROC曲线。但若是理论上有无限个样本,ROCROC是一条连续的折线,代价曲线也是连续的折线,每个点的切线可以求出TPRTPR与FNRFNR,从而得到唯一的ROCROC曲线。

答案参考http://blog.csdn.net/icefire_tyh/article/details/52065867

转载于:https://my.oschina.net/u/3870452/blog/1825758

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值