多类分类中负面示例的经验法则



对于多类分类任务中代表"其他所有内容"的标签的样本数量应该有多大,是否有经验法则?

示例:我想将我的输入分类为X类之一。当输入为"以上都不是"时,X + 1类将激活。假设我的数据集包含来自 10 个"正"类中每个类的 5,000 个样本。对于表示"未知"类的示例,我会使用多个可能在生产中找到的实际示例,但这些示例不是来自其他类。

相对于其他分布,这些负示例的数量应该有多大?

这可能有点跑题了,但无论如何,我认为没有一般的经验法则,这取决于你的问题和你的方法。

我会考虑以下因素:

  • 数据的性质。这有点抽象,但你可以问问自己,你是否希望"其他一切"类的样本很容易与实际类混淆。例如,如果您想在动物的一般图像中检测狗或猫,可能还有许多其他动物(例如狐狸)可能会混淆系统,但是如果您的输入只有狗、猫或家具的图像,可能就不那么多了。然而,这只是一种直觉,在其他问题上可能并不那么清楚。
  • 您的模型。例如,在这个回答中,我给出了一个相关的问题,我提到了一种对其余类的"其他一切"进行建模的方法,所以你可以争辩说,如果输入不太相似(上一点),即使没有"其他一切"的例子,它也可能只是工作,因为没有其他类被触发。其他技巧,例如为每个类赋予不同的训练"权重"(例如,根据每个类的实例数进行计算),可能会补偿不平衡的数据集。
  • 您的目标。显然,您希望您的系统是完美的,但您可以考虑您是否宁愿有误报或假阴性(例如,错过狗的图像或说没有狗时有狗会更糟)。如果你希望你的输入主要由"其他一切"的实例组成,那么你的模型偏向于该类可能是有道理的,或者可能正是出于这个原因,你想确保你不会丢弃任何潜在的有趣样本。

不幸的是,判断你是否做得好的唯一好方法是在代表性的测试数据集(混淆矩阵、每个类的精度/召回率等)上进行试验并拥有良好的指标。

最新更新