半监督学习中的伪标签(Pseudo-Labelling)
作者:互联网
最近在做东西过程中接触到了半监督学习,所以以此篇博客记录个人觉得写的很好的一篇博客,以防遗忘。如若侵权请联系删除。
什么是伪标签技术
伪标签的定义来自于半监督学习,半监督学习的核心思想是通过借助无标签的数据来提升有监督过程中的模型性能。
举个简单的半监督学习例子,我想去训练一个通过胸片图像来诊断是否患有乳腺癌的模型,但是专家标注一张胸片图像要收费,于是我掏空自己的钱包让专家帮我标注了10张胸片,可是我这10张图片又要划分训练集测试集,咋训练看着都要过拟合哇,这可咋办?
聪明的我问了问专家,说不标注的胸片要钱吗?专家一愣,不要钱,随便拿(此处忽略病人隐私的问题,单纯举例子)。于是我掏出1张标注的胸片,换了10张没标注的胸片,在专家还没缓过劲之前先溜了。
回到家里,我就开始了如图所示的半监督学习过程~
粗略来讲,伪标签技术就是利用在已标注数据所训练的模型在未标注的数据上进行预测,根据预测结果对样本进行筛选,再次输入模型中进行训练的一个过程。
但实际上,伪标签技术在具体应用的细节上,远没有说的如此简单,那让我们先看一下伪标签技术的具体做法吧。
伪标签的具体用法
伪标签技术的使用自由度非常高,在这里我们介绍最常用的也是最有效的三种,对于某些特殊场景,可能有更花哨的方法,这里希望能抛砖引玉,为大家拓宽一下视野。
入门版
-
使用标记数据训练有监督模型M
-
使用有监督模型M对无标签数据进行预测,得出预测概率P
-
通过预测概率P筛选高置信度样本
-
使用有标记数据以及伪标签数据训练新模型M’
进阶版
-
使用标记数据训练有监督模型M
-
使用有监督模型M对无标签数据进行预测,得出预测概率P
-
通过预测概率P筛选高置信度样本
-
使用有标记数据以及伪标签数据训练新模型M’
-
将M替换为M’,重复以上步骤直至模型效果不出现提升
创新版
-
使用标记数据训练有监督模型M
-
使用有监督模型M对无标签数据进行预测,得出预测概率P
-
将模型损失函数改为Loss = loss(labeled_data) + alpha*loss(unlabeled_data)
-
使用有标记数据以及伪标签数据训练新模型M’
伪标签为何有效
在《Pseudo-Label : The Simple and Efficient Semi-Supervised Learning Method for Deep Neural Networks》论文中解释了伪标签学习为何有效,它的有效性可以在两个方面进行考虑,原文如下:
Low-Density Separation between Classes
"The goal of semi-supervised learning is to improve generalization performance using unlabeled data. The cluster assumption states that the decision boundary should lie in low-density regions to improve generalization performance (Chapelle et al., 2005). Recently proposed methods of training neural networks using manifold learning such as Semi-Supervised Embedding and Manifold Tangent Classifier utilize this assumption. Semi-Supervised Embedding (Weston et al., 2008) uses embedding-based regularizer to improve the generalization performance of deep neural networks. Because neighbors of a data sample have similar activations with the sample by embedding based penalty term, it’s more likely that data samples in a high-density region have the same label. Manifold Tangent Classifier (Rifai et al., 2011b) encourages the network output to be insensitive to variations in the directions of low-dimensional manifold. So the same purpose is achieved.”
Entropy Regularization
“Entropy Regularization (Grandvalet et al., 2006) is a means to benefit from unlabeled data in the framework of maximum a posteriori estimation. This scheme favors low density separation between classes without any modeling of the density by minimizing the conditional entropy of class probabilities for unlabeled data.”
作者考虑的两个点:
- 根据聚类假设(cluster assumption),这些概率较高的点,通常在相同类别的可能性较大,所以其pseudo-label是可信度非常高的。(合理性)
- 熵正则化是在最大后验估计框架内从未标记数据中获取信息的一种方法,通过最小化未标记数据的类概率的条件熵,促进了类之间的低密度分离,而无需对密度进行任何建模,通过熵正则化与伪标签具有相同的作用效果,都是希望利用未标签数据的分布的重叠程度的信息。(有效性)
在理论外,伪标签技术给人的第一感觉就是利用置信度高的样本来提升模型的拟合能力。在聚类假设及熵正则化的角度上,这是符合我们的感受的,这也使得使用这项技术变得自然而然。
值得注意的是: 当场景不满足 聚类假设 、熵正则化失效(样本空间覆盖密集)情况下,伪标签技术很有可能失效。在用之前判断适用条件,对症下药,才能将伪标签这把匕首的作用发挥出来。
参考文献:TripleLift的知乎
标签:训练,标签,模型,Pseudo,data,监督,Labelling,数据 来源: https://blog.csdn.net/weixin_44438120/article/details/120474158