大数据时代中,在推荐、广告领域样本的获取从来都不是问题,似乎适用于小样本学习的伪标签技术渐渐淡出了人们的视野,但实际上在样本及其珍贵的金融、医疗图像、安全等领域,伪标签学习是一把锋利的匕首,简单而有效。

伪标签的定义

伪标签的定义来自于半监督学习,半监督学习的核心思想是通过借助无标签的数据来提升有监督过程中的模型性能。

举个简单的半监督学习例子,我想去训练一个通过胸片图像来诊断是否患有乳腺癌的模型,但是专家标注一张胸片图像要收费,于是我掏空自己的钱包让专家帮我标注了10张胸片,可是我这10张图片又要划分训练集测试集,咋训练看着都要过拟合哇,这可咋办?

聪明的我问了问专家,说不标注的胸片要钱吗?专家一愣,不要钱,随便拿(此处忽略病人隐私的问题,单纯举例子)。于是我掏出1张标注的胸片,换了10张没标注的胸片,在专家还没缓过劲之前先溜了。

回到家里,我就开始了如图所示的半监督学习过程~

伪标签半监督学习 自监督 伪标签_数据

粗略来讲,伪标签技术就是利用在已标注数据所训练的模型在未标注的数据上进行预测,根据预测结果对样本进行筛选,再次输入模型中进行训练的一个过程。

但实际上,伪标签技术在具体应用的细节上,远没有说的如此简单,那让我们先看一下伪标签技术的具体做法吧。

伪标签的具体用法

伪标签技术的使用自由度非常高,在这里我们介绍最常用的也是最有效的三种,对于某些特殊场景,可能有更花哨的方法,这里希望能抛砖引玉,为大家拓宽一下视野。

入门版

1. 使用标记数据训练有监督模型M

2. 使用有监督模型M对无标签数据进行预测,得出预测概率P

3. 通过预测概率P筛选高置信度样本

4. 使用有标记数据以及伪标签数据训练新模型M’

伪标签半监督学习 自监督 伪标签_过拟合_02

进阶版

1. 使用标记数据训练有监督模型M

2. 使用有监督模型M对无标签数据进行预测,得出预测概率P

3. 通过预测概率P筛选高置信度样本

4. 使用有标记数据以及伪标签数据训练新模型M’

5. 将M替换为M’,重复以上步骤直至模型效果不出现提升

伪标签半监督学习 自监督 伪标签_数据_03

创新版

1. 使用标记数据训练有监督模型M

2. 使用有监督模型M对无标签数据进行预测,得出预测概率P

3. 将模型损失函数改为Loss = loss(labeled_data) + alpha*loss(unlabeled_data)

4. 使用有标记数据以及伪标签数据训练新模型M’

*loss(unlabeled_data)*

4. 使用有标记数据以及伪标签数据训练新模型M’

伪标签半监督学习 自监督 伪标签_数据_04