标签归档:相对熵

PRML读书会第十章 Approximate Inference

Deep Learning Specialization on Coursera

PRML读书会第十章 Approximate Inference

主讲人 戴玮

(新浪微博: @戴玮_CASIA

Wilbur_中博(1954123) 20:02:04

我们在前面看到,概率推断的核心任务就是计算某分布下的某个函数的期望、或者计算边缘概率分布、条件概率分布等等。 比如前面在第九章尼采兄讲EM时,我们就计算了对数似然函数在隐变量后验分布下的期望。这些任务往往需要积分或求和操作。 但在很多情况下,计算这些东西往往不那么容易。因为首先,我们积分中涉及的分布可能有很复杂的形式,这样就无法直接得到解析解,而我们当然希望分布是类似指数族分布这样具有共轭分布、容易得到解析解的分布形式;其次,我们要积分的变量空间可能有很高的维度,这样就把我们做数值积分的路都给堵死了。因为这两个原因,我们进行精确计算往往是不可行的。
为了解决这一问题,我们需要引入一些近似计算方法。

近似计算有随机和确定两条路子。随机方法也就是MCMC之类的采样法,我们会在讲第十一章的时候专门讲到,而确定近似法就是我们这一章讲的变分。变分法的优点主要是:有解析解、计算开销较小、易于在大规模问题中应用。但它的缺点是推导出想要的形式比较困难。也就是说,人琢磨的部分比较复杂,而机器算的部分比较简单。这和第十一章的采样法的优缺点恰好有互补性。所以我们可以在不同的场合应用变分法或采样法。这里我的一个问题是:是否可以结合二者的优点,使得人也不用考虑太多、机器算起来也比较简单?
变分法相当于把微积分从变量推广到函数上。我们都知道,微积分是用来分析变量变化、也就是函数性质的,这里函数定义为f: x -> f(x),而导数则是df/dx;与之相对,变分用到了泛函的概念:F: f -> F(f),也就是把函数映射为某个值,而相应地,也有导数dF/df,衡量函数是如何变化的。比如我们熟悉的信息论中的熵,就是把概率分布这个函数映射到熵这个值上。和微积分一样,我们也可以通过导数为0的条件求解无约束极值问题,以及引入拉格朗日乘子来求解有约束极值问题。比如说,我们可以通过概率分布积分为1的约束,求解最大熵的变分问题。PRML的附录D和E有比较详细的解释,我们后面也还会看到,这里就不多说了。
变分法这名字听起来比较可怕,但它的核心思想,就是从某个函数空间中找到满足某些条件或约束的函数。我们在统计推断当中用到的变分法,实际上就是用形式简单的分布,去近似形式复杂、不易计算的分布,这样再做积分运算就会容易很多。 比如,我们可以在所有高斯分布当中,选一个和目标分布最相似的分布,这样后面做进一步计算时就容易获得解析解。此外,我们还可以假设多元分布的各变量之间独立,这样积分的时候就可以把它们变成多个一元积分,从而解决高维问题。这也是最简单的两种近似。
继续阅读