类分布差异训练/验证。损失现在无法解释?

数据挖掘 美国有线电视新闻网 阶级失衡 损失函数
2022-03-07 06:22:53

我有一个 3 类图像分类问题。这些类是高度不平衡的(大约 98% 的图像属于一个类)。为了抵消这种不平衡的数据,我使用类概率的倒数(1/(类比例))来加权损失。这意味着少数群体的损失会成倍增加。这确实有助于抵消阶级不平衡。

然而,对于这个加权损失,我使用了训练数据集中的比例。在验证数据集中,分布有些不同(验证集中为 96.66%、2.59%、0.75%,而训练集中为 98.28%、0.98%、0.73%)。这意味着如果我使用基于训练集的权重,主要是错误分类的 1 类图像会受到比根据验证集中的分布应有的惩罚要多得多。

这种分布差异的原因是我不能对我的图像进行随机分割,因为它们是由大约 10 个相机拍摄的,它们都在拍摄相同的静态风景(高速公路)。这意味着我必须保留大约 2/3 个摄像头的所有图像作为验证,并使用其他摄像头进行训练,否则模型将过于乐观,因为验证图像与训练图像来自同一个摄像头。

这使得验证数据无法解释加权损失。有没有办法抵消这种情况?例如,为训练/验证集(基于它们各自的分布)提供单独的权重会有所帮助吗?

1个回答

验证集用于估计模型与您的解决方案空间的拟合程度。例如,如果您的训练损失继续减少,但您的验证损失保持不变或增加,那么您应该使用提前停止以避免过度拟合。这不需要加权损失。

如果您想比较训练损失和验证损失,如果分布不同,则不能使用相同的权重。相反,您可以简单地比较每组的平均未加权损失。加权损失用于惩罚。