我可以使用自信的预测来纠正不正确的标签吗?

数据挖掘 机器学习 分类 标签
2021-09-20 23:21:28

通过对我数据的子部分的目视检查,我估计大约 5-6% 的标签是不正确的。

我的分类器仍然表现良好,当我对给定类进行与实际标签相反的预测概率高于 0.95 时,我发现 92% 的分类器预测是正确的。因此,例如,带有标签肯定的评论文本具有 >= .95 的否定概率,实际上大部分时间都是否定的。

因此,我可以使用最自信的预测来纠正一些嘈杂的标签吗?并且不对校正后的数据进行重新训练,而是使用概率来校正验证集和测试集以获得更准确的最终性能并校准估计值(因为嘈杂的标签可能对校准特别有害)。

编辑:跟进下面的答案。

当我在未校正的标签上训练然后预测测试集时,我得到:

校正测试集 - 未经校正的模型训练

当我为正确的测试集训练正确的标签时,我得到:

校正测试集 - 模型训练校正

同样,在未校正数据上训练的模型在原始未校正测试集上的性能优于使用校正数据训练的模型。不知何故,仅从训练集中删除具有高置信度的不正确标签似乎会降低未见数据的性能。我可能不得不删除所有不正确的标签,而不仅仅是那些通过高置信度确定的标签。

编辑编辑:经过一段时间的实验,我得出了以下结论:

似乎预测可以用于标签校正,但应该使用不同的估计器来尝试确定哪些标签不正确。当我使用相同的估计器时,尽管大多数标签校正是有效的(我根据对 500 个样本子集的目视检查确定了 92-93%),但它仍然导致新的预测估计存在偏差。新的估计过于自信(急剧趋向于零和一)。这要么是由于校正,要么可能是由于数据集中的噪声太少(我考虑了噪声实际上有助于估计器不过度拟合的可能性。神经网络被发现校准不佳,作者这篇文章表明,高估实际上可能是一种过度拟合)。

1个回答

目前,您并不真正了解模型的性能,因为您的测试集中有很多错误的标签。

您提到您想使用新的概率来更正验证集和测试集。但是,如果您这样做,您当然会获得更高的结果,因为您使用的是来自您自己的模型的标签。但是,如果您手动验证,则可以。

因此,我的建议是:

  1. 使用所有数据训练分类器。不要进行任何拆分。
  2. 训练后,将所有数据传递给模型。分离模型出错的所有数据。
  3. 手动检查所有错误。您将有几种情况:模型错误但标签正确)在这种情况下,保持标签不变。模型错误但错误)这对你来说是有趣的案例,模型错误但实际上它是正确的,因为原始标签是错误的。纠正这些。
  4. 现在执行训练/验证/测试拆分。
  5. 使用训练/验证拆分重新训练您的模型。
  6. 使用测试拆分测试您的模型。