机器学习 划分训练集和测试集的方法

机器学习中划分训练集和测试集的方法

在机器学习中,我们的模型建立完成后,通常要根据评估指标来对模型进行评估,以此来判断模型的可用性。而评估指标主要的目的是让模型在未知数据上的预测能力最好。因此,我们在模型训练之前,要对训练集和测试集进行划分。一般数据集划分的方法有四种:留出法、交叉验证法、留一法、自助法。

在这里插入图片描述
注:数据集D划分为两个互斥的的集合,其中一个集合作为训练集S,另一个作为测试集T

数据集的具体划分方法

1.留出法
留出法直接将数据集D划分为两个互斥的部分,其中一部分作为训练集S ,另一部分用作测试集T。用训练集T进行模型训练,测试集S来评估误差。

在这里插入图片描述
在此划分数据集上,训练/测试集的划分要尽可能保持数据分布的一致性,避免因为数据的分布差距较大对模型的训练结果产生影响。例如在二分类问题上,要保证数据样本的类别分布均匀,则我们通常采用分层采样对数据进行划分比如,现在有1000个数据样本,其中500个正例,500个反例,如果训练集:测试集为7:3,则我们采用分层采样随机取70%的训练集和30%的测试集。划分结果中训练集中包含350个正例和350个反例;测试集中包含150个正例和150个反例。
留出法在选择划分比例时,常常会出现很多问题,如果训练集的比例较大,可能会导致训练出的模型更接近于用D训练出的模型,同时测试集较小,会使评估结果不准确,模型的方差较大;若测试集的比例较大,则有可能导致训练的模型偏差较大,从而降低了评估的保真性。因此,常见的做法是将大约2/3~4/5的样本用于训练,比例划分两类训练集:测试集可以是6:4、7:3或8:2。 如果是三类训练集:验证集:测试集可以是6.2.2,验证集是可选值,但项目越庞大越需要验证集。

2.交叉验证法
(1)首先将数据集D划分为k个大小相似的互斥子集, 每个子集 D i D_i

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值