CART (rpart) 平衡与不平衡数据集

机器算法验证 分类 分类数据 大车 不平衡类 rpart
2022-04-13 03:01:41

我正在为Olives-dataset安装一棵树(CART) 。训练数据有 436 个观察值(测试数据:136)。我有 3 个响应(“区域”变量)将训练数据分成 116 / 74 / 246 个观察值。

如果我绘制变量二十碳烯酸和亚油酸,我可以看到一个几乎完美的分类。

我为每个响应使用了一个包含 74 个观察值的平衡数据集(顺便说一句,这是正确的还是我应该使用比 74 个观察值更小的尺寸?)并且得到了与不平衡数据集几乎相同的测试数据预测结果。

这就是为什么我想知道在这种情况下是否需要平衡数据集?我认为不需要平衡,但我不确定,想知道其他意见。

2个回答

如果您在特征空间中有良好分离的类,那么只要您有足够的数据来合理地识别类,那么无论您有平衡还是不平衡的训练数据集,测试数据的预测都不会发生太大变化。

如果特征的类分布有很大的重叠,那就另当别论了。正确的做法取决于您的损失函数和您想要预测的未来样本中的类分布。

如果未来样本中的类分布大约为 0.26 / 0.18 / 0.56,就像在训练数据中一样,并且您使用 0-1-loss 函数来计算错误分类的数量,如果您保持训练数据不平衡。

作为一般性评论,除非训练数据集很大,否则我将始终避免实际丢弃数据。如果您期望未来的样本具有与训练数据不同的类别分布,我会尝试将其合并到模型中。在可以通过加权完成的分类树中。如果您使用(朴素)贝叶斯,您可以简单地更改先验类概率。