学习不需要太多标签
Source: Towards Data Science
介绍
通常伴随一个隐含的假设:你需要大量标记数据。
与此同时,许多模型能够在完全没有标签的情况下发现数据结构。
生成模型尤其如此,它们在无监督训练期间常常将数据组织成有意义的簇。当在图像上训练时,它们可能会在潜在表示中自然地将数字、物体或风格区分开来。
这提出了一个简单但重要的问题:
如果模型已经在没有标签的情况下发现了数据的结构,那么实际上需要多少监督才能将其转化为分类器?
在本文中,我们使用 高斯混合变分自编码器 (GMVAE)(Dilokthanakul 等,2016)来探讨这个问题。
数据集
我们使用 Cohen 等人(2017)引入的 EMNIST Letters 数据集,它是原始 MNIST 数据集的扩展。
- Source: NIST Special Database 19
- Processed by: Cohen et al. (2017)
- Size: 145 600 张图像(26 个平衡类别)
- Ownership: 美国国家标准与技术研究院 (NIST)
- License: 公共领域(美国政府作品)
免责声明
本文提供的代码仅用于 研究和可重复性目的。它目前针对 MNIST 和 EMNIST 数据集进行定制,并非设计为通用框架。将其扩展到其他数据集需要相应的适配(数据预处理、架构调优和超参数选择)。
代码和实验可在 GitHub 上获取: https://github.com/murex/gmvae-label-decoding
此选择并非随意。EMNIST 的歧义性远高于经典的 MNIST 数据集,这使其成为突出概率表示重要性的更佳基准(图 1)。
Source: …
GMVAE:以无监督方式学习结构
标准的变分自编码器(VAE)是一种生成模型,它学习数据的连续潜在表示 𝒛。
更精确地说,每个数据点 𝒙 被映射到一个多元正态分布 𝒒(𝒛|𝒙),称为 后验。
然而,如果我们想要进行聚类,这还不够。使用标准的高斯先验时,潜在空间往往保持连续,不能自然地划分为不同的组。
这就是 GMVAE 发挥作用的地方。
GMVAE 通过用 K 个成分的混合模型替代先验来扩展 VAE,其中 K 在事先选定。为此,引入了一个新的离散潜在变量 𝒄:

这使得模型能够学习关于簇的后验分布:

混合模型的每个成分随后可以被解释为一个簇。
换句话说,GMVAE 在训练过程中本质上会学习簇。
K 的选择在表达能力和可靠性之间进行权衡。
- 如果 K 太小,簇会合并不同的风格甚至不同的字母,限制模型捕捉细粒度结构的能力。
- 如果 K 太大,簇会过于碎片化,导致在有限的标记子集上难以估计可靠的标签‑簇关系。
我们选择 K = 100 作为折中:足够大以捕获每个类别内部的风格变化,同时又足够小以确保每个簇在标记数据中得到充分表示(图 1)。

同一字母的不同风格变体被捕获,例如大写 F(c = 36)和小写 f(c = 0)。簇并非纯粹:成分 c = 73 主要代表字母 “T”,但也包含字母 “J” 的样本。
将簇转化为分类器
一旦 GMVAE 训练完成,每张图像就会关联一个关于簇的后验分布:𝒒(𝒄|𝒙)。
在实际操作中,当簇的数量未知时,可以将其视为超参数,并通过网格搜索进行调优。
一个自然的想法是把每个数据点分配到单一簇。然而,簇本身尚未具备语义意义。 为了将簇与标签关联起来,我们需要一个带标签的子集。
一个经典的基线是 先聚类后标记 方法:先使用无监督方法(例如 k‑means 或 GMM)对数据进行聚类,然后根据带标签的子集为每个簇分配标签,通常采用多数投票。这对应于硬分配策略。
相反,我们的方法 不 依赖单一簇的分配。它利用完整的簇后验分布,使每个数据点可以表示为簇的混合,而不是单一离散分配。这可以视为对先聚类后标记范式的概率化推广。
理论上需要多少标签?
在理想情况下,簇是完全纯净且大小相等的。如果我们能够自由选择标记哪些数据点,每个簇只需一个标记样本即可——即总共只需 K 个标签。
在 N = 145 600 且 K = 100 的情况下,这相当于标记数据的 0.07 %。
在实际中,我们假设标记样本是随机抽取的。 在此假设以及簇大小相等的前提下,可以推导出一个近似下界,以在给定置信水平下覆盖所有 K 个簇。对于 K = 100,约需 0.6 % 的标记数据即可达到 95 % 的置信度。
放宽等大小假设会得到更一般的不等式,但它没有闭式解。所有这些计算都是乐观的:真实的簇并非完全纯净(例如,一个簇可能同时包含“i”和“l”,且比例相当)。
为其余数据分配标签
我们比较两种策略:
- 硬解码 – 忽略模型提供的概率分布。
- 软解码 – 完全利用后验分布。
硬解码
-
簇到标签的映射:对每个簇 𝒄,在属于该簇的已标记点中选取出现频率最高的标签,得到函数 ℓ(𝒄)。
-
标签预测:对于未标记的图像 𝒙,找到其最可能的簇

