在开发机器学习模型时,测试集中每个类的大小重要吗?

数据挖掘 分类 交叉验证 阶级失衡
2022-03-03 13:54:37

我正在考虑将训练有素的分类器在现实世界中的预期应用。我们知道,当我们进行过采样/欠采样以平衡数据集时,我们永远不会触及测试集,因为我们希望保持数据集的真实行为。但我不明白的部分是测试集的分布在分类器性能中的作用。

假设我有一个模型可以将电子邮件标记为垃圾邮件或非垃圾邮件。如果我在我的电子邮件服务中启动此模型,在特定时间窗口内,我的分类器收到的所有电子邮件都可能是非垃圾邮件。但是经过训练的模型对每个类别都有 50-50% 的分布。我的问题是,does this difference in the distribution--during the prospective application-- change the performance of the model?例如,如果我的网络服务在该时间窗口内收到 5 个垃圾邮件和 5 个非垃圾邮件,我应该收到更准确的分类吗?根据我的理解,答案应该是否定的。不过,我到处都看到人们在谈论测试分布的重要性及其在预测模型的性能和准确性中的作用。

谢谢你。

1个回答

取决于你是否要进行在线学习。

假设您将进行在线学习/增量学习,而不是测试集分布会有所作为。例如,由于神经网络的灾难性遗忘。

如果您进行批量预测,那么测试集分布没有什么区别。模型没有区别,因为它不会更改 ist 状态。