[机器学习] 半监督学习---伪标签Pseudo-Label
作者:互联网
大数据时代中,在推荐、广告领域样本的获取从来都不是问题,似乎适用于小样本学习的伪标签技术渐渐淡出了人们的视野,但实际上在样本及其珍贵的金融、医疗图像、安全等领域,伪标签学习是一把锋利的匕首,简单而有效。
什么是伪标签技术
先说第一个问题,假设我们现在有一个文本分类模型(先不用管分类模型是怎么来的以及怎么训练的),以及大量的无标注数据。
我们现在使用文本分类模型对无标注数据进行预测,挑选softmax之后概率最大的那个类别为当前无标注数据对应的标签。
因为是无标注数据而且我们模型准确不可能是百分之百,从而导致预测的这个标签我们并不清楚是不是精准,所以我们称之为"伪标签"。
伪标签的定义来自于半监督学习,半监督学习的核心思想是通过借助无标签的数据来提升有监督过程中的模型性能。
想象一下这样一种情况,在训练中,标记数据的数量更少,而未标记数据的数量更多。 一种称为半监督学习( [Semi-Supervised Learning],SSL)的新技术,它是监督学习和非监督学习的混合体。 顾名思义,半监督学习中同时存在一组标记的训练数据和另一组未标记的训练数据。
2 Pseudo-Labelling 伪标签
伪标签是使用标记的数据模型预测未标记数据并进行标记的过程。 首先,模型已经训练了包含标签的数据集,该模型用于为未标记的数据集生成伪标签。 最后,将数据集和标签(原始标签和伪标签)组合在一起以进行最终模型训练。 之所以称为伪(意味着虚幻),是因为它们可能是真实标签,也可能不是真实标签,并且是通过我们基于类似的数据模型生成的标签。
该方法的主旨思想其实很简单。首先,在标签数据上训练模型,然后使用经过训练的模型来预测无标签数据的标签,从而创建伪标签。此外,将标签数据和新生成的伪标签数据结合起来作为新的训练数据。
首先,在标签数据上训练模型,然后使用经过训练的模型来预测无标签数据的标签,从而创建伪标签。此外,将标签数据和新生成的伪标签数据结合起来作为新的训练数据。具体步骤如下:
伪标签的具体用法
伪标签技术的使用自由度非常高,在这里我们介绍最常用的也是最有效的三种:
入门版
1. 使用标记数据训练有监督模型M
2. 使用有监督模型M对无标签数据进行预测,得出预测概率P
3. 通过预测概率P筛选高置信度样本
4. 使用有标记数据以及伪标签数据训练新模型M’
进阶版
1. 使用标记数据训练有监督模型M
2. 使用有监督模型M对无标签数据进行预测,得出预测概率P
3. 通过预测概率P筛选高置信度样本
4. 使用有标记数据以及伪标签数据训练新模型M’
5. 将M替换为M’,重复以上步骤直至模型效果不出现提升
创新版
1. 使用标记数据训练有监督模型M
2. 使用有监督模型M对无标签数据进行预测,得出预测概率P
3. 将模型损失函数改为Loss = loss(labeled_data) + alpha*loss(unlabeled_data)
4. 使用有标记数据以及伪标签数据训练新模型M’
标签:训练,标记,标签,模型,Pseudo,Label,---,监督,数据 来源: https://blog.csdn.net/zwqjoy/article/details/120153445