NYU-DLSP20 课程精读:从自监督学习到能量模型——详解 EBM 训练、潜变量建模与对比方法

发布时间:2026/10/10 2:37:27
NYU-DLSP20 课程精读:从自监督学习到能量模型——详解 EBM 训练、潜变量建模与对比方法
示例工程【免费下载链接】NYU-DLSP20NYU Deep Learning Spring 2020项目地址https://gitcode.com/gh_mirrors/pyt/pytorch-Deep-Learning点击查看免费下载本文基于 NYU Deep Learning Spring 2020NYU-DLSP20第七周课程第二部分Yann LeCun 主讲整理而成对应仓库文档 docs/it/week07/07-2.md意大利语版与 docs/en/week07/07-2.md英文原版。文章从自监督学习SSL出发系统梳理能量模型EBM为何适合高维不确定场景、如何用两类方法对比方法/架构方法训练能量函数、潜变量 EBM 及其 K-means 实例并逐条拆解去噪自编码器与对比散度的实现细节。读完本文你将理解为什么要用能量而非概率建模预测并能把 EBM 框架对应到视频预测、图像补全、NLP 掩码建模等具体任务上。1. 开篇为什么需要自监督学习与能量模型1.1 自监督学习SSL的定位与预文本任务自监督学习Self-Supervised Learning, SSL同时涵盖监督学习与非监督学习。其核心思想是通过一个**预文本任务pretext task**学习输入的优质表征之后这些表征可复用于真正的监督任务。在 SSL 中模型被训练为用数据的一部分预测另一部分。课程给出了 SSL 任务的典型定义用过去预测未来Predict the future from the past用可见部分预测被掩码的部分Predict the masked from the visible用所有可用部分预测任意被遮挡部分Predict any occluded parts from all available parts。以移动摄像机预测下一帧为例系统隐式学习深度depth与视差parallax被迫理解被遮挡的物体不会消失而是继续存在同时学会区分有生命物体、无生命物体与背景甚至可能学到重力这类直觉物理概念。NLP 中的标杆案例是 BERT在句子里移除部分单词训练巨型神经网络预测缺失词取得了巨大成功。同样的思路也被尝试用于计算机视觉——如图中所示可移除图像的一部分训练模型预测缺失区域对应 Fig. 2。课程同时指出一个关键事实虽然这类视觉模型能够补全空缺却未获得 NLP 系统同等的成功——用这类模型生成的内部表征作为视觉系统输入无法胜过在 ImageNet 上以监督方式预训练的模型。原因在于离散域与连续域的差异NLP 是离散的我们可以在所有可能输出上做巨大的 softmax归一化指数来显式表达不确定性而图像是连续的无法对连续高维空间做 softmax也就没有直接表达不确定性的标准方式。这正是能量模型EBM登场的原因。自监督学习在时间/空间序列上划分并预测语义单元无需外部标注对应 Fig. 1。2. 从平均模糊到潜变量 EBM视频下一帧预测的困境与出路一个智能体AI agent必须能够预测自身动作对环境和对自身的结果才能做出智能决策。世界并非完全确定机器/人脑也没有足够的算力穷举所有可能因此必须教会 AI 在高维空间中带着不确定性做预测——能量模型对此极为有用。一个直观的反例用最小二乘Least Squares损失训练神经网络预测视频下一帧得到的一定是模糊图像。因为模型无法精确预测未来为了降低损失它学会了对训练数据中所有可能的下一帧取平均。线性回归式的单点预测本质上是期望值输出无法表达多模态未来。课程给出的解决方案是潜变量能量模型Latent Variable EBM不同于线性回归只利用已知信息它把我们对世界的已知与一个描述真实世界发生了什么的潜变量 $z$ 结合起来从而生成接近真实情况的预测。可以把这类模型理解为打分系统观察输入 $x$针对输入 $x$ 与潜变量 $z$ 的不同组合产生可能的预测 $\bar{y}$然后选择使系统能量预测误差最小化的那个。潜变量 $z$ 可以被视为 $y$ 中那些不在 $x$ 里的重要信息——随抽取的 $z$ 不同我们可以得到所有可能的预测结果。标量值能量函数有两种形式条件能量 $F(x, y)$衡量 $x$ 与 $y$ 之间的兼容性无条件能量 $F(y)$衡量 $y$ 各分量之间的兼容性。补充阅读能量函数的定义、基于梯度的推断以及 EBM 与概率模型的关系Gibbs-Boltzmann 分布、自由能 $F_\beta$可参见前序章节 docs/en/week07/07-1.md 与 docs/it/week07/07-1.md本讲周次总览见 docs/en/week07/07.md意大利语版为 docs/it/week07/07.md。3. 如何训练能量模型对比方法与架构方法为参数化 $F(x, y)$训练能量模型共有两类学习模型对比方法Contrastive Methods压低 $F(x[i], y[i])$训练样本处的能量抬高其他点 $F(x[i], y)$非训练样本处的能量架构方法Architectural Methods通过构造 $F(x, y)$ 本身借助正则化技术限制或最小化低能量区域的体积。课程指出共有七种塑造能量函数的策略对比方法的差异在于如何挑选要抬高能量的点架构方法的差异在于如何限制编码的信息容量。3.1 对比方法的代表最大似然学习最大似然Maximum Likelihood是对比方法的典型例子。能量可被解释为未归一化的负对数密度Gibbs 分布给出给定 $x$ 时 $y$ 的似然$$ P(Y \mid W) \frac{e^{-\beta E(Y,W)}}{\int_{y}e^{-\beta E(y,W)}} $$最大似然希望分子大、分母小即最小化 $-\log(P(Y \mid W))$$$ L(Y, W) E(Y,W) \frac{1}{\beta}\log\int_{y}e^{-\beta E(y,W)} $$对于单个样本 $Y$负对数似然损失的梯度为$$ \frac{\partial L(Y, W)}{\partial W} \frac{\partial E(Y, W)}{\partial W} - \int_{y} P(y\mid W) \frac{\partial E(y,W)}{\partial W} $$梯度中第一项是数据点 $Y$ 处的能量梯度第二项是能量梯度在所有 $Y$ 上的期望值。因此执行梯度下降时第一项试图降低数据点 $Y$ 的能量第二项试图抬高所有其他 $Y$ 的能量——这正是对比的机制。由于能量函数的梯度通常非常复杂计算、估计或近似该积分是一个极具挑战的问题在大多数情况下不可解intractable。4. 潜变量 EBM多模态预测的形式化潜变量模型的主要优势是通过潜变量实现多重预测当 $z$ 在某个集合内变化时$y$ 在可能的预测流形manifold上随之变化。典型例子包括K-means稀疏建模Sparse modeling生成式潜变量优化Generative Latent OptimizationGLO。潜变量模型可分为两类1. 条件模型$y$ 依赖 $x$$$F(x,y) \text{min}_{z}, E(x,y,z)$$$$F_\beta(x,y) -\frac{1}{\beta}\log\int_z e^{-\beta E(x,y,z)}$$2. 无条件模型标量值能量函数 $F(y)$ 衡量 $y$ 分量间的兼容性$$F(y) \text{min}_{z}, E(y,z)$$$$F_\beta(y) -\frac{1}{\beta}\log\int_z e^{-\beta E(y,z)}$$补充$F_\beta$ 即物理学家所称的自由能。在 docs/it/week07/07-1.md 中LeCun 强调若想以概率上正确的方式消去潜变量 $z$只需把能量函数重定义为自由能 $F_\beta(x,y)-\frac{1}{\beta}\log\int_z e^{-\beta E(x,y,z)}$最小化对应 $\beta \to \infty$ 的极限且计算该积分在大多数情况下不可解。4.1 潜变量 EBM 实例K-meansK-means 是一个简单的划分聚类算法也可被视为能量模型——我们在尝试对 $y$ 上的分布建模。其能量函数为$$E(y,z) \Vert y-Wz \Vert^2$$其中 $z$ 是 one-hot 向量除一个元素为 1 外其余全为 0$W$ 的列即聚类原型prototype。推断给定 $y$ 和 $k$找出 $k$ 个可能的 $W$ 列中哪一个最小化重建误差能量函数即完成聚类分配。训练一种思路是——找到 $z$ 使 $W$ 中最接近 $y$ 的那一列被选中然后沿梯度走一步使其更接近重复该过程但课程指出坐标下降coordinate descent效果更好、收敛更快。图中可以看到沿粉色螺旋分布的数据点黑斑对应每个 $W$ 原型周围的二次势阱quadratic wells见 Fig. 5。K-means 的能量函数 $E(y,z)\Vert y-Wz\Vert^2$通过最小化重建误差选择聚类原型对应 Fig. 4。学得能量函数后就可以回答这类问题给定点 $y_1$能否预测 $y_2$给定 $y$能否找到数据流形上离它最近的点K-means 属于架构方法与对比方法相对它不在任何地方抬高能量只把某些区域的能量压低。其缺点是一旦 $k$ 确定只有 $k$ 个点能量为 0其他所有点的能量随远离这些原型而二次增长——能量面的表达能力受限于原型数量。5. 对比方法详解去噪自编码器、BERT 与对比散度课程援引 LeCun 的观点未来大家都会用架构方法但现阶段图像任务上有效的仍是对比方法。考虑能量面的数据点与等高线理想情况下能量面应在数据流形上最低。因此我们压低训练样本附近的能量即 $F(x,y)$ 的值但这可能不够——还需要抬高那些本应高能量却低能量区域中 $y$ 的能量见 Fig. 6。寻找需要抬高能量的候选 $y$有多种方式例如去噪自编码器Denoising Autoencoder, DAE对比散度Contrastive Divergence蒙特卡洛Monte Carlo马尔可夫链蒙特卡洛Markov Chain Monte Carlo, MCMC哈密顿蒙特卡洛Hamiltonian Monte Carlo。课程重点展开前两种。5.1 去噪自编码器DAE找到要抬高能量的 $y$的一种方式是对训练样本做随机扰动图中绿色箭头所示见 Fig. 7。一旦得到被扰动的数据点就在该点抬高能量。对所有数据点重复足够多次能量样本就会蜷曲在训练样本周围见 Fig. 8。训练步骤取一个点 $y$ 并扰动corrupt它训练编码器Encoder和解码器Decoder从被扰动的点重建原始数据点。如果 DAE 训练得当能量会随着离开数据流形而二次增长——即能量面在数据流形上形成低谷这正是 EBM 期望的形状。使用阶段则是任意给定一个点包括被扰动的点通过编码器-解码器把它映射回流形上见 Fig. 9。5.2 BERT离散域中的掩码自编码器BERT 以类似方式训练区别在于空间是离散的处理的是文本扰动技术是掩码masking部分单词重建步骤是预测这些被掩码的词——因此这种方法也被称为掩码自编码器masked autoencoder。这正是离散域能成功的原因mask 掉的词可以在巨大的词表上用 softmax 表达不确定性。延伸关联仓库第七周实践部分docs/en/week07/07-3.md实现了标准自编码器与去噪自编码器并讨论欠完备/过完备隐层、过拟合规避与损失函数选择可作为 DAE 原理的动手实验佐证。5.3 对比散度Contrastive Divergence对比散度提供了更聪明的寻找抬高能量点的方法给训练点一个随机踢random kick随机扰动沿能量函数做梯度下降向下移动靠近数据流形在轨迹终点抬高落在该点的能量。图中绿色线条展示了该轨迹见 Fig. 10。与朴素 DAE 的随机扰动相比对比散度通过先沿能量面下滑、再在落点抬升能量使能量面在数据流形处形成低谷同时在高能量区域得到校正属于对比方法中兼顾效率与质量的代表。对比散度随机踢出训练点后沿能量面梯度下降在轨迹终点抬高能量对应 Fig. 10。6. 小结本讲知识在课程体系中的位置本讲第七周 B 部分在课程中的位置清晰A 部分docs/en/week07/07-1.md引入了 EBM 概念与潜变量推断说明前馈网络的两个难题复杂推断过程、单输入多输出B 部分本文对应的 docs/it/week07/07-2.md则在 A 部分框架上深入先讲 SSL 及其与 EBM 的动机联系再讲 EBM 的两类训练方法对比/架构、潜变量 EBM 与 K-means 实例最后以 DAE、BERT、对比散度三个具体方法收尾。实践部分docs/en/week07/07-3.md则落地为自编码器实现。核心知识链条可概括为动机高维连续空间无法用 softmax 表达不确定性 → 需要能量模型推断$\check{y}\text{argmin}_y F(x,y)$引入潜变量 $z$ 后为 $F(x,y)\min_z E(x,y,z)$或自由能形式训练对比方法压低数据点能量 抬高负样本能量vs 架构方法限制低能量区域体积如 K-means 只允许 $k$ 个零能量点实例DAE随机扰动 编码器解码器重建、BERT离散域掩码重建、对比散度随机踢 梯度下滑 落点抬升。掌握这套框架后你可以将任何预测不确定的多模态输出问题视频预测、图像补全、翻译、语音等重新表述为能量函数的推断与训练问题并依据数据是离散还是连续在 softmax 式概率建模与能量建模之间做出合理选择。赞分享示例工程【免费下载链接】NYU-DLSP20NYU Deep Learning Spring 2020项目地址https://gitcode.com/gh_mirrors/pyt/pytorch-Deep-Learning点击查看免费下载相关推荐从自我监督学习到能量基础模型NYU-DLSP20 Week 7 的 SSL 预训练、潜在变量 EBM 与对比训练方法详解从自我监督学习到能量基础模型NYU DLSP20 Week 7 的 SSL 预训练、潜在变量 EBM 与对比训练方法详解 本文基于 NYU DLSP20NY示例工程NYU-DLSP20 第七周能量模型EBM详解自监督学习、潜变量能量模型与对比方法实战NYU DLSP20 第七周能量模型EBM详解自监督学习、潜变量能量模型与对比方法实战 导读 本文基于 NYU 深度学习课程Spring 2020讲师示例工程NYU-DLSP20 潜变量能量模型EBM训练指南从自由能松弛到自监督学习NYU DLSP20 潜变量能量模型EBM训练指南从自由能松弛到自监督学习 本篇文章是 NYU DLSP20NYU Deep Learning Spri示例工程上一篇amis Log 实时日志组件完全指南流式日志展示、轮询方案与超长日志优化下一篇Microsoft Entra ID 密码认证连接 Azure SQL DatabasePassword 示例实战与源码解析创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考