我有一个总数据集,规模为10,000。我知道我可以使用分层拆分来创建训练集和测试集,然后我可以再运行一次(第二次在测试集上)来获得验证集和测试集。我可以对这10,000个样本进行这样的操作。我知道我可以使用StratifiedShuffleSplit。
在我的工作中,我只需要使用1,000个样本。有没有一种好方法可以只用数据的一个子集来做这件事?我希望保留原始10,000个数据集中各类的百分比,但将其应用到1,000个样本的集合中。
回答:
如果其他人也有同样的疑问,我已经找到了解决方法。
我可以简单地将train_size和test_size参数设置为整数。然后我再次在测试集上运行拆分,使用50/50的比例来获得验证集和测试集。