机器学习基础回顾:监督学习、无监督学习、自监督学习的基本概念与区别,以及表示学习的核心思想
在进入对比学习与多模态自监督预训练之前,必须先厘清机器学习的基本范式。监督学习、无监督学习与自监督学习三者看似界限分明,但在实际工程中往往相互交织——尤其是自监督学习,它既借用了无监督学习“无需人工标注”的表象,又利用了监督学习中“构造输入-目标对”的训练机制。理解这三者的本质区别,以及表示学习(Representation Learning)如何贯穿其中,是掌握后续对比学习、多模态对齐、预训练-微调范式的基础。本章将从概念、机制、适用场景与常见误区四个维度展开,并给出一个可操作的判断路径。
2.1 三大学习范式:核心原理与边界
2.1.1 监督学习:从标注数据中学习映射
监督学习(Supervised Learning)是最经典、最直观的机器学习范式。其核心假设是:存在一个未知的目标函数 \( f: X \rightarrow Y \),我们拥有大量已标注的样本对 \((x_i, y_i)\),目标是学习一个近似函数 \( \hat{f} \) 来逼近 \( f \)。训练过程中,模型通过损失函数(如交叉熵、均方误差)衡量预测值与真实标签之间的差异,并通过反向传播更新参数。
监督学习的优势在于任务目标明确、评估指标清晰(准确率、F1、AUC等),在数据量充足且标注质量高的情况下,性能通常优于其他范式。但其致命瓶颈在于数据标注成本:以图像分类为例,ImageNet-1K 的 128 万张图片标注需要约 2.5 万小时的人工劳动;在医疗影像、自动驾驶等专业领域,标注成本更高,且存在标注者主观偏差。
2.1.2 无监督学习:探索数据内在结构
无监督学习(Unsupervised Learning)不依赖任何标签,直接从数据本身出发,发现其内在的统计规律或结构。常见任务包括:聚类(K-Means、DBSCAN、GMM)、降维(PCA、t-SNE、UMAP)、密度估计、异常检测等。其核心思想是:数据并非随机分布,而是存在某种可被揭示的潜在结构。
无监督学习的价值在于:第一,作为数据探索的初步工具,帮助理解数据分布;第二,为后续监督任务提供特征预处理;第三,在标签完全缺失的场景下提供可行的分析路径。然而,无监督学习缺乏明确的优化目标,结果难以直接评估,且聚类结果往往需要人工解释,这限制了其在端到端任务中的直接应用。
2.1.3 自监督学习:从数据自身构造监督信号
自监督学习(Self-Supervised Learning, SSL)是近年来最受关注的范式。它巧妙地结合了监督学习的训练机制与无监督学习的数据需求:不依赖人工标签,而是从数据自身构造伪标签(Pseudo-label)或前置任务(Pretext Task)。模型通过解决这些前置任务,学习到通用的数据表示。
自监督学习的核心设计在于前置任务的选择。常见类型包括:
- 生成式(Generative):如掩码语言建模(BERT 的 MLM)、掩码图像重建(MAE)、图像着色、未来帧预测等。模型需要根据可见部分预测被掩码或缺失的部分。
- 对比式(Contrastive):如 SimCLR、MoCo、CLIP。模型需要区分正样本对(同一图像的不同增强视图)与负样本对(不同图像的视图),学习到对扰动鲁棒、对语义敏感的表示。
- 预测式(Predictive):如旋转预测、相对位置预测、拼图游戏等。模型需要预测数据的某种变换属性。
关键区别总结:监督学习使用人工标签作为监督信号;无监督学习没有监督信号,仅探索数据分布;自监督学习使用数据自身构造的伪标签作为监督信号。自监督学习在训练机制上更接近监督学习(有明确的输入-目标对),但在数据需求上更接近无监督学习(无需人工标注)。
2.1.4 三大范式对比表
| 维度 | 监督学习 | 无监督学习 | 自监督学习 |
|---|---|---|---|
| 监督信号来源 | 人工标注标签 | 无 | 数据自身构造的伪标签 |
| 训练目标 | 拟合输入到标签的映射 | 发现数据内在结构 | 解决前置任务,学习通用表示 |
| 典型任务 | 分类、回归、检测、分割 | 聚类、降维、密度估计 | 对比学习、掩码重建、预测变换 |
| 数据标注成本 | 高 | 无 | 无(但需设计前置任务) |
| 评估方式 | 直接评估任务指标 | 间接评估(如聚类纯度、重构误差) | 通过下游任务微调或线性探测评估 |
| 计算开销 | 中等 | 较低 | 通常较高(需大量数据预训练) |
| 适用场景 | 标注充足、任务明确 | 数据探索、特征工程 | 数据量大、标注稀缺、多模态对齐 |
2.2 表示学习:从手工特征到语义向量
2.2.1 表示学习的核心思想
表示学习(Representation Learning)的目标是自动学习数据的向量化表示(Embedding),使得该表示能够捕捉数据中的关键语义信息,并便于后续任务使用。在深度学习兴起之前,特征工程依赖人工设计(如 SIFT、HOG、TF-IDF),这些特征往往针对特定任务,泛化能力有限。表示学习通过端到端的训练,让模型自动从原始数据中提取多层次、多尺度的特征。
一个优秀的表示应具备以下性质:
- 语义性(Semantic):相似的样本在表示空间中距离更近。例如,“猫”的图像表示应接近“狗”的图像表示,而远离“汽车”的表示。
- 紧凑性(Compact):用较低维度的向量表达足够丰富的信息,避免维度灾难。
- 泛化性(Generalizable):在预训练阶段学到的表示能够迁移到多种下游任务,无需或仅需少量微调。
- 解耦性(Disentangled):理想情况下,表示的不同维度对应数据的不同语义属性(如颜色、形状、纹理),便于控制与解释。
2.2.2 表示学习在三大范式中的体现
三大学习范式都可以视为表示学习的具体实现路径,区别在于监督信号的来源:
- 监督表示学习:通过分类或回归任务训练骨干网络(如 ResNet、ViT),将倒数第二层的特征向量作为表示。这种方式学到的表示高度任务相关,例如在 ImageNet 上训练的模型,其表示对物体类别敏感,但对纹理、材质等属性不敏感。
- 无监督表示学习:通过 PCA、自编码器(Autoencoder)等方法学习表示。自编码器通过“编码-解码”重建输入,迫使编码器保留足够信息以重建原始数据,但这种方式学到的表示往往包含大量与任务无关的细节噪声。
- 自监督表示学习:通过前置任务学习表示。对比学习(如 SimCLR)通过拉近正样本对、推远负样本对,使表示对数据增强(裁剪、翻转、色彩扰动)鲁棒,同时保留语义判别性。掩码重建(如 MAE)通过预测被掩码的像素块,迫使模型学习全局上下文与局部细节的关系。
经验提醒:自监督学习之所以在近年来超越传统无监督方法,关键在于其前置任务的设计能够引导模型关注语义级的不变性而非像素级的重建。例如,对比学习要求模型对同一物体的不同视角(增强视图)产生一致的表示,这迫使模型忽略颜色、背景等无关因素,而关注物体本身的形状与结构。
2.3 判断路径:如何选择合适的学习范式
在实际项目中,选择哪种学习范式并非随意,而是需要根据数据条件、任务需求与资源约束进行系统判断。以下给出一个可操作的四步决策流程:
- 第一步:评估标注资源。如果已有大量高质量标注数据(如 >10万张带标签图像),且任务明确(如分类、检测),优先选择监督学习。如果标注数据稀缺或标注成本过高,转向自监督或无监督。
- 第二步:明确任务类型。如果任务是数据探索(如用户分群、异常检测),无监督学习更合适。如果任务是端到端预测(如图像分类、文本情感分析),需要监督或自监督预训练+微调。
- 第三步:考虑数据规模。自监督学习通常需要大规模无标注数据(如百万级图像、数十亿文本 )才能发挥优势。如果数据量较小(<1万),直接使用监督学习或迁移学习更稳妥。
- 第四步:评估部署约束。自监督预训练需要大量 GPU 资源与训练时间(如 CLIP 在 4 亿图文对上训练需数百块 A100 数周)。如果资源有限,可考虑使用公开预训练模型(如 ImageNet 预训练 ResNet、BERT、CLIP)进行微调。
2.4 案例拆解:从零构建一个图像分类系统
为帮助理解上述概念,我们设计一个小型场景化案例:某电商平台需要构建一个商品图片分类系统,用于自动识别 100 个商品类别(如手机、笔记本电脑、鞋子、书籍等)。初始阶段面临以下约束:
- 已有 50 万张无标注商品图片(来自平台历史数据)。
- 仅有 5,000 张人工标注图片(每类约 50 张),标注成本约 2 万元。
- 团队拥有 8 张 V100 GPU,训练时间预算为 1 周。
- 最终部署环境为 CPU 服务器,要求单张图片推理时间 < 50ms。
方案设计:
第一步,使用 50 万张无标注图片进行自监督预训练。选择 SimCLR 作为前置任务,采用 ResNet-50 作为骨干网络,输入分辨率 224×224,batch size 256,训练 200 个 epoch。预训练完成后,得到 ResNet-50 的权重,其倒数第二层输出的 2048 维向量即为商品图片的表示。
第二步,使用 5,000 张标注图片进行线性探测(Linear Probing)评估。固定骨干网络参数,仅在表示向量上训练一个线性分类器(Softmax 层)。经评估,线性探测准确率达到 82.3%。
第三步,使用全部 5,000 张标注图片进行全模型微调(Fine-tuning)。将预训练权重作为初始化,在标注数据上以较小学习率(1e-4)训练 50 个 epoch,最终测试准确率达到 91.7%。
对比实验:如果直接使用 ImageNet 预训练权重(监督学习)进行微调,在相同标注数据下准确率为 89.2%;如果完全从零训练(无预训练),准确率仅为 74.5%。自监督预训练相比 ImageNet 预训练提升了 2.5 个百分点,原因在于自监督预训练的数据(50 万张商品图)与目标域(商品分类)分布更一致。
风险与代价:自监督预训练耗时约 4 天(8 卡 V100),消耗电力成本约 3,000 元。此外,SimCLR 对数据增强策略敏感,需要调参(如温度系数 τ=0.1,增强强度)。若数据增强过强,可能导致表示过于鲁棒而丢失细节;过弱则无法学习到不变性。
常见误区提醒:不要盲目认为自监督学习一定优于监督学习。当标注数据充足(如 >10 万张)且与目标域分布一致时,监督学习通常更高效。自监督学习的优势在于利用无标注数据扩大训练规模,而非替代监督信号。此外,自监督预训练后仍需微调才能达到最佳下游性能,线性探测仅用于评估表示质量,不适合直接部署。
2.5 总结复盘:核心要点与常见误区
本章的核心要点可归纳为以下四点:
- 三大范式本质区别在于监督信号来源:人工标签(监督)、无信号(无监督)、数据自身构造的伪标签(自监督)。
- 表示学习是贯穿三大范式的共同主线:无论哪种范式,最终目标都是获得高质量的向量表示,服务于下游任务。
- 自监督学习是连接无监督数据与监督任务的桥梁:它利用无标注数据预训练,再通过少量标注微调,兼顾了数据效率与任务性能。
- 选择范式需综合评估数据、任务、资源三要素:没有最优的范式,只有最适合当前约束的方案。
常见误区包括:将自监督学习等同于无监督学习(实际上自监督有监督信号,只是信号来自数据自身);认为自监督学习不需要任何标注(实际上微调阶段仍需少量标注);忽视数据增强在对比学习中的关键作用(增强策略直接影响表示质量);以及忽略预训练数据与下游任务的数据分布匹配度(域差异过大会导致迁移效果不佳)。