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

深度学习中的“重参数化”总结

深度学习中的重参数化(Reparameterization)是一种数学技巧,主要用于解决模型训练过程中随机性操作(如采样)导致的梯度不可导问题。其核心思想是将随机变量的生成过程分解为确定性和随机性两部分,使得反向传播能够正常进行。

1. 问题背景:随机节点的梯度阻断

在涉及概率生成的任务中(如变分自编码器VAE),我们希望从潜在变量的分布中采样,这个分布通常是某种分布(例如高斯分布,参数化为均值 \mu 和方差 \sigma^2),传统的采样方法是从正态分布中直接采样(例如潜在变量 z),例如:

其中\mu\sigma 是模型生成的参数。
直接采样会导致问题:

  • 采样操作不可导:梯度无法通过随机节点(如 z)回传到\mu\sigma

  • 无法优化分布参数:模型无法通过反向传播学习如何调整\mu\sigma

重参数化技巧通过引入一个独立的随机变量来解决这个问题,使得采样过程可导。

2. 重参数化的解决方案

通过引入一个外部独立随机变量(通常为标准分布,如标准正态分布),将随机性转移到外部,使采样过程变为可导操作。

重参数化的核心思想是将采样过程分解为两个部分:

  1. 从一个固定的分布(例如标准正态分布 N(0,1))中采样随机噪声。

  2. 通过一个确定性函数将这个随机噪声变换为所需的分布。

以高斯分布为例

原采样过程:

重参数化后:

  • 确定性部分\mu\sigma 是模型输出的参数。

  • 随机性部分:ϵ来自与模型无关的标准正态分布。

其中 ϵ∼N(0,1) 是一个独立的标准正态分布随机变量。

通过这种方式,采样过程 z 就可以表示为 \mu 和 \sigma 的函数,而 ϵ 是从固定分布中采样的。这样,梯度就可以通过 \mu 和 \sigma 传播,从而实现端到端的训练。

3. 梯度传播路径

通过重参数化,梯度可通过确定性路径传递:

  • 计算 

  • 损失函数对 z 的梯度可正常计算。

  • 梯度通过 \mu\sigma 的线性关系反向传播,更新它们的值。

4. 关键优势

  • 保持计算图可导:梯度可流经 \mu\sigma

  • 分离随机性:模型仅需学习确定性参数(\mu,\sigma),随机性由外部噪声 ϵ 承担。

  • 通用性:适用于多种分布(如高斯、拉普拉斯等),只需找到合适的重参数化形式。

5. 实际应用场景

变分自编码器(VAE)
  • 编码器输出 \mu 和 log\sigma^2

  • 采样:通过  生成潜在变量。

  • 解码器 基于 z 重构输入数据。

强化学习(策略梯度方法)
  • 策略网络输出动作分布的参数,通过重参数化采样动作,使梯度可传回策略网络。

生成对抗网络(GAN)
  • 某些GAN变种通过重参数化生成器的输入噪声,提升训练稳定性。

6. 代码示例(VAE中的实现)

def reparameterize(mu, logvar):# logvar 是方差的对数形式(log σ²)std = torch.exp(0.5 * logvar)  # σ = exp(0.5 * log σ²)eps = torch.randn_like(std)    # 采样 ε ~ N(0, 1)z = mu + eps * std            # z = μ + σ·εreturn z

7.优点

  1. 可导性:通过将采样过程分解为确定性变换和随机噪声,使得整个采样过程可导。

  2. 稳定性:避免了直接对随机采样结果求导,提高了训练的稳定性。

  3. 灵活性:可以轻松扩展到其他分布(如伯努利分布)。

8. 其他分布的重参数化

  • 均匀分布 Uniform(a,b):

  • 指数分布 Exp(λ)Exp(λ): 

相关文章:

  • 互联网大厂Java面试:软件架构与大型网站架构设计的较量
  • 操作系统-用户级-内核级线程
  • IOT项目——物联网 GPS
  • 25.4.22华为--算法真题整理(2025年4月22日)
  • 全本地化智能数字人
  • 一个 HTTP 请求进入 Spring MVC 应用后,大致经历了哪些主要步骤?
  • 电商平台数据采集与 QPS 计算全流程解析
  • 逻辑思维与软件开发:从选定方向到风险管理的全流程
  • Linux DRM显示驱动框架技术总结
  • 进阶篇 第 5 篇:现代预测方法 - Prophet 与机器学习特征工程
  • 今日CSS笔记
  • SAS宏调试:高效定位与解决典型问题
  • WLAN 漫游技术全解析:类型、转发模式与应用场景
  • 深度学习--卷积神经网络数据增强
  • 【Linux网络】构建基于UDP的简单聊天室系统
  • python入门简介
  • 课时一 平面机构的自由度与速度分析(上)
  • c语言修炼秘籍 - - 禁(进)忌(阶)秘(技)术(巧)【第七式】程序的编译
  • 生产环境大数据平台权限管理
  • python数据分析(二):Python Pandas索引技术详解
  • 韩国检方以受贿嫌疑起诉前总统文在寅
  • 中海宏洋集团4.17亿元竞得浙江绍兴宅地,溢价率20.87%
  • 聚焦“共赢蓝色未来”,首届 “海洋命运共同体”上海论坛举行
  • 2025航天文化艺术论坛在上海举办
  • 北大强基计划招生简章发布,笔试部分考试科目有变化
  • 神二十发射时间藏着两彩蛋:恰逢东方红一号发射55周年和第十个“中国航天日”