当前位置: 首页 > news >正文

【神经网络与深度学习】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 模型的一个标志性特征和基本组成部分。

相关文章:

  • 前端线上错误日志收集与定位指南
  • MySQL概念简介
  • C++ stl中的vector的相关用法 迭代器失效问题
  • 第4章 递推法
  • 1688拍立淘搜索相似商品API接口概述,json数据示例参考
  • 【编译原理】第五章 自下而上语法分析
  • HTML基础2-空元素,元素属性与页面的结构
  • 第35周Zookkeeper+Dubbo Dubbo
  • 力扣热题100之回文链表
  • CPU的基本认识
  • 企业数字化转型第二课:接受不完美(1/2)
  • 2025最新出版 Microsoft Project由入门到精通(二)
  • springboot国家化多语言实现
  • Python中的global与nonlocal关键字详解
  • AV1中的维纳滤波器
  • 数据管道的解耦艺术:Dagster I/O管理器实现存储与逻辑分离
  • Android开发-文本显示
  • 数通HCIE的通过率怎么样?
  • Linux 内核学习(7) --- 字符设备驱动
  • 蓝牙L2CAP协议概述
  • 湖南省邵阳市副市长仇珂静主动向组织交代问题,接受审查调查
  • 马上评|持续对标国际一流,才有22项“全球最优”
  • 金球看淡,不服就干!这是抬不起腿却昂着头的劳塔罗
  • 央行:将支持资本市场两项货币政策工具的额度合并使用
  • 女租客欠租后失联,房东开门后无处下脚:40平公寓变垃圾场
  • 视觉周刊|劳动开创未来