我有一个数据集,其中每个对象都有一个介于 0-1 之间的标签。标签 = 1 的对象非常常见,但标签 = 0 的对象非常罕见。我有兴趣在看不见的数据中预测标签。
注意:标签在 0 和 1 之间是连续的,但出于视觉目的而分箱。
这些对象来自一个模拟,该模拟准确地预测了我们在现实中看到的人口数量。(因此是“现实不平衡”的标题)
不幸的是,标签 = 0 的对象表现出看起来随机的运动,因此构建这些对象的方式的数量趋于无穷……而标签 = 1 的对象是高度有序的对象,其结构变化不大,因此具有它们出现的方式有限。
对我来说,这意味着,为了探索这些对象在其域中的所有可能变化,需要一个数据集,其“每个类的数量”将与我们在上图中看到的完全相反。即,您需要观察比 label = 1 个对象成倍增加的 label ~ 0 个对象,以便探索对象的域。
显然这是不可能和不切实际的。我很好奇人们认为解决这个问题的最佳方法是什么?
我曾想过:
- 使其成为一种对象检测方法,您可以借此区分标签大于或低于阈值(例如 0.8)的对象。(我认为这会很困难,因为标签是连续的,所以你会在边界处弄糊涂)。
- 加入两个 CNN:一个对描述标签的特征(例如速度数据)进行建模,另一个对将图像中的物理随机性级别与相应标签相关联的属性进行建模。
我已经尝试过使用 CNN 分类器进行上采样,但是标签数量很少 ~ 0 图像,CNN 很快就会过拟合并默认使用更高的标签来预测它们。
