变分推理(Variational Inference)

给定网络参数 ω \boldsymbol \omega ω, 训练数据集 D = ( X , Y ) \mathbf{D} = (\mathbf{X}, \mathbf{Y}) D=(X,Y), 贝叶斯推断是将网络参数 ω \boldsymbol \omega ω 建模为一个符合某种分布的随机变量而不是确定的值,故给定测试数据 x ∗ \mathbf{x}^{*} x, 贝叶斯网络求取对应预测值 y ∗ \mathbf{y}^{*} y 的公式为:
p ( y ∗ ∣ x ∗ , X , Y ) = ∫ p ( y ∗ ∣ x ∗ , ω ) p ( ω ∣ X , Y ) d ω p\left(\mathbf{y}^{*} \mid \mathbf{x}^{*}, \mathbf{X}, \mathbf{Y}\right)=\int p\left(\mathbf{y}^{*} \mid \mathbf{x}^{*}, \boldsymbol{\omega}\right) p(\boldsymbol{\omega} \mid \mathbf{X}, \mathbf{Y}) \mathrm{d} \boldsymbol{\omega} p(yx,X,Y)=p(yx,ω)p(ωX,Y)dω 上式中 p ( y ∗ ∣ x ∗ , ω ) p\left(\mathbf{y}^{*} \mid \mathbf{x}^{*}, \boldsymbol{\omega}\right) p(yx,ω) 为网络输出,需要求的是 p ( ω ∣ X , Y ) p(\boldsymbol{\omega} \mid \mathbf{X}, \mathbf{Y}) p(ωX,Y),但是这个不存在解析解,所以便引入了变分推理来近似,用 q ( ω ) q(\boldsymbol{\omega}) q(ω) 来近似 p ( ω ∣ X , Y ) p(\boldsymbol{\omega} \mid \mathbf{X}, \mathbf{Y}) p(ωX,Y),所以目标函数可以指定为最小化 q ( ω ) q(\boldsymbol{\omega}) q(ω) p ( ω ∣ X , Y ) p(\boldsymbol{\omega} \mid \mathbf{X}, \mathbf{Y}) p(ωX,Y) 之间的差异,即最小化: KL ⁡ ( q ( ω ) ∣ p ( ω ∣ X , Y ) ) \operatorname{KL}(q(\boldsymbol{\omega}) \mid p(\boldsymbol{\omega} \mid \mathbf{X}, \mathbf{Y})) KL(q(ω)p(ωX,Y))
又因为:
KL ⁡ ( q ( ω ) ∣ p ( ω ∣ X , Y ) ) = ∫ q ( ω ) log ⁡ q ( ω ) p ( ω ∣ X , Y ) d ω = ∫ q ( ω ) log ⁡ q ( ω ) d ω − ∫ q ( ω ) log ⁡ p ( ω ∣ X , Y ) d ω = ∫ q ( ω ) log ⁡ q ( ω ) d ω − ∫ q ( ω ) log ⁡ p ( Y ∣ X , ω ) p ( X ) p ( ω ) p ( X , Y ) d ω = KL ⁡ ( q ( ω ) ∣ p ( ω ) ) − ∫ q ( ω ) log ⁡ p ( Y ∣ X , ω ) d ω − p ( X ) + p ( X , Y ) \begin{aligned} \operatorname{KL}(q(\boldsymbol{\omega}) \mid p(\boldsymbol{\omega} \mid \mathbf{X}, \mathbf{Y})) &= \int q(\boldsymbol{\omega}) \log \frac{q(\boldsymbol{\omega})}{p(\boldsymbol{\omega} \mid \mathbf{X}, \mathbf{Y})} \mathrm{d} \boldsymbol{\omega} \\ &= \int q(\boldsymbol{\omega}) \log q(\boldsymbol{\omega}) \mathrm{d} \boldsymbol{\omega} - \int q(\boldsymbol{\omega}) \log p(\boldsymbol{\omega} \mid \mathbf{X}, \mathbf{Y}) \mathrm{d} \boldsymbol{\omega} \\ &= \int q(\boldsymbol{\omega}) \log q(\boldsymbol{\omega}) \mathrm{d} \boldsymbol{\omega} - \int q(\boldsymbol{\omega}) \log \frac{p(\mathbf{Y} \mid \mathbf{X}, \boldsymbol{\omega}) p(\mathbf{X})p(\boldsymbol{\omega})}{p(\mathbf{X}, \mathbf{Y})} \mathrm{d} \boldsymbol{\omega} \\ &= \operatorname{KL}(q(\boldsymbol{\omega}) \mid p(\boldsymbol{\omega})) - \int q(\boldsymbol{\omega}) \log p( \mathbf{Y} \mid \mathbf{X}, \boldsymbol{\omega}) \mathrm{d} \boldsymbol{\omega} - p(\mathbf{X}) + p(\mathbf{X}, \mathbf{Y}) \end{aligned} KL(q(ω)p(ωX,Y))=q(ω)logp(ωX,Y)q(ω)dω=q(ω)logq(ω)dωq(ω)logp(ωX,Y)dω=q(ω)logq(ω)dωq(ω)logp(X,Y)p(YX,ω)p(X)p(ω)dω=KL(q(ω)p(ω))q(ω)logp(YX,ω)dωp(X)+p(X,Y) 所以优化目标变为最小化:
KL ⁡ ( q ( ω ) ∣ p ( ω ) ) − ∫ q ( ω ) log ⁡ p ( Y ∣ X , ω ) d ω \operatorname{KL}(q(\boldsymbol{\omega}) \mid p(\boldsymbol{\omega})) - \int q(\boldsymbol{\omega}) \log p(\mathbf{Y} \mid \mathbf{X}, \boldsymbol{\omega}) \mathrm{d} \boldsymbol{\omega} KL(q(ω)p(ω))q(ω)logp(YX,ω)dω 上式为 Evidence Lower Bound (ELBO) 的负数形式,一般是最大化 ELBO

你可能感兴趣的:(机器学习,线性代数,概率论)