Deep Learning for Computer Vision——Generative Models 1

第一篇:自监督学习的进阶范式(MoCo, DINO, DINOv2)

1. 回顾对比学习 (Contrastive Learning)

  • 核心概念:获取相似的对(正样本)和不相似的对(负样本),将相似对拉近,不相似对推开。

  • 流程:输入未标记图像 x,应用两个随机变换。送入编码器(ViT/CNN)提取特征。计算 2N×2N 的相似度矩阵(NN张图,每张有2个变换版本)。

  • SimCLR的痛点:需要非常大的Batch Size(如8192)来提供足够的负样本,否则任务太简单,模型无法收敛。导致显存爆炸。

2. MoCo (Momentum Contrast, 动量对比学习)

  • 核心设计:解耦 Batch Size 和负样本数量。

  • 结构

    • 当前批次 :Query 通过编码器得到 q。

    • 队列(Queue) :维护一个历史负样本队列 k0,k1,k2...。通过动量编码器得到 k。

  • 动量更新(EMA)

    动量编码器不通过梯度下降更新,而是基于当前编码器的权重滑动平均:

  • 梯度回传 :梯度只通过查询编码器。动量编码器由于计算图太庞大,不接收梯度,通过动量更新保证了负样本特征的一致性。

3. DINO (Self-Distillation with No Labels)

  • 原理 :在 MoCo 的动量架构基础上,用KL散度 / 交叉熵代替点积,用 Vision Transformer (ViT) 代替 ResNet。

  • 架构

    • 学生网络 (Student):输入 x1​,Softmax得到 P1​。

    • 教师网络 (Teacher):输入 x2​,Softmax得到 P2​。教师网络由学生网络的EMA更新。

    • Loss:−P2log⁡P1​(交叉熵)。

  • 💡 核心技巧:Centering + Sharpening (防坍塌)

    • 直接训练会导致模型坍塌(所有输出相同)。教师网络的输出会先减去均值(Centering),再除以较小的温度系数 ττ(Sharpening),以此锐化概率分布,防止输出均匀化。

4. DINOv2

  • 将数据规模从 1M (ImageNet) 扩大到 142M。

  • 生成的视觉特征极强,在 PCA 降维可视化下,不同物体的特征呈现清晰的多彩聚类,是业界常用的自监督特征提取器。

第二篇:生成模型的理论基础

1. 监督 / 无监督学习对比

  • 监督学习:数据为 (x,y)。学习 x→y 的映射。例如分类、检测、分割。容易"过拟合"训练集映射。

  • 无监督学习 :数据只有 x。目标是寻找隐藏结构。例如 K-means 聚类 (寻找簇)、PCA 降维(寻找低维子空间)。任务是模糊的,但可以应用于下游任务。

2. 判别模型 vs 生成模型

  • 判别模型 (Discriminative) :学习 p(y∣x)。预测给定图像 x 的标签分布。特点 :图像之间不存在概率质量竞争 ,每张图各自形成自己的标签分布,但也因此无法拒绝不合理的输入(如输入猴子图,模型被迫输出猫/狗的概率)。

  • 生成模型 (Generative) :学习 p(x)。对所有可能的图像 x 建模,所有可能的图像都在竞争概率质量(Probability Mass)

  • 概率质量竞争 :密度函数 p(x) 必须满足 ∫p(x)dx=1∫。给一只猫分配了概率,给狗的概率就会减少。因此模型必须深入理解数据中的结构,才能分配好概率。它能够拒绝不合理输入(如给抽象画分配低概率)。

  • 条件生成模型 (Conditional Generative):p(x∣y)。给定丰富的标签 y(如文本),生成对应的 x(如图像)。需要深度推理(比如:狗更可能站着还是坐着?)。

3. 贝叶斯公式的联结

  • P(y∣x) 是判别模型,P(x) 是无条件生成模型,P(y) 是先验分布。

  • 理论上,已知任意两个可以求出第三个。但实践中不这么做,因为生成模型学习 p(x) 本身的创造力就足够了,引入判别模型反而容易学不到东西。

4. 最大似然估计 (MLE)

目标 :写出显式函数 p(x)=f(x,W)。

训练过程

  • Log技巧:乘积容易导致数值下溢,取对数变成求和。

  • 最大化似然,等价于最小化交叉熵(Cross Entropy)。使用梯度下降优化。

5. 生成模型分类学 (Taxonomy)

  • 显式密度 (Explicit Density):能计算 p(x) 的具体值。

    • Tractable (可计算):自回归模型 (Autoregressive)。

    • Approximate (近似):变分自编码器 (VAE)。(优化下界)

  • 隐式密度 (Implicit Density):无法计算 p(x),但能采样生成。

    • Direct (直接采样):生成对抗网络 (GAN)。

    • Indirect (间接采样):扩散模型 (Diffusion Models)。

第三篇:自回归模型 (Autoregressive Models)

1. 核心思想与公式

