0%

Chapter03

这一章的主要内容是模型的搭建和评估。

任务一:切割训练集和测试集

【思考】

  1. 划分数据集的方法有哪些?

  2. 为什么使用分层抽样,这样的好处有什么?

【回答】

  1. 留出法、交叉验证法、自助法

    1. “留出法”直接将数据集D划分为两个互斥的集合,一个为训练集S,一个为测试集T,即D=S∪T,S∩T=∅。在S上进行模型学习,然后用T来评估其测试误差,作为对泛化误差的估计。单次使用留出法得到的估计结果往往不够稳定可靠,在使用留出法时,一般要采用若干次随机划分、重复进行模型评估后取平均值作为留出法的评估结果。

    2. “交叉验证法”先将数据集D划分为k个大小相同的互斥子集,即D=D1∪D2∪⋯∪Dk,Di∩Dj=∅(i≠j)。其中每个子集Di都应尽量保持数据分布的一致性,即从D中通过分层采样得到。然后,每次都用其中的k−1个子集的并集作为训练集,余下一个作为测试集,这样就可以得到k组训练集/测试集,从而可以进行k次模型的学习,并把这k个测试结果的均值作为评估结果,通常我们把交叉验证法称为“k折交叉验证”。

    3. 在留出法和交叉验证法中保留了一部分样本用于测试,但是我们希望模型是利用D训练出来的。因此,“自助法”是一个比较好的解决方法,它对数据集D进行采样产生新数据集D′每次从D中进行有放回的随机采样,取得样本放入D′中,直至D′ 的样本个数也为m。

  2. 好处

    1. 将抽样单位按某种特征或某种规则划分为不同的层,然后从不同的层中独立、随机地抽取样本。从而保证样本的结构与总体的结构比较相近,从而提高估计的精度。