暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Kaggle知识点:伪标签Pseudo Label

Coggle数据科学 2022-02-16
5222

Pseudo Label


伪标签介绍


伪标签(Pseudo Label)是半监督学习中的一个概念,能够帮助模型更好的从无标注的信息中进行学习。
与完全的无监督学习相比,半监督学习拥有部分的标注数据和大量的未标注数据,这种形式也更加适合现实场景和竞赛场景。
  • 在现实,标注数据少,未标注数据多;

  • 在竞赛,训练集有标注,测试集未标注;


那么如何完全将未标注的数据利用起来呢?
在半监督学习中伪标签是其中的方法,具体思路如下:首先利用现有的标注数据,训练得到一个模型;利用训练得到的模型对无标注数据进行预测;然后将无标注数据的预测标签和数据加入训练集一起训练;

伪标签的思路非常简单,在竞赛中非常常见,但上述步骤并不是完全直接预测所有的未标注数据,也不是将所有的未标注数据预测后一起进行训练。
  • 如果初期有标注的数据集比较少,则每次加入的伪标签也不能很多;

  • 上述对未标注数据进行预测和加入训练的过程是迭代进行,不是单次进行的。

在竞赛中伪标签不是万能的,一般情况下伪标签适用于:

  • 非结构化数据,使用深度学习的常见下;

  • 模型的精度较高的情况下,加入的伪标签才精确;

在竞赛中,根据Kaggle的机制伪标签可以分为:
  • 非Kernel赛:线下伪标签,线下预测,进行伪标签训练,再预测;

  • Kernel赛:线上伪标签,线上预测,伪标签再训练预测,再预测;

虽然Kernel机制防止了选手人工标注,但还是这届选手有水平呀!


伪标签 vs 软标签

伪标签与软标签名字上比较类似,两者很容易弄混淆:
  • 伪标签(Pseudo Label)对未标注数据进行预测,进行二次训练;

  • 软标签(Soft Label)对标签转为离散值,进行二次训练;

软标签一般使用在模型蒸馏和某些数据集的训练中,可以让模型学习到样本整体类别分布。同时软标签与硬标签(Hard Label)相比,软标签可以防止模型过拟合,也可以配合mixup一起进行使用。


当然也可以将软标签与伪标签同时使用,如下图的思路。在图中照片的原始标签为car,但照片还有person的类别,如果直接使用硬标签进行训练,会带来一定的模型噪音。

可以将模型的预测概率结果(每类概率分布)代替原始图片的标签进行训练,这样图片的标签就更加合理,模型训练过程也会更加稳定。


伪标签注意事项

  • 在竞赛中如果没有其他涨分的方法,再建议尝试伪标签,否则不建议尝试;
  • 伪标签适合用在深度学习方法中,且一般选择预测执行度高的样本加入训练;
  • 伪标签是否能使用,需要按照举办方规定;


伪标签竞赛案例




  • Instant Gratification,kernel赛

https://www.kaggle.com/cdeotte/pseudo-labeling-qda-0-969

  • Global Wheat Detection,kernel赛

https://www.kaggle.com/nvnnghia/fasterrcnn-pseudo-labeling

https://www.kaggle.com/nvnnghia/yolov5-pseudo-labeling


  • Challenges in Representation Learning

https://www.kaggle.com/c/challenges-in-representation-learning-the-black-box-learning-challenge/discussion/4726


赛事交流群已成立
一起组队参赛,baseline交流分享
如果加入了之前的社群不需要重复添加!

若进群失败,可在Coggle后台回复【竞赛群】
即可得到最新的二维码!
文章转载自Coggle数据科学,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论