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

Tweedie 公式

学习路径

在这里插入图片描述

概论

Tweedie’s Formula(特维迪公式) 是这些Denoising AutoencoderScore-based 模型 或 Diffusion Model 的理论基础背后“从噪声中恢复信号”的数学核心。


0. 场景与记号(全部变量的意义)

  • (x∈Rd)(x\in\mathbb{R}^d)(xRd):真实的干净信号(先验 p(x)p(x)p(x) 未知但假设良好)。
  • (y∈Rd)(y\in\mathbb{R}^d)(yRd)观测(被噪声污染后的样本)。
  • ε∈Rd\varepsilon\in\mathbb{R}^dεRd高斯噪声(ε∼N(0,Σ))(\varepsilon\sim\mathcal{N}(0,\Sigma))(εN(0,Σ))
  • Σ∈Rd×d\Sigma\in\mathbb{R}^{d\times d}ΣRd×d噪声协方差,对称正定。各向同性时 Σ=σ2I\Sigma=\sigma^2 IΣ=σ2I
  • p(x)p(x)p(x):先验密度;(p(y∣x)(p(y\mid x)(p(yx):似然(由噪声模型);p(y)p(y)p(y):边际密度;p(x∣y)p(x\mid y)p(xy):后验密度。
  • ∇y\nabla_yy对向量 (y) 的梯度算子(见 §1 解释)。
  • 目标是平方误差意义下的最优去噪:x^(y):=E[x∣y]\hat x(y):=\mathbb{E}[x\mid y]x^(y):=E[xy]

噪声模型:y=x+ε,ε∼N(0,Σ)⇒p(y∣x)=N(y;x,Σ)y=x+\varepsilon,\ \varepsilon\sim\mathcal{N}(0,\Sigma)\Rightarrow p(y\mid x)=\mathcal{N}(y;x,\Sigma)y=x+ε, εN(0,Σ)p(yx)=N(y;x,Σ)


1. 概念解释

1.1. ∇y\nabla_yy 向量梯度算子 是什么?

对标量函数 (f:Rd→R)(f:\mathbb{R}^d\to\mathbb{R})(f:RdR)
∇yf(y)=[∂f∂y1(y)⋮∂f∂yd(y)]∈Rd.\nabla_y f(y) =\begin{bmatrix} \frac{\partial f}{\partial y_1}(y)\\\vdots\\\frac{\partial f}{\partial y_d}(y) \end{bmatrix}\in\mathbb{R}^d. yf(y)=y1f(y)ydf(y)Rd.
它是所有一阶偏导的“向量打包”。几何意义:在点 yyy∇yf(y)\nabla_y f(y)yf(y) 指向 fff 增长最快的方向,模长给出最大增长率。
在 Tweedie 里我们会用到 s(y):=∇ylog⁡p(y)s(y):=\nabla_y\log p(y)s(y):=ylogp(y)(score 函数)。

1.2. Σ\SigmaΣ 协方差矩阵(Covariance Matrix)是什么

推荐好文:https://zhuanlan.zhihu.com/p/37609917

设有d组随机向量xk=[x1x2⋮xd]kk=1,2,...,d\mathbf x_k = \begin{bmatrix} x_1\\ x_2\\ \vdots \\ x_d\\ \end{bmatrix}_k\qquad k=1,2,...,dxk=x1x2xdkk=1,2,...,d
期望为对每个维度的数据求平均。
μ=E[x]=[E[x1]E[x2]⋮E[xd]],E[xi]=1d∑k=1dxk(i)\mu = \mathbb{E}[\mathbf{x}] = \begin{bmatrix} \mathbb{E}[x_1]\\ \mathbb{E}[x_2]\\ \vdots\\ \mathbb{E}[x_d] \end{bmatrix},\qquad \mathbb{E}[x_i] = \frac{1}{d}\sum_{k=1}^d \mathbf x_{{k}_{(i)}}μ=E[x]=E[x1]E[x2]E[xd],E[xi]=d1k=1dxk(i)
Σ 是在所有样本中,不同维度之间的方差和相关性结构,协方差为
Σ=E[(x−μ)(x−μ)T]=E[[x1−μ1x2−μ2⋮xd−μd][x1−μ1,x2−μ2,…,xd−μd]]⇒Σ=[E[(x1−μ1)2]E[(x1​−μ1​)(x2​−μ2​)]...E[(x2​−μ2​)(x1​−μ1​)]E[(x2−μ2)2]...⋮⋮⋱]其中:E[(x1−μ1)2]=1d∑k=1d(xk(i)−μi)2\Sigma=\mathbb E[(\mathbf x - \mu)(\mathbf x - \mu)^T]=\mathbb E \left[ \begin{bmatrix} x_1-\mu_1\\ x_2-\mu_2\\ \vdots\\ x_d-\mu_d\\ \end{bmatrix} \begin{bmatrix} x_1-\mu_1, x_2-\mu_2, \dots, x_d-\mu_d \end{bmatrix} \right]\\ \\\quad \\\quad \Rightarrow \Sigma= \begin{bmatrix} \mathbb E[(x_1-\mu_1)^2] &\mathbb E[(x1​−μ1​)(x2​−μ2​)] & ... \\ \mathbb E[(x2​−μ2​)(x1​−μ1​)] & \mathbb E[(x_2-\mu_2)^2] & ...\\ \vdots & \vdots & \ddots \end{bmatrix}\\ \\\quad \\\quad 其中:\mathbb E[(x_1-\mu_1)^2] = \frac{1}{d}\sum_{k=1}^d (\mathbf x_{{k}_{(i)}}- \mu_i)^2Σ=E[(xμ)(xμ)T]=Ex1μ1x2μ2xdμd[x1μ1,x2μ2,,xdμd]Σ=E[(x1μ1)2]E[(x2​μ2​)(x1​μ1​)]E[(x1​μ1​)(x2​μ2​)]E[(x2μ2)2]......其中:E[(x1μ1)2]=d1k=1d(xk(i)μi)2

  • μ(mu) 是每个维度上的平均值;
  • Σ(Sigma) 描述的是整个样本(或总体)中,各个维度之间的方差与相关性结构。

2. 关键步骤:把梯度搬进积分号

我们先写出边际密度
p(y)=∫Rdp(y∣x)p(x)dx.(2.1)p(y)=\int_{\mathbb{R}^d} p(y\mid x)p(x)dx. \tag{2.1} p(y)=Rdp(yx)p(x)dx.(2.1)

想要 ∇yp(y)\nabla_y p(y)yp(y),最直接是逐分量地yiy_iyi 求偏导:
∂∂yip(y)=∂∂yi∫p(y∣x)p(x)dx.\frac{\partial}{\partial y_i}p(y) =\frac{\partial}{\partial y_i}\int p(y\mid x)p(x)dx. yip(y)=yip(yx)p(x)dx.

结论(Leibniz 规则 / 主导收敛)
在常见的正则条件下(见下),可以交换“对 yiy_iyi 的偏导”和“对 xxx 的积分”:
∂∂yip(y)=∫∂∂yip(y∣x)p(x)dx.(2.2)\frac{\partial}{\partial y_i}p(y) =\int \frac{\partial}{\partial y_i}p(y\mid x)p(x)dx. \tag{2.2} yip(y)=yip(yx)p(x)dx.(2.2)

把各分量重新打包回梯度向量,就得到
∇yp(y)=∫∇yp(y∣x)p(x)dx.(2.3)\nabla_y p(y)=\int \nabla_y p(y\mid x)p(x)dx. \tag{2.3} yp(y)=yp(yx)p(x)dx.(2.3)

什么时候合法?(足够条件)
对每个分量 iii

  • p(y∣x)p(y\mid x)p(yx) 关于 yiy_iyi 处处可导
  • 存在某个与 yyy 无关、可积的支配函数 gi(x)g_i(x)gi(x),使得
    ∣∂p(y∣x)/∂yi∣⋅p(x)≤gi(x)|\partial p(y\mid x)/\partial y_i|\cdot p(x) \le g_i(x)p(yx)/yip(x)gi(x) 对所有 yyy 成立;

则由主导收敛定理Leibniz 积分求导法则,(2.2) 成立。
(高斯密度关于 (y) 光滑且衰减良好,通常满足这些条件。)

直观解释(非形式):

因为 𝑝(𝑦∣𝑥) 对 𝑦 是一个平滑的钟形曲线,而且 𝑝(𝑥) 是固定的权重,所以当我们稍微改变 𝑦时,整个积分的变化等价于“每个 𝑥 对 𝑝(𝑦∣𝑥)”变化的加总”。


3. 先求 ∇yp(y)\nabla_y p(y)yp(y) 的表达式

由 (2.3):
∇yp(y)=∫∇yp(y∣x)p(x)dx.(3.1)\nabla_y p(y)=\int \nabla_y p(y\mid x)p(x)dx. \tag{3.1} yp(y)=yp(yx)p(x)dx.(3.1)

再用“对数的梯度乘密度”技巧:
∇yp(y∣x)=p(y∣x)∇ylog⁡p(y∣x).(3.2)\nabla_y p(y\mid x) = p(y\mid x)\nabla_y \log p(y\mid x). \tag{3.2} yp(yx)=p(yx)ylogp(yx).(3.2)

首先我们知道
f(y)=elog⁡f(y)f(y) = e^{\log f(y)}f(y)=elogf(y)
运用链式法则
∇f(y)=∇elog⁡f(y)=elog⁡f(y)∇log⁡f(y)=f(y)∇log⁡f(y)\nabla f(y) = \nabla e^{\log f(y)} = e^{\log f(y)} \nabla \log f(y) = f(y) \nabla \log f(y) f(y)=elogf(y)=elogf(y)logf(y)=f(y)logf(y)
直观理解:密度的相对变化率 = 对数密度的梯度。

  • dpdy\frac{dp}{dy}dydp:告诉你p(y)绝对值变化多块
  • dlog⁡pdy\frac{d\log p}{dy}dydlogp:相对增长率,告诉你“p(y)在y方向上相对自己变化的速度”

代回 (3.1):
∇yp(y)=∫p(y∣x)∇ylog⁡p(y∣x)p(x)dx.(3.3)\nabla_y p(y) = \int p(y\mid x)\nabla_y \log p(y\mid x)p(x)dx. \tag{3.3} yp(y)=p(yx)ylogp(yx)p(x)dx.(3.3)

两边同时除以 p(y)p(y)p(y)(假设 p(y)>0p(y)>0p(y)>0)得到 score:
∇ylog⁡p(y)=1p(y)∫p(y∣x)∇ylog⁡p(y∣x)p(x)dx.(3.4)\nabla_y \log p(y) = \frac{1}{p(y)}\int p(y\mid x)\nabla_y \log p(y\mid x)p(x)dx. \tag{3.4} ylogp(y)=p(y)1p(yx)ylogp(yx)p(x)dx.(3.4)


4. 计算高斯似然的梯度 ∇ylog⁡p(y∣x)\nabla_y\log p(y\mid x)ylogp(yx)

一维高斯函数
f(x)=12πσexp⁡(−(x−μ)22σ2)f(x) = \frac{1}{\sqrt{2\pi}\sigma} \exp\left(-\frac{(x - \mu)^2}{2\sigma^2}\right)f(x)=2πσ1exp(2σ2(xμ)2)
当为标准正态分布时,函数为
f(x)=12πexp⁡(−12x2)f(x) = \frac{1}{\sqrt{2\pi}} \exp\left(-\frac{1}{2}x^2\right)f(x)=2π1exp(21x2)
标准高维高斯分布函数,z=(z1,...,zd)Tz=(z_1,...,z_d)^Tz=(z1,...,zd)T
f(z)=1(2π)d/2exp⁡(−12∑i=1dzi2)f(z) = \frac{1}{(2\pi)^{d/2}}\exp(-\frac{1}{2}\sum_{i=1}^dz_i^2)f(z)=(2π)d/21exp(21i=1dzi2)
通过将标准高斯分布进行线性变换和平移 x=μ+Lz⇒z=L−1(x−μ)\mathbf x=\mu+Lz\Rightarrow z = L^{-1}(\mathbf x-\mu)x=μ+Lzz=L1(xμ)
z=L−1(x−μ)z = L^{-1}(\mathbf x-\mu)z=L1(xμ)带入标准高斯分布函数得到如下,其中Σ=LLT\Sigma=LL^TΣ=LLT
p(x∣μ,Σ)=1(2π)d/2∣Σ∣1/2exp⁡(−12(x−μ)⊤Σ−1(x−μ))p(\mathbf{x}|\mu,\Sigma) = \frac{1}{(2\pi)^{d/2} |\mathbf{\Sigma}|^{1/2}} \exp\left( -\frac{1}{2} (\mathbf{x} - \mathbf{\mu})^\top \mathbf{\Sigma}^{-1} (\mathbf{x} - \mathbf{\mu}) \right)p(xμ,Σ)=(2π)d/2Σ1/21exp(21(xμ)Σ1(xμ))
Σ\SigmaΣ 将一个高维球经过旋转和缩放变成了一个高维椭球分布,μ\muμ将其进行平移

高斯似然:yyy 已知,求 N(x,Σ)\mathcal{N}({x}, {\Sigma})N(x,Σ)
p(y∣x)=1(2π)d/2∣Σ∣1/2exp⁡(−12(y−x)⊤Σ−1(y−x)).p(y\mid x )=\frac{1}{(2\pi)^{d/2}|\Sigma|^{1/2}} \exp\Big(-\tfrac{1}{2}(y-x)^\top \Sigma^{-1}(y-x)\Big). p(yx)=(2π)d/2∣Σ1/21exp(21(yx)Σ1(yx)).
取对数:
log⁡p(y∣x)=const−12(y−x)⊤Σ−1(y−x).\log p(y\mid x)=\text{const}-\tfrac{1}{2}(y-x)^\top \Sigma^{-1}(y-x). logp(yx)=const21(yx)Σ1(yx).
yyy 求梯度(用二次型求导公式):
∇ylog⁡p(y∣x)=−Σ−1(y−x).(4.1)\nabla_y \log p(y\mid x) = -\Sigma^{-1}(y-x). \tag{4.1} ylogp(yx)=Σ1(yx).(4.1)

把 (4.1) 代入 (3.4):
∇ylog⁡p(y)=1p(y)∫p(y∣x)[−Σ−1(y−x)]p(x)dx=−Σ−11p(y)∫(y−x)p(y∣x)p(x)dx.(4.2)\nabla_y \log p(y) = \frac{1}{p(y)}\int p(y\mid x)\big[-\Sigma^{-1}(y-x)\big]p(x)dx \\= -\Sigma^{-1}\frac{1}{p(y)}\int (y-x)p(y\mid x)p(x)dx.\tag{4.2} ylogp(y)=p(y)1p(yx)[Σ1(yx)]p(x)dx=Σ1p(y)1(yx)p(yx)p(x)dx.(4.2)


5. 用后验 p(x∣y)p(x\mid y)p(xy) 化简

Bayes 定义:p(x∣y)=p(y∣x)p(x)p(y)p(x\mid y)=\dfrac{p(y\mid x)p(x)}{p(y)}p(xy)=p(y)p(yx)p(x)
把它带入 (4.2):
∇ylog⁡p(y)=−Σ−1∫(y−x)p(x∣y),dx.(5.1)\nabla_y \log p(y) = -\Sigma^{-1}\int (y-x)p(x\mid y),dx. \tag{5.1} ylogp(y)=Σ1(yx)p(xy),dx.(5.1)

把 (y) 拆出去(它不依赖 (x)):
∫(y−x)p(x∣y)dx=y∫p(x∣y)dx−∫xp(x∣y)dx=y−E[x∣y].(5.2)\int (y-x)p(x\mid y)dx\\ = y\int p(x\mid y)dx-\int xp(x\mid y)dx\\ = y-\mathbb{E}[x\mid y]. \tag{5.2} (yx)p(xy)dx=yp(xy)dxxp(xy)dx=yE[xy].(5.2)

p(x∣y)p(x|y)p(xy):在观察到 𝑦 后,𝑥 的概率权重
∫p(x∣y)dx=1\int p(x|y)dx=1p(xy)dx=1

  • 在给定 𝑦 的条件下,所有可能的 𝑥 的概率总和为 1

∫xp(x∣y)dx=E[x∣y]\int xp(x|y)dx = \mathbb E[x|y]xp(xy)dx=E[xy]:加权平均后最可能的 x→x \rightarrowxE[x∣y]\mathbb E[x|y]E[xy]

代回 (5.1):
∇ylog⁡p(y)=−Σ−1(y−E[x∣y]).(5.3)\nabla_y \log p(y) = -\Sigma^{-1}\big(y-\mathbb{E}[x\mid y]\big). \tag{5.3} ylogp(y)=Σ1(yE[xy]).(5.3)

逐分量(索引)写法,便于核对

[⋅]∗i[\cdot]*i[]i 表示向量的第 iii 个分量,Σ−1=[Σ−1]∗ij\Sigma^{-1}=[\Sigma^{-1}]*{ij}Σ1=[Σ1]ij
由 (5.3):
∂∂yilog⁡p(y)=−∑j=1d[Σ−1]ij(yj−E[xj∣y]).\frac{\partial}{\partial y_i}\log p(y) = -\sum_{j=1}^d [\Sigma^{-1}]_{ij}\big(y_j-\mathbb{E}[x_j\mid y]\big). yilogp(y)=j=1d[Σ1]ij(yjE[xjy]).


6. 得到 Tweedie 公式(一般协方差)

把 (5.3) 左右同乘 Σ\SigmaΣ 并移项:
E[x∣y]=y+Σ∇ylog⁡p(y).(6.1)\boxed{\ \mathbb{E}[x\mid y] = y + \Sigma\nabla_y \log p(y)\ }. \tag{6.1}  E[xy]=y+Σylogp(y) .(6.1)

形状检查(避免符号错误)

  • ∇ylog⁡p(y)∈Rd\nabla_y \log p(y)\in\mathbb{R}^dylogp(y)Rd
  • Σ∈Rd×d\Sigma\in\mathbb{R}^{d\times d}ΣRd×d
  • Σ∇ylog⁡p(y)∈Rd\Sigma\nabla_y \log p(y)\in\mathbb{R}^dΣylogp(y)Rd,与 yyy 同维。

7. 各向同性特例(最常见)

Σ=σ2I\Sigma=\sigma^2 IΣ=σ2I
E[x∣y]=y+σ2∇ylog⁡p(y).(7.1)\boxed{\ \mathbb{E}[x\mid y] = y + \sigma^2\nabla_y \log p(y)\ }. \tag{7.1}  E[xy]=y+σ2ylogp(y) .(7.1)


8. 小结(每一步做了什么 & 为什么合法)

  1. 写边际p(y)=∫p(y∣x)p(x)dxp(y)=\int p(y\mid x)p(x)dxp(y)=p(yx)p(x)dx(定义)。

  2. 把梯度搬进积分号∇yp(y)=∫∇yp(y∣x)p(x)dx\nabla_y p(y)=\int \nabla_y p(y\mid x)p(x)dxyp(y)=yp(yx)p(x)dx

    • 依据:Leibniz 规则 / 主导收敛(高斯情形满足光滑与支配条件)。
  3. 换成“对数梯度 × 密度”∇yp(y∣x)=p(y∣x)∇ylog⁡p(y∣x)\nabla_y p(y\mid x)=p(y\mid x)\nabla_y\log p(y\mid x)yp(yx)=p(yx)ylogp(yx)(链式法则)。

  4. 高斯对数梯度∇ylog⁡p(y∣x)=−Σ−1(y−x)\nabla_y\log p(y\mid x)=-\Sigma^{-1}(y-x)ylogp(yx)=Σ1(yx)(二次型求导)。

  5. Bayes 化简:把 p(y∣x)p(x)p(y)\frac{p(y\mid x)p(x)}{p(y)}p(y)p(yx)p(x) 认作 p(x∣y)p(x\mid y)p(xy),并用 ∫p(x∣y)dx=1\int p(x\mid y)dx=1p(xy)dx=1

  6. 移项得结论E[x∣y]=y+Σ∇ylog⁡p(y)\mathbb{E}[x\mid y]=y+\Sigma\nabla_y\log p(y)E[xy]=y+Σylogp(y)


9. 直觉回顾(把公式读成一句话)

  • s(y):=∇ylog⁡p(y)s(y):=\nabla_y\log p(y)s(y):=ylogp(y) 指向密度更高的方向;
  • Σs(y)\Sigma s(y)Σs(y) 给出在噪声协方差尺度下的“回拉”位移;
  • 把观测 yyy 朝这个方向推回去,就得到最优去噪估计 E[x∣y]\mathbb{E}[x\mid y]E[xy]
http://www.dtcms.com/a/471630.html

相关文章:

  • 站长之家psd南漳网站开发
  • .net网站制作做游戏视频网站
  • 肇庆网站seowordpress评论发邮件
  • 网站服务器怎么迁移搜索引擎哪个好
  • 青岛建网站最新消息新闻头条
  • 郴州市北湖建设局网站设计师 网站
  • 双目视觉对熔池表面的三维重建研究总结
  • 【笔记】聊聊更强大的 epoll
  • 是做网站编辑还是做平面设计网站安全解决方案
  • QT5.15.2导入官方QtMqtt【Mingw32为例】
  • 上海做网站的月薪颜色搭配对网站重要性
  • Qt中的字符串宏 | 编译期检查和运行期检查 | Qt信号与槽connect写法
  • 网站建设的投资预算怎么写阿里企业邮箱费用
  • 6网站建设做网站建设银行官网官方网站
  • 网页设计职位廊坊网络推广优化公司
  • 画家网站建设内蒙古赤峰市信息网官网
  • 哈尔滨网站制作专业md5 wordpress
  • 天猫商城官网首页seo关键词优化排名
  • 计算机操作系统 内存管理常见问题(菜鸡自学,非专业)
  • Python下载实战:高效获取网络资源
  • Python高级编程:创建可管理属性的完整指南
  • 维修网站建设网站开发职位要求
  • 网站关键词可以做几个网站建设技术指标
  • 科技公司内蒙古网站制作wordpress本地做好如何改站点地址
  • 沧州网站备案自动做效果图的网站
  • 网站怎么做dns解析网络公司建网站
  • 从网站验证码谈用户体验营销型网站建设个人总结怎么写
  • redis中的hash类型命令
  • 网站建设太金手指六六十一管理软件应用
  • 做百度移动网站吗最好app开发公司