变分推断 python_变分推断(Variational Inference)

变分

对于普通的函数f(x),我们可以认为f是一个关于x的一个实数算子,其作用是将实数x映射到实数f(x)。那么类比这种模式,假设存在函数算子F,它是关于f(x)的函数算子,可以将f(x)映射成实数F(f(x)) 。对于f(x)我们是通过改变x来求出f(x)的极值,而在变分中这个x会被替换成一个函数y(x),我们通过改变x来改变y(x),最后使得F(y(x))求得极值。

变分:指的是泛函的变分。打个比方,从A点到B点有无数条路径,每一条路径都是一个函数吧,这无数条路径,每一条函数(路径)的长度都是一个数,那你从这无数个路径当中选一个路径最短或者最长的,这就是求泛函的极值问题。有一种老的叫法,函数空间的自变量我们称为宗量(自变函数),当宗量变化了一点点而导致了泛函值变化了多少,这其实就是变分。变分,就是微分在函数空间的拓展,其精神内涵是一致的。求解泛函变分的方法主要有古典变分法、动态规划和最优控制。

变分推断

推了这么多公式,让我们先喘口气,来看看这些公式究竟在做什么?

对于一类数据x(无论是音频还是图片),对它们进行编码后得到的特征数据往往服从某种分布q(z),z为隐变量,q(z)这个隐含分布我们无法得知,但是我们可以通过现有数据X来推断出q(z),即P(z|x)。KL散度是用来衡量两个分布之间的距离,当距离为0时,表示这两个分布完全一致。P(x)不变,那么想让KL(q(z)||P(z|x))越小,即让ELOB越大,反之亦然。因为KL≥0,所以logP(x)≥ELOB。这个结论还可以通过下面的公式同样得到:

这段公式推导的关键在于中间的不等式部分,即Jensen不等式:

变分贝叶斯(Variational Bayes)

变分贝叶斯学习算法通常也是变分贝叶斯期望最大(Variantional Bayesian Expectation Maximization)VBEM算法,是广义化的EM算法。

变分贝叶斯是一类用于贝叶斯估计和机器学习领域中近似计算复杂(intractable)积分的技术。它主要应用于复杂的统计模型中,这种模型一般包括三类变量:观测变量(ob

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值