机器学习-周志华-课后习题答案-模型评估与选择

作者:wzmsltw

最近买了南大周志华教授的 机器学习。觉得内容写的很好,很适合机器学习小白(就是我= =)学习。此书每章有10道题目,没有答案,做完题目有不明白的地方,因此将自己做的答案放上博客,希望看到的朋友能够指正其中的错误之处。


2.1

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

答:留出法将数据集划分为两个互斥的集合,为了保持数据的一致性,应该保证两个集合中的类别比例相同。故可以用分层采样的方法。训练集包含350个正例与350个反例,测试集包含150个正例与150个反例。

故有500C350*500C350 种划分方式

 

2.2

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

答:(1)10折交叉验证法:通过分层采样产生10个互斥子集,每个子集包括10个样本,正反例各半。每次取其中9个子集做训练,1个子集做测试。因此在训练样本中两个类别数目相同,随机进行猜测,因此错误率为50%。

(2)留一法:每次取一个样本做测试集,若取出的样本为正例,那么剩下的训练集中有50个反例,49个正例,因此预测结果为反例,反之亦然。故错误率为100%。

 

2.3

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

答:BEP是查准率P与查全率R相等时的取值,F1则为P与R的调和平均。

若A的F1值要高于B,则在以下不等式中:


令Pa=Ra=BEPa,Pb=Rb=BEPb,得到

BEPa>BEPb

故假设成立

 

 

2.4

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

答:

真正例率是所有真实正例中真正例的比例;

假正例率是所有真实反例中假正例的比例;

查准率是所有预测正例中真正例的比例;

查全率是所有真实正例中真正例的比例;

所以查全率与真正例率相等 , R=TPR

 

 

2.5

题:试证明下式:

AUC=1-lrank, 其中Lrank 是排序损失

答:

按照有限样例绘制的ROC曲线计算公式:


roc曲线中,向上的点是正例点,向右的点是反例点

。。?后续不知道该如何证明。。

 

2.6

题:试述错误率与ROC曲线之间的关系

答:错误率可以用下式表示:


参考真假正例率的定义,由于样本中正例和反例的比例是确定的。因此以某个样本的score为阈值时(即对应ROC曲线中的一个点),该点的真正例率越高,假正例率越低,则错误率越低,因此越靠近(0,1)点错误率越低。

 

 

2.7

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

答:

代价曲线可以由(0,FPR)到(1,FNR)的曲线族包络得到。

由于ROC曲线是连续的,故必然有确定的一条代价曲线与之对应。

反之,对代价曲线上的任何一点作切线,可以得到对应的FPR与FNR,即可以得到ROC曲线上一个点的坐标。因此代价曲线也有一条对应的ROC曲线存在

 

2.8

题:Min-Max规范化与z-score规范化如下所示。试析二者的优缺点。

答:

Min-Max 规范化适用于最大最小值已知的情形。缺点在于当有新数据输入时,可能导致max和min的变化,需要重新定义。

z-score规范化适用于最大值或最小值未知的情况,或有超出取值范围的离群数据的情况。

 

2.9

题:试述卡方检验过程。

答:

根据概率论与数理统计中的内容(交大版本,P239)。卡方检验适用于方差的检验。步骤如下:

1)分均值已知与均值未知两种情况,求得卡方检验统计量

2)根据备选假设以及α,求得所选假设对应的拒绝域

3)根据1)中求得的卡方统计量与2)中求得的拒绝域,判断假设成立与否。


发表评论

12个评论

  • sxq1234baiyang

    请问第1题的500C350*500C350是什么意思?

    2016-09-21 23:34:20回复

  • wzmsltw

    回复sxq1234baiyang: 排列组合

    2016-10-01 21:24:59回复

  • daizziad1314

    不太懂2.3这里为什么可以直接令PA=RA,F1计算所用的P和R值是在哪个阈值下确定的,并不可知是么?

    2016-06-28 18:33:01回复

  • qq_35866808

    回复daizziad1314: 平衡点就是P=R

    2016-08-14 08:47:14回复

  • u012827801

    回复qq_35866808: 但是A的F1值大于B的F1值,我感觉应该是在对应的点,即F1a(x1,y1)>F1b(x1,y1),并不是F1a(x1,y1)>F1b(x2,y2)吧

    2017-07-25 21:15:32回复

加载更多
我要留言×

技术领域:

我要留言×

留言成功,我们将在审核后加至投票列表中!

提示x

机器学习知识库已成功保存至我的图谱现在你可以用它来管理自己的知识内容了

删除图谱提示×

你保存在该图谱下的知识内容也会被删除,建议你先将内容移到其他图谱中。你确定要删除知识图谱及其内容吗?

删除节点提示×

无法删除该知识节点,因该节点下仍保存有相关知识内容!

删除节点提示×

你确定要删除该知识节点吗?