并分配标签 ℓ(𝒄ₕₐᵣ𝒅(𝒙))
。
局限性
- 忽略模型不确定性(GMVAE 可能在多个簇之间“犹豫”)。
- 假设簇是纯净的,这在实际中通常不成立。
软解码
不再为每个簇分配单一标签,而是为每个标签 ℓ 估计一个大小为 K 的概率向量:

该向量经验上表示 p(𝒄|ℓ)。
对于每张图像 𝒙,GMVAE 提供后验概率向量:

我们将 𝒙 分配给使 m(ℓ) 与 q(𝒙) 相似度最大的标签 ℓ:

该公式同时考虑了簇分配的不确定性和簇的杂质。
解释:比较 q(𝒄|𝒙) 与 p(𝒄|ℓ),选择簇分布最匹配 𝒙 后验的标签。
软解码有帮助的具体示例
图 2 展示了软解码优于硬解码的情形。
diagroup.io/wp-content/uploads/2026/04/figure2-1024x279.png)
真实标签是 e。模型对簇的后验分布(中心)对簇 76、 4、 0、 35、 81、 61 给出了高概率。
硬规则选择概率最高的簇(76),该簇主要对应标签 c,导致预测错误。
软解码聚合所有可能簇的信息,实际上执行加权投票。在此示例中,e 的加权得分超过 c,从而得到正确的预测。
这表明硬解码丢弃了后验分布 q(𝒄|𝒙) 中的大部分信息,而软解码则利用了生成模型的全部不确定性。
实际需要多少监督?
理论之外,我们在真实数据上评估该方法,目标如下:
- 确定需要多少标记样本才能达到良好准确率。
- 确认软解码何时能够带来收益。
我们逐步增加标记样本数量,并在剩余数据上评估准确率,比较标准基线:逻辑回归、MLP 和 XGBoost。结果以 5 个随机种子下的平均准确率及 95 % 置信区间呈现(图 3)。

即使在极小的标记子集上,分类器已经表现出令人惊讶的效果。
- 仅使用 73 个标记样本(有若干簇未被代表),软解码相较硬解码实现了 约 18 个百分点的绝对准确率提升。
- 使用 0.2 % 的标记数据(291 个样本,约每个簇 3 个标记实例),基于 GMVAE 的分类器达到了 80 % 的准确率。
- 相比之下,XGBoost 需要约 7 % 的标记数据(≈35 倍 的监督量)才能达到相似的性能。
这些结果凸显了一个关键点:大部分用于分类的结构已经在无监督阶段学习完成——标签仅用于对其进行解释。
结论
使用在 无标签 条件下训练的 GMVAE,我们可以仅凭 0.2 % 的标记数据构建分类器。
- 无监督模型学习了分类所需的大部分结构。
- 标签仅用于 解释模型已经发现的簇。
- 简单的硬解码规则表现良好,但利用完整的后验分布能够提供 持续的提升,尤其在监督稀缺时更为明显。
更广泛地说,这一实验提出了一种对标签高效的机器学习的有前景范式:
- 先学习结构(无监督)。
- 随后添加标签 来 解释 已学习的表示。
在许多情况下,学习并不需要标签——标签仅用于命名已经学到的内容。
所有实验均使用我们自行实现的 GMVAE 及评估流水线完成。
References
- Cohen, G., Afshar, S., Tapson, J., & van Schaik, A. (2017). EMNIST:将 MNIST 扩展到手写字母。
- Dilokthanakul, N., Mediano, P. A., Garnelo, M., Lee, M. C., Salimbeni, H., Arulkumaran, K., & Shanahan, M. (2016). 使用高斯混合变分自编码器的深度无监督聚类。
© 2026 MUREX S.A.S. 与 Université Paris Dauphine — PSL
本作品采用知识共享署名 4.0 国际许可协议进行许可。要查看该许可的副本,请访问 https://creativecommons.org/licenses/by/4.0/。