乐读窝

深度学习

乐读窝 > 文学理论 > 深度学习

第18章 直面配分函数

书籍名:《深度学习》    作者:伊恩.古德费洛



在第16.2.2节中,我们看到许多概率模型(通常是无向图模型)由一个未归一化的概率分布定义。我们必须通过除以配分函数Z(θ)来归一化,以获得一个有效的概率分布:

配分函数是未归一化概率所有状态的积分(对于连续变量)或求和(对于离散变量):

或者

对于很多有趣的模型而言,以上积分或求和难以计算。

正如我们将在第20章看到的,有些深度学习模型被设计成具有一个易于处理的归一化常数,或被设计成能够在不涉及计算p(x)的情况下使用。然而,其他一些模型会直接面对难以计算的配分函数的挑战。在本章中,我们会介绍用于训练和评估那些具有难以处理的配分函数的模型的技术。



18.1 对数似然梯度


通过最大似然学习无向模型特别困难的原因在于配分函数依赖于参数。对数似然相对于参数的梯度具有一项对应于配分函数的梯度:

这是机器学习中非常著名的正相(positive  phase)和负相(negative  phase)的分解。

对于大多数感兴趣的无向模型而言,负相是困难的。没有潜变量或潜变量之间很少相互作用的模型通常会有一个易于计算的正相。RBM的隐藏单元在给定可见单元的情况下彼此条件独立,是一个典型的具有简单正相和困难负相的模型。正相计算困难,潜变量之间具有复杂相互作用的情况将主要在第19章中讨论。本章主要探讨负相计算中的难点。

让我们进一步分析log  Z的梯度:

对于保证所有的x都有p(x)>0的模型,我们可以用代替:

上述推导对离散的x进行求和,对连续的x进行积分也可以得到类似结果。在连续版本的推导中,使用在积分符号内取微分的莱布尼兹法则可以得到等式

该等式只适用于和上的一些特定规范条件。在测度论术语中,这些条件是:(1)对每一个θ而言,未归一化分布必须是x的勒贝格可积函数。(2)对于所有的θ和几乎所有x,梯度必须存在。(3)对于所有的θ和几乎所有的x,必须存在一个可积函数R(x)使得。幸运的是,大多数感兴趣的机器学习模型都具有这些性质。

等式

是使用各种蒙特卡罗方法近似最大化(具有难计算配分函数模型的)似然的基础。

蒙特卡罗方法为学习无向模型提供了直观的框架,我们能够在其中考虑正相和负相。在正相中,我们增大从数据中采样得到的。在负相中,我们通过降低从模型分布中采样的来降低配分函数。

在深度学习文献中,经常会看到用能量函数(式(16.7))来参数化。在这种情况下,正相可以解释为压低训练样本的能量,负相可以解释为提高模型抽出的样本的能量,如图18.1所示。