半监督学习 (supervised learning) (semi-supervised learning)(SSL)应对机器学习 (machine learning)中的一种常见情况:即拥有大量无标签数据,同时只有少量、通常获取成本较高的有标签数据。其目标是运用这两种数据类型,构建性能超越仅使用有标签数据训练的模型。变分自编码器(VAE)凭借其从无标签输入中习得丰富数据表示的固有能力,为半监督学习提供了一个有用的方法体系。
VAE在半监督分类中的应用
VAE在半监督学习 (supervised learning) (semi-supervised learning)中使用的核心思想是:VAE从所有可用数据(有标签的 XL 和无标签的 XU)学到的潜在空间 z,相比原始输入数据 x,能为后续分类任务提供更具结构性且信息量更多的表示。在有标签数据稀少时,这一点尤其有利。
一种普遍且有效的方法包括一个VAE,它学习从 x 到 z 再返回 x 的映射,并结合一个分类器,该分类器在此习得的潜在表示上进行操作。
-
VAE用于表示习得: 变分自编码器(VAE),由编码器 qϕ(z∣x) 和解码器 pθ(x∣z) 构成,在整个数据集(XL∪XU)上进行训练。其目标是最大化证据下界(ELBO):
LVAE(x)=Eqϕ(z∣x)[logpθ(x∣z)]−DKL(qϕ(z∣x)∣∣p(z))
此过程促使编码器在潜在空间 z 中捕获输入数据的显著特征。先验 p(z) 通常是标准高斯分布 N(0,I)。
-
潜在空间上的分类器: 一个独立的分类网络 fψ(y∣z) 被训练用来使用从数据有标签部分 XL 获得的潜在编码 zL 预测标签 y。分类损失 LC 通常是真实标签 yL 和预测标签 y^L=fψ(zL) 之间的交叉熵。
LC(yL,y^L)=−i∑yL,ilogy^L,i
这两个组成部分通常联合训练。总目标函数结合了VAE的ELBO(应用于所有数据)和分类损失(仅应用于有标签数据),并通过超参数 (parameter) (hyperparameter) γ 进行加权:
JSSL=x∈XL∪XU∑(Eqϕ(z∣x)[logpθ(x∣z)]−DKL(qϕ(z∣x)∣∣p(z)))+γ(xl,yl)∈DL∑LC(yl,fψ(qϕ(z∣xl)))
超参数 γ 平衡了生成(VAE)任务和判别(分类)任务的贡献。以下是说明这种常见架构的图表。
VAE半监督学习的一种常见架构。VAE处理有标签和无标签数据以习得表示。分类器随后使用来自有标签数据的这些表示进行监督训练。
半监督学习 (supervised learning) (semi-supervised learning)的集成生成模型
更紧密集成的方法,例如Kingma等人(2014)提出的M1和M2模型,将 y 视为生成模型本身的随机变量。例如,M2模型假设的生成过程是 p(y)→p(z∣y)→p(x∣z)。标签 y 影响潜在变量 z 的生成,而 z 又生成 x。
此类模型的损失函数 (loss function)变得更为复杂。对于有标签数据 (xl,yl),ELBO的制定是为了反映 logp(xl,yl)。对于无标签数据 xu,模型必须对未知标签进行边缘化。这通常通过引入一个辅助推断网络 qψ(y∣xu) 来完成,该网络预测无标签样本的标签分布。然后,无标签数据的ELBO涉及对这些预测标签分布的期望:
Lunsup(xu)=k∑qψ(y=k∣xu)(Eqϕ(z∣xu)[logpθ(xu∣z)+logp(z∣y=k)+logp(y=k)]−DKL(qϕ(z∣xu)∣∣p(z∣y=k)))+H(qψ(y∣xu))
项 p(z∣y=k) 是潜在变量的类别条件先验,而 H(qψ(y∣xu)) 是一个熵项,它在适当时鼓励 qψ(y∣xu) 给出确定性预测。分类器 qψ(y∣x) 也使用有标签数据进行判别性训练,通常通过总损失函数中的一个额外项,例如:
Lclassifier_sup=(xl,yl)∈DL∑−logqψ(yl∣xl)
这些集成模型理论上能更好地捕捉潜在的联合分布 p(x,y),从而可能带来更好的生成和分类表现。然而,它们也引入了更大的模型复杂度和更精细的训练动态。
架构与训练考量
- 网络组成: 编码器 qϕ(z∣x)、解码器 pθ(x∣z)(或在某些模型中的 pθ(x∣z,y))以及分类器 fψ(y∣z)(或 qψ(y∣x))通常是神经网络 (neural network)。它们的架构(例如,用于图像的CNN,用于序列的RNN)应根据数据模态选择。
- 参数 (parameter)共享: 编码器 qϕ(z∣x) 共享用于处理有标签和无标签数据。分类器 fψ(y∣z) 在此共享编码器生成的潜在编码上操作。
- 训练批次: 训练期间,小批量数据通常通过从有标签池 DL 和无标签池 DU 中采样来构建。这确保了VAE重构/正则化 (regularization)项和监督分类项都对梯度更新有所贡献。
- 损失平衡: 权重 (weight)因子 γ(以及在更复杂目标中可能存在的其他各项权重)很重要。它的值决定了习得良好表示与在有标签集上实现高分类准确率之间的相对重要性。为了获得最佳性能,通常需要适当调整这些权重。
基于VAE的半监督学习 (supervised learning) (semi-supervised learning)的优势
- 无标签数据的有效运用: VAE自然地运用大量无标签数据来习得数据的潜在结构和变化。
- 少量标签下的分类改进: 习得的表示能够显著提升分类器的性能,尤其当有标签样本数量较少时。
- 更优的泛化能力: 通过从更广的数据分布(包括无标签样本)中学习,模型可能更好地泛化到未见数据。
- 类别条件生成: 明确将 y 纳入生成过程的模型(如M2的一些变体)可以用于生成以特定类别标签为条件的新样本,例如 p(x∣y,z) 或 p(x∣z),并且 z∼p(z∣y)。
挑战与局限
- 后验坍缩: 与标准VAE类似,如果解码器过于强大或KL散度项权重 (weight)过高,潜在变量 z 可能会被解码器忽略,导致潜在空间信息不足。这会阻碍分类器 fψ(y∣z) 的性能。
- 有标签与无标签数据不匹配: 如果无标签数据的分布与有标签数据显著不同(领域漂移),从无标签数据习得的表示可能对有标签数据的分类无益,甚至有害。
- 复杂性与调优: 集成半监督VAE模型相比更简单的流程,在实现和训练上可能更复杂。调整超参数 (parameter) (hyperparameter)如 γ 以及不同模型组件的学习率需要仔细实验。
- 优化难度: 平衡多个目标(重构、KL正则化 (regularization)、分类准确率)有时可能导致具有挑战性的优化局面。
尽管存在这些挑战,VAE仍为半监督学习 (supervised learning) (semi-supervised learning)提供了一种多功能且有原则的方法体系。通过有效结合VAE进行无监督表示学习的能力与来自有限有标签数据的监督信号,这些模型能在有标签数据成为瓶颈的任务上获得良好表现。选择更简单的特征提取方法还是更集成的生成模型,通常取决于具体问题、可用数据量和计算资源。