【神经网络与深度学习】VAE 在解码前进行重参数化

在 VAE 中,解码之前进行重参数化主要有以下几个重要原因:

可微分性

在深度学习里,模型是通过反向传播算法来学习的,而这需要计算梯度。若直接从潜在变量的分布 (q_{\theta}(z|x))(由编码器输出的均值 (\mu) 和方差 (\sigma^2) 确定的正态分布)中采样得到 (z),这个采样操作是不可微分的。因为采样是一个随机过程,无法通过梯度来优化。

重参数化技巧把采样操作转化为可微分的计算。通过引入一个标准正态分布的随机噪声 (\epsilon \sim N(0, I)),使用公式 (z = \mu + \sigma \cdot \epsilon) 来计算 (z)。这样,在反向传播时就可以计算 (z) 相对于 (\mu) 和 (\sigma) 的梯度,进而更新编码器的参数。

让潜在空间具有连续性和可解释性

  • 连续性:重参数化技巧使得潜在空间是连续的。因为 (z) 是由 (\mu) 和 (\sigma) 以及连续的随机噪声 (\epsilon) 计算得到的,微小的 (\mu) 和 (\sigma) 的变化会导致 (z) 的微小变化。这意味着在潜在空间中相邻的点对应的样本在特征上也是相似的,使得潜在空间具有平滑的结构。
  • 可解释性:在这样连续的潜在空间中,可以进行有意义的操作,如插值和外推。例如,在两个不同样本对应的潜在向量之间进行线性插值,然后将插值得到的潜在向量通过解码器生成新的样本,这些新样本会呈现出从一个样本逐渐过渡到另一个样本的特征,从而使得潜在空间具有可解释性。

提高模型的泛化能力

重参数化有助于 VAE 学习到数据的潜在分布,而不只是记忆训练数据。通过在采样过程中引入随机性(即随机噪声 (\epsilon)),模型在训练时能够接触到更多潜在空间中的样本,从而增强了模型的泛化能力,使其能够更好地生成新的、未见过的数据样本。

便于计算 KL 散度

在 VAE 的训练目标中,需要最小化潜在变量分布 (q_{\theta}(z|x)) 与先验分布 (p(z))(通常是标准正态分布 (N(0, I)))之间的 KL 散度。重参数化使得潜在变量 (z) 的分布可以用参数 (\mu) 和 (\sigma) 来明确表示,方便计算 KL 散度,从而实现对潜在空间分布的约束,使潜在空间的分布更接近先验分布。

重参数化在 VAE 里既是一种"技巧(trick)",同时也是 VAE 实现过程中的关键基本操作,以下从不同角度为你详细解释:

作为"技巧(trick)"的层面

  • 解决不可微问题:在深度学习里,模型借助反向传播算法来更新参数,这就要求所有操作都具备可微性。直接从潜在变量的分布 (q_{\theta}(z|x)) 中采样获取 (z) 属于随机操作,是不可微的。重参数化技巧通过引入标准正态分布的随机噪声 (\epsilon \sim N(0, I)),并运用公式 (z = \mu + \sigma \cdot \epsilon) 来计算 (z),将原本不可微的采样操作转化为可微的计算,从而使模型能够正常进行反向传播和参数更新。这一处理方式并非深度学习中的常规做法,而是为了解决特定问题所采用的巧妙手段,所以可看作是一种技巧。
  • 优化潜在空间结构:重参数化技巧使得潜在空间具备连续性与可解释性。它保证了潜在空间中相邻的点对应的样本在特征上相近,使得在潜在空间中进行插值和外推等操作变得有意义。这种对潜在空间结构的优化并非是模型自然形成的,而是通过重参数化技巧人为实现的,因此也体现了其"技巧"的特性。

作为基本操作的层面

  • VAE 架构的必要组成:在 VAE 的标准架构里,重参数化是必不可少的步骤。编码器输出潜在变量的均值 (\mu) 和方差 (\sigma^2) 后,必须通过重参数化来得到潜在变量 (z),再由解码器根据 (z) 重构数据。缺少重参数化步骤,VAE 就无法正常训练和工作,所以它是 VAE 模型实现过程中的基本操作。
  • 广泛应用与标准化:在 VAE 相关的研究和应用中,重参数化已经成为一种被广泛接受和使用的标准操作。无论是在学术研究还是实际项目里,只要涉及到 VAE 模型,都会采用重参数化技巧。它已经成为了 VAE 模型的一个标志性特征和基本组成部分。
相关推荐
小鸡吃米…5 小时前
机器学习 - K - 中心聚类
人工智能·机器学习·聚类
好奇龙猫6 小时前
【AI学习-comfyUI学习-第三十节-第三十一节-FLUX-SD放大工作流+FLUX图生图工作流-各个部分学习】
人工智能·学习
沈浩(种子思维作者)6 小时前
真的能精准医疗吗?癌症能提前发现吗?
人工智能·python·网络安全·健康医疗·量子计算
minhuan6 小时前
大模型应用:大模型越大越好?模型参数量与效果的边际效益分析.51
人工智能·大模型参数评估·边际效益分析·大模型参数选择
Cherry的跨界思维6 小时前
28、AI测试环境搭建与全栈工具实战:从本地到云平台的完整指南
java·人工智能·vue3·ai测试·ai全栈·测试全栈·ai测试全栈
MM_MS6 小时前
Halcon变量控制类型、数据类型转换、字符串格式化、元组操作
开发语言·人工智能·深度学习·算法·目标检测·计算机视觉·视觉检测
ASF1231415sd6 小时前
【基于YOLOv10n-CSP-PTB的大豆花朵检测与识别系统详解】
人工智能·yolo·目标跟踪
水如烟7 小时前
孤能子视角:“意识“的阶段性回顾,“感质“假说
人工智能
Carl_奕然7 小时前
【数据挖掘】数据挖掘必会技能之:A/B测试
人工智能·python·数据挖掘·数据分析
旅途中的宽~7 小时前
《European Radiology》:2024血管瘤分割—基于MRI T1序列的分割算法
人工智能·计算机视觉·mri·sci一区top·血管瘤·t1