半监督学习是机器学习的一个分支,在训练过程中同时使用有标签和无标签样本。有标签样本提供已知的目标值,例如图像类别;无标签样本则提供有关输入数据结构的额外信息。它扩展了监督学习,而不要求为每个训练样本都提供标注。当收集输入数据比获取可靠标签更容易时,这种方法尤其适用,不过,增加无标签数据并不一定能提升性能。(pages.cs.wisc.edu)
学习设置与目标
典型的数据集包含有标签样本对 (D_L={(x_i,y_i)}) 和无标签输入 (D_U={u_j}),其中无标签样本通常远多于有标签样本。与无监督学习不同,半监督学习的任务由明确的目标信息来界定。无标签的训练数据用于约束预测器,而不只是提供训练完成后需要分类的样本。(pages.cs.wisc.edu)
许多方法会最小化一个组合损失函数:
[ \mathcal{L}(\theta)= \mathcal{L}{\mathrm{sup}}(\theta;D_L) +\lambda\mathcal{L}{\mathrm{unsup}}(\theta;D_U). ]
其中,(\theta) 表示模型参数,监督项衡量预测与已知目标之间的偏差,无监督项则对预测或表征施加约束。系数 (\lambda) 控制两者的相对影响。这些约束起到正则化的作用,补充标签所提供的有限信息。这种表达形式很常见,但并不能涵盖所有半监督算法。(proceedings.neurips.cc)
归纳式学习方法学习一个能够用于此前未见输入的预测器。直推式学习方法则侧重于为学习过程中可用的某一组无标签输入赋予目标值。两者的区别在于预期的预测场景,而不只是训练中是否使用了无标签样本。(pages.cs.wisc.edu)
关于无标签数据的假设
无标签输入能够揭示输入分布的某些特征,但不会直接给出其正确的目标值。因此,它们是否有用,取决于输入结构与预测任务之间的联系是否符合相应假设。半监督方法通常基于以下几类假设。(doi.org)
- 平滑性: 相近的输入应得到相似的预测,尤其是在样本密集的区域内。
- 聚类结构: 属于同一个有意义的簇的样本,很可能具有相同的标签。这将半监督分类与聚类分析联系起来,但并不意味着每个几何意义上的簇都对应一个类别。
- 低密度分隔: 分类边界应尽量穿过样本稀疏的区域,而不是将密集的样本群分开。
- 流形结构: 高维观测数据可能集中在较低维的几何结构附近,预测结果应沿这些结构平滑变化。这与降维有关。(doi.org)
这些假设并不是所有数据集都具有的普遍性质。如果类别之间存在大量重叠,或者输入之间的相似性反映的是与任务无关的属性,强行将边界置于低密度区域反而可能降低分类效果。因此,表征和相似性度量的选择对这类方法至关重要。(pages.cs.wisc.edu)
主要方法
生成式方法对输入和标签的联合生成过程进行建模。无标签观测数据提供有关输入分布的信息,有标签观测数据则将该分布的不同部分与目标关联起来。这类方法的有效性取决于所假设的生成模型与数据的吻合程度。(mcube.lab.nycu.edu.tw)
基于图的方法(包括标签传播)将样本表示为节点,并以带权重的相似性边连接这些节点。已知标签引导图上的预测,使相互连接的样本倾向于得到相容的输出。相关方法使用核方法来表达相似性或平滑性。低密度分隔方法(包括支持向量机的半监督变体)则利用无标签输入来影响边界的位置。(mcube.lab.nycu.edu.tw)
自训练首先使用有标签样本拟合一个预测器。该预测器对无标签输入的预测结果成为后续训练所用的伪标签,通常会先经过置信度筛选。协同训练使用不同的视图或特征集,让各个预测器相互提供额外的训练标签。两者都将预测结果用作暂定的监督信息,而不是将其视为已经核实的标注。(pages.cs.wisc.edu)
在深度学习中,**一致性正则化**促使人工神经网络在受到扰动时仍产生相容的预测。这些扰动可以包括噪声或数据增强,前提是相应变换不会改变任务的目标。2017 年提出的 Mean Teacher 利用学生模型权重的指数移动平均来构造教师模型的目标。(papers.neurips.cc)
2020 年发表的 FixMatch 将一致性与伪标签相结合。它从经过弱增强的无标签图像中获取高置信度伪标签,然后训练模型,使其对同一图像的强增强版本预测出该标签。置信度低于阈值的样本不会计入这项无标签分类损失。(proceedings.neurips.cc)
与自监督学习和迁移学习的关系
自监督学习从输入本身提取训练信号,例如利用经过变换的不同视图之间的关系。它可以作为半监督学习流程的一个组成部分,而不必是半监督学习的替代方案。一种已得到实验验证的流程结合了自监督预训练、在有限有标签子集上的监督式微调,以及利用无标签样本进行的进一步学习。这类方法已在ImageNet 数据集上进行评估。(arxiv.org)
迁移学习则强调复用从其他数据集或任务中获得的知识。它也可以与半监督训练相结合。因此,在比较不同方法时,必须区分来自目标数据集无标签输入的信息与外部预训练所提供的信息。(proceedings.neurips.cc)
评估与局限
评估需要性能较强的监督学习基线、可比较的模型架构,以及对有标签和无标签数据使用情况的明确记录。在已有数据集中隐藏标签的基准测试方案,未必能复现实际部署条件:无标签样本池可能包含不同的类别,而大型有标签验证集可能使“仅用极少标注即可学习”的说法缺乏说服力。小型验证集也会降低模型选择的可靠性。(proceedings.neurips.cc)
伪标签可能强化错误预测,而不合适的数据增强可能施加无效的一致性约束。因此,实验需要区分无标签数据的贡献与置信度筛选、数据增强及其他训练选择的贡献。性能提升仍取决于数据分布和学习假设,而不会仅仅因为无标签样本池扩大就自然出现。(proceedings.neurips.cc)