惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
云风的 BLOG
云风的 BLOG
Microsoft Security Blog
Microsoft Security Blog
WordPress大学
WordPress大学
GbyAI
GbyAI
C
Check Point Blog
M
MIT News - Artificial intelligence
T
The Blog of Author Tim Ferriss
Jina AI
Jina AI
博客园 - 【当耐特】
U
Unit 42
月光博客
月光博客
腾讯CDC
Y
Y Combinator Blog
小众软件
小众软件
博客园_首页
Last Week in AI
Last Week in AI
酷 壳 – CoolShell
酷 壳 – CoolShell
The GitHub Blog
The GitHub Blog
博客园 - 聂微东
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
MongoDB | Blog
MongoDB | Blog
博客园 - Franky
T
Tailwind CSS Blog

又见苍岚

COLMAP PatchMatch Stereo 算法详解 事件驱动的状态机框架:从理论到工程实践 Git 在国内网络环境下无法 Push 的排查与修复 —— 配置 Clash 代理 分段五次多项式插值原理详解 路径插值方法深度对比研究 Claude Code 使用指南 OpenClaw 记忆管理与技能创建指南 CBS(Conflict-Based Search)算法详解 A* 算法及其变种详解 OpenClaw 配置多 Agents Windows Powershell 无法加载文件,因为在此系统上禁止运行脚本问题的解决方案 MaxClaw 安装流程 大模型 AI 名词介绍 AList 网盘聚合工具简介 Protobuf 简介与测试 Claude Code 简介以及 GLM 4.7 模型接入 Github 歌词下载工具 163MusicLyrics Python __getattr__ 懒加载 Python TypedDict 机器人仿真平台 Gazebo 安装记录 机器人仿真平台 Gazebo 简介 多机器人路径规划问题(Multi-Agent Path Finding, MAPF)简介 Python exifread 读取修改过的 jpeg 信息错误问题修复 3D 坐标系变换的理解 3D 旋转矩阵基本概念 MongoDB Compass 介绍 Python 环境管理工具 uv Flutter 开发指南 Snipaste 安装下载与黑屏问题解决方案 全局路径规划算法记录
重参数化技巧 - 连续分布采样
Yiwei Zhang · 2024-03-22 · via 又见苍岚

重参数化(Reparameterization)技巧是一种在机器学习和统计学中常用的技术,主要用于将一个随机变量转换成另一个随机变量,同时保证它们的概率分布保持不变,在生成模型中有着重要应用。

简介

重参数化技巧,就是从一个分布 $ p_{\theta}(z) $ 中进行采样,而该分布是带有参数 ${\theta}$ 的,如果直接进行采样(采样动作是离散的,其不可微),是没有梯度信息的,那么在BP反向传播的时候就不会对参数梯度进行更新。重参数化技巧可以保证我们从 $ p_{\theta}(z) $ 进行采样,同时又能保留梯度信息。

连续分布采样

我们考虑以下形式:
$$
J_{\theta}=\int p_{\theta}(z) f(z) d z
$$
其中 $ p_{\theta}(z) $ 可以是任何分布,假如是高斯分布。直接求解上述等式中积分形式通常是不可能的,所以需要进行采样。

重参数化技巧,左图没进行重参数化,右图是进行了重参数化

图中, $x$ 表示高斯分布的均值, $ \phi $ 表示标准差,他们是确定性节点,而需要输出的隐变量 $z$ 是带有随机性的节点,重参数技巧就是把带有随机性的节点变成确定性的节点,将随机性转移出计算图用另一个输入节点 $ \varepsilon $ 进行随机性采样。原本从 $ N\left(x, \phi^{2}\right) $ 中采样得到 $z$ 。将其转化成从标准正态分布 $N(0,1)$ 中采样得到 $ \varepsilon $ ,从而 $ z=x+\varepsilon \cdot \phi $ 。这样就解决了采样导致梯度不可传递的问题。
$$
\begin{aligned} J_{\theta} & =\mathbb{E}{z \sim \mathcal{N}\left(z ; \mu{\theta}, \sigma 2\right)}[f(z)] \ & =\mathbb{E}{\varepsilon \sim q(\varepsilon)}\left[f\left(g{\theta}(\varepsilon)\right)\right] \ & =\mathbb{E}{\varepsilon \sim \mathcal{N}(\varepsilon ; 0,1)}\left[f\left(\varepsilon \times \sigma{\theta}+\mu_{\theta}\right)\right]\end{aligned}
$$

参考资料

文章链接:
https://www.zywvvd.com/notes/study/deep-learning/generation/reparameterized/reparameterized/