利用概率的链式法则,将高维数据 xx 建模为序列:

  • 应用:RNN/LSTM 语言模型、Masked Transformer(GPT系列)。

  • 直观理解:根据前面的词预测下一个词,根据前面的像素预测下一个像素。

2. 图像上的自回归

  • 难点:图像不是一维序列,也不是自然离散的。

  • 处理方法:将图像光栅化为长序列,每个像素3个8-bit子像素(0-255的整数),作为分类问题预测(256类)。

  • 瓶颈:生成 1024x1024 图像 = 300万个序列长度,计算代价极大!

  • 解决 :不预测单个像素,而是预测图像块(Tile)

第四篇:变分自编码器 (VAE)

1. 普通自编码器 (Autoencoder)

  • 结构 :输入 x -> 编码器 (Encoder) -> 潜在特征 z -> 解码器 (Decoder) -> 重构图像

  • 损失函数 :L2 距离

  • 功能:降维、特征提取。

  • 缺点无法生成新图像! 虽然我们获得了一个 z,但我们不知道如何生成一个全新的 z′ 来输入解码器。

2. VAE 的概率化改造

  • 先验分布:假设 z 来自标准正态分布 p(z)∼N(0,I)。这样我们就能从该分布采样 z′ 并送入解码器!

  • 解码器 (生成模型)

  • 编码器 (推断模型)。注意,这里输出的是一个分布,而不是一个确定的数值。

3. 数学推导:证据下界 (ELBO)

目标 :最大化数据对数似然

引入编码器分布 进行配凑:

乘除

代入期望的定义 并对数展开:

  • 第三项(红色):KL散度必然 ≥0。但真实后验 pθ(z∣x) 无法计算。

  • 结论 :前两项构成了 的下界(ELBO)。

  • 我们的目标就是最大化 ELBO

4. ELBO 的直观解读与损失博弈

  1. 重构损失(Reconstruction Loss)

    • 等价于最大化生成 xx 的概率,在高斯假设下,即最小化 L2 距离
  2. 先验匹配损失(Prior Loss)

    • 强迫编码器输出的分布 接近标准正态分布 p(z)。
  • 💡 损失博弈(对抗)

    • 重构损失希望 ​ 唯一(便于确定性的解码)。

    • 先验损失希望 ,(便于采样)。

    • 网络训练就是在两者之间寻找平衡。

5. 重参数化技巧 (Reparameterization Trick) 与训练

  • 梯度阻断问题:我们不能直接从 N(μ,Σ) 采样 z,因为"采样"是一个随机过程,梯度无法通过随机节点回传。

  • 重参数化:引入外部随机噪声 ϵ∼N(0,I):

  • PyTorch 伪代码: z = mu + torch.exp(0.5 * log_var) * epsilon

  • 这样,随机性被隔离在 ϵϵ 中,梯度可以流经 μz∣xμz∣x​ 和 Σz∣xΣz∣x​ 回传。

  • 训练流程

    1. 输入 x,编码器输出 ​ 和 ​。

    2. 计算先验损失(KL散度)。

    3. 重参数化采样得到 z。

    4. 将 z 输入解码器得到 ​。

    5. 计算重构损失(L2距离)。

    6. 反向传播,最小化总损失。

6. VAE 总结

  • 优点:拥有坚实的概率论基础(最大化 ELBO);可以生成全新的样本;拥有平滑且结构化的潜在空间 z,方便进行插值和属性编辑。

  • 缺点:生成图像往往比较模糊(L2损失倾向于生成平均值);优化的下界可能比较松,导致学到的分布不够精准。

相关推荐
AIGCmagic社区1 小时前
OpenWAM把世界动作模型预训练拆成可替换的受控实验
人工智能·aigc·具身智能
u1301301 小时前
GitHub 热榜项目:日榜(2026-09-18)
人工智能·github
天涯明月19931 小时前
SGLang 设计与实现——RadixAttention 与前后端协同,让 KV 缓存不再用完即弃
人工智能·大模型·推理框架·ai infra
胡家伟++1 小时前
从“过滤”到“选择”:投机解码、拒绝采样与强化学习的方差缩减统一理论
人工智能·机器学习
深兰科技1 小时前
深兰科技受邀参与第二届中国(南宁)—东盟人工智能场景应用对接会,深化AI国际合作
人工智能·qt·r语言·scala·symfony·智能机器人·深兰科技
m0_587383001 小时前
上海24小时自助健身房系统软件开发实战指南:从架构到部署
人工智能·小程序·数据挖掘·系统架构·需求分析
2301_790355971 小时前
深度剖析:AI配音如何实现真正的情感化、拟人化?
人工智能·自然语言处理
万联WANFLOW1 小时前
AI Agent 架构如何重构跨境电商选品与广告投放
网络·人工智能·业界资讯
xsd202411181 小时前
AI试卷批阅系统开发:从图像采集到智能评分的完整技术架构
人工智能