未标记的数据由监督学习网络标记,即所谓的伪标记。而后应用标记数据和伪标记数据训练网络。
伪标签 (Pseudo-Labels)
伪标签是对未标记数据的进行分类后的指标类,在训练的时候能够像真正的标签一样应用它们,在选取伪标签的时应用的模型为每个未标记样本预测的最大预测概率的类:
伪标签能够用于带有 Dropout 的微调阶段。预训练网络以监督形式同时应用标记和未标记数据进行训练:
其中 n 是 SGD 标记数据中的样本数,n’ 是未标记数据中的样本数;C 是分类总数;
fmi 是标注数据的输入,ymi 是对应的标签;
f’mi 为未标注数据,y’mi 为对应的伪标签;
α(t) 是在 t 期间均衡它们的系数。如果 α(t) 太高,即便是标记数据也会烦扰训练。而如果 α(t) 太小,咱们就不能利用未标记数据的益处。所以 α(t) 在训练期间迟缓减少,以帮忙优化过程防止部分最小值不佳:
试验后果
t-SNE 可视化
应用 MNIST 数据集。神经网络有 1 个暗藏层。ReLU 用于激活,Sigmoid Unit 用于输入。暗藏单元的数量为 5000。应用 600 个标记数据和 60000 个未标记数据进行伪标签标记后再次进行训练。
只管在这两种状况下训练误差为零,但通过应用未标记数据和伪标签进行训练,测试数据的输入显著更好。
熵
MNIST 上标记(训练)数据、未标记数据和测试数据的网络输入的条件熵。
DropNN:在没有未标记数据的状况下进行训练。(Drop 意味着 Dropout。)
+PL:应用未标记的数据进行训练。
尽管在这两种状况下标记数据的熵接近于零,但通过 Pseudo-Label 训练,未标记数据的熵会升高,此外,测试数据的熵也会随之升高。
错误率
具备 600、1000 和 3000 个标记训练样本的 MNIST 测试集上的分类谬误。
标记训练集的大小缩小到 100、600、1000 和 3000。对于验证集,别离选取 1000 个标记示例。
应用雷同的网络和参数进行了 10 次随机宰割试验。在 100 个标记数据的状况下,后果在很大水平上取决于数据拆分,因而进行了 30 个试验。
只管简略,但所提出的办法优于小标记数据的传统办法。训练计划没有 Manifold Tangent Classifier 简单,并且不应用样本之间计算量大的类似度矩阵。
总结
这是一篇 2013 年的论文。尽管论文很老了,然而论文所给出的伪标签的形式在当初(2022 年)还是始终在应用,所以对于这方面不理解的小伙伴举荐查看。
[2013 ICLRW] [Pseudo-Label (PL)] Pseudo-Label: The Simple and Efficient Semi-Supervised Learning Method for Deep Neural Networks
https://www.overfit.cn/post/ae4de5629d074b4b972ad41c629adf3f
作者:Sik-Ho Tsang