外观
表征学习与预训练
一句话定义:表征学习(representation learning)是让模型自动把原始输入转化成"对任务有用的特征表示",预训练则是先在海量无标注/弱标注数据上把这种能力学到手,再迁移到下游任务。这是现代深度学习的核心范式,也是神经网络基础里"层"的真正意义——每一层都是输入的一次表示变换。
一、核心思想:特征层级与端到端
传统机器学习需要人来设计特征(特征工程):图像要提取边缘、纹理、颜色直方图;文本要词袋、TF-IDF、n-gram。深度学习把这一步**端到端(end-to-end)**地接进了网络:输入原始像素/字符,输出任务答案,中间层自动学出特征。
关键洞察是特征层级(feature hierarchy):
- 浅层:学低层特征(图像边缘、颜色块;文本局部 n-gram 模式)。
- 中层:组合成部件特征(眼睛、轮子;短语、句法片断)。
- 深层:抽象成语义特征(人脸、场景;语义角色、主题)。
这个"由具体到抽象"的层级,正是深度"深比宽高效"的原因(见神经网络基础章节),也让"共享底层、复用高层"成为可能——底层的通用特征可以在任务间迁移。这就是迁移学习的全部前提。
二、embedding 空间与语义相似性
表征学习把每个输入映射成一个低维稠密向量——embedding。这些向量构成一个语义空间,其结构直接反映语义:
- 近邻即相似:相似输入(同义词、同风格图片)的向量距离近。
- 算术即语义:经典例证
king − man + woman ≈ queen(word2vec,Mikolov 2013)——向量空间的"方向"编码了语义关系。 - 下游即分类:线性分类器可以在这个空间上工作(线性可分性越强,表征质量越高)。
这种"把离散世界变成几何空间"的能力,让模型可以跨模态对齐(图文共用一个空间,见多模态模型)、做语义检索(推荐系统里的用户/物品向量)。如何用对比损失直接塑造这种空间,见损失函数与输出层中的 Triplet/InfoNCE。
三、迁移学习与微调策略
迁移学习:把在源任务(大)上学到的知识用到目标任务(小)上。深度学习里最常见的形态是预训练 + 微调。微调时有几个关键旋钮:
- 冻结 vs 全量微调:数据少时冻结浅层(只训顶层),防过拟合(见过拟合与正则化);数据足则全量微调。
- 分层学习率:浅层用小 LR、深层用正常 LR(预训练权重是"精细的起点",别大步踩坏),用
lr = base_lr × 0.1这类分层缩放,见初始化与归一化中的"预训练初始化"。 - 微调长度:微调轮次通常远少于预训练(几个 epoch vs 数十万步),太久会灾难性遗忘(catastrophic forgetting)——把预训练知识"忘掉"。
- 任务头替换:换掉输出层,新任务从小随机初始化开始(配合损失函数与输出层的匹配原则)。
四、预训练-微调范式:CV 与 NLP
两条主线共同验证了"先学通用表征,再适配任务":
- CV 路线:ImageNet 上监督预训练 ResNet/ConvNeXt → 微调到下游(检测、分割、医疗影像)。2015–2020 年这是 CV 的事实标准。
- NLP 路线:BERT(2018)做"掩码语言建模 + 下一句预测"自监督预训练 → 微调做分类/问答/翻译。随后 GPT 系列把范式升级为"预训练 + 提示/指令",大语言模型直接用自回归生成统一所有任务,见大语言模型(LLM)。
两条路线的共同演进方向:预训练规模越滚越大,微调越来越轻(从全量微调 → LoRA/Adapter 等参数高效微调 → 上下文学习)。从 BERT 到 GPT 的架构选择,可对照Transformer 架构与生成式模型。
五、自监督学习:SimCLR 与 MAE
自监督学习(self-supervised learning, SSL)从数据本身构造监督信号,不需要人工标注——这是预训练能规模化到互联网级语料的根本。两条主流路线:
对比学习:SimCLR(2020)
思想:同一个样本的两个不同增强视图应映射到相近的 embedding,不同样本应拉开。
正样本对:同一张图裁剪/变色/模糊后的两版 → 拉近
负样本对:不同图 → 推远关键设计(SimCLR 的贡献):更强的数据增强、非线性投影头(projection head)、大 batch 提供足够负样本。后续 MoCo(动量编码器 + 队列)、BYOL、SimSiam 去掉了对负样本的依赖,训练更稳。InfoNCE 就是这套系统的损失,其公式见损失函数章节中的对比损失。
掩码重建:MAE(Masked Autoencoder,2021)
思想:随机遮挡输入的大部分(如 75% 的图像块),让模型重建被遮住的像素。BERT 是文本版的掩码重建;MAE 把它带到视觉,用非对称编码器-解码器结构高效实现。对比两条路线:
- 对比学习学"不变性":什么变换不该改变语义。
- 掩码重建学"结构性":被遮住的部分应能被周围推断出来——更接近"理解内容本身"。
两者互补,MAE 在视觉上成为与 SimCLR 并行的主流。更多家族介绍见表征学习应用综述中的自监督论文。
六、度量学习与线性探测
怎么评估表征好不好?两个互补手段:
- 线性探测(linear probing):冻结表征,只在上面训练一个线性分类器。线性可分性好 = 表征里已含类别语义,说明"学得干净"。
- k-NN / 检索:用表征做最近邻分类、语义检索——直接检验 embedding 空间的几何结构。
这两者把"表征质量"从"下游任务指标"里独立出来。而度量学习(metric learning)则是主动用 Triplet/InfoNCE 等损失"塑造"这个空间(损失设计见损失函数章节),让表征满足"同类近、异类远"。评估口径的完整性见深度学习评估与实验。
有趣对照
表征学习 vs 生成式学习:生成式模型(VAE/GAN/扩散)把"重建/采样"当作目标,顺带获得表征;判别式表征学习直接优化语义分离。两者在生成式模型章节里还有更多交叉(如扩散模型的隐表征被用于视觉分类)。
七、表征的偏见与鲁棒性
表征不是中立的——它忠实地反映训练数据的统计,包括其中的偏见:
- 统计偏见:预训练语料里"护士→女性、程序员→男性"的共现统计会被学进 embedding 空间(
doctor − man + woman的类比结果可以反映偏见)。 - 分布偏见:预训练数据若以英语/西方文化为主,其他语言与文化的语义空间被压缩。
- 鲁棒性:表征对分布变化、对抗扰动的稳健性,决定了迁移后的表现。
处理手段:数据去偏(见数据与数据工程)、公平性评估与修正(见可解释性与公平性)。记住一条原则:预训练模型不是"真理"的载体,而是"数据统计"的载体。
八、权衡与取舍
权衡与取舍
表征通用性 vs 任务特异:预训练表征越通用(大而广的预训练),对特定小任务可能不如从零训练的特异表征——小数据任务优先迁移,大数据任务可考虑从零训。
对比学习 vs 掩码重建:对比学习需要精心设计增强与负样本、对 batch 大小敏感;掩码重建训练目标简单但重建不一定带来最佳判别语义。两者选型取决于下游是"判别"还是"重建"。
全量微调 vs 参数高效微调(PEFT):全量微调效果上限高,但每个任务要存一份完整模型;LoRA 等 PEFT 只训少量低秩适配参数,成本低、切换快,是 LLM 时代的默认(见大语言模型(LLM))。
预训练收益 vs 环境成本:大预训练消耗海量算力与能源(见 MLOps 章节),中小团队应尽量复用公开权重,而不是重复预训练。
表征学习是理解现代深度学习的一条主线:它解释了"为什么深度"、支撑了"预训练-微调"、催生了自监督革命。把注意力机制、生成式模型章节与本文连起来读,就能看到"无监督数据 → 好表征 → 通用能力"这条当代 AI 的主干道。动手体验迁移学习与线性探测,见渐进式教程。
延伸阅读
- 注意力机制——现代表征学习的主力层
- 深度学习评估与实验——线性探测与表征质量评估
- 数据与数据工程——预训练语料的质量与去偏
- 初始化与归一化——预训练初始化的配套手段
- 多模态模型——跨模态对齐的共享表征空间
- 渐进式教程——动手体验迁移学习与线性探测
参考资料
- Mikolov et al. Efficient Estimation of Word Representations in Vector Space (2013)
- Devlin et al. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding (2019)
- Chen, Kornblith, Norouzi, Hinton. A Simple Framework for Contrastive Learning of Visual Representations (2020, SimCLR)
- He et al. Masked Autoencoders Are Scalable Vision Learners (2022, MAE)
- Bengio, Courville, Vincent. Representation Learning: A Review and New Perspectives (2013)
- Bommasani et al. On the Opportunities and Risks of Foundation Models (2021)