存在错误标注的伪标签为什么会帮助训练出更好的模型?

一直在关注半监督文本分类方向,说说我个人的想法。欢迎大家讨论。伪标签的本质,其实是熵最小化原则,基于一个假设:模型的性能越好,他的输出就应该越接近one-hot(不知道理解的对不对)。所以,筛选出置信度较高的样本,把他们对应的one-hot向量作为伪标签,然后让模型输出的soft output,去接近hard target,让输出的熵(不确定性)降低,从而达到提高模型训练效果的目的,这是我认为伪标签方法的本质。以上的讨论,需要注意的是,要筛选出较高置信度的样本,也就是说,这些样本模型的预测可以近似认为是正确的,在此前提上再进行伪标签训练。所以题主提到的第一个问题,虽然是存在的,但是往往比例较少。给一个比较直觉的理解就是,一个学生在有答案的习题集上做练习,然后在找一本没有答案的练习题,他只挑选部分自己熟练的习题来做,并把自己做的结果都认为是正确的。这样的结果就是,虽然学生不知道自己做的对错,但是他提到了自己的熟练度,会让他对自己的结果更加确信(就是熵的概念)。其实从上面的讨论,我们可以发现一个问题:模型的性能越好,输出真的越接近one-hot吗?我觉得不是的。例如在情感分类中,有些句子本身情感的极性就不明显,one-hot向量往往会丢失很多“dark knowledge”,这就是知识蒸馏研究的动机,也就是让大模型输出的软标签来替代原来的硬标签。其实,在我刚刚接触半监督学习的时候,很自然的认为模型的性能就是由监督信号决定的。但是其实不然,在有监督样本少的时候,会存在很多问题,例如模型的函数空间不平滑,这使得模型的方差很大(过拟合),然而无监督样本的加入可以平滑函数空间,同时降低方差,提高泛化能力。所以在文本中,现在的主流半监督方法往往都是基于一致性训练的。也就是要求模型对于输入微小的变化,不会导致输出过大的差异。这便对函数的平滑性有了要求。在cv里面,用伪标签比较有名的方法,是flexmatch,可以去看看里面的讨论,对于伪标签的理解会进一步加深。(我不怎么关注cv,欢迎补充)其实我也在想,现在的方法往往是对正确的样本进行熵最小化,也就是在本来预测正确的样本少,进一步提高预测的置信度。但是如果能把不那么确信的样本,提供一个相对正确的标签,这样效果是不是更加明显些?

蓝海大脑 京ICP备18017748号-1