论文翻译和解读 A Tutorial on Energy-Based Learning (四)

这篇博客是上篇博客的后续,主要是原文6、7、8章。

6. Efficient Inference: Non-Probabilistic Factor Graphs

这一部分讨论了基于能量的高效推理的重要问题。序列标注问题和其他具有结构化输出的学习问题,往往可以用能量函数来建模,该能量函数的结构可以用于高效的推理算法。

基于EBM的学习和推理涉及到在答案集 Y \mathcal{Y} Y和潜变量 Z \mathcal{Z} Z上的能量最小化,当 Y × Z \mathcal{Y}\times \mathcal{Z} Y×Z的基数较大时,这种最小化会变得困难。解决该问题的一种方法是利用能量函数的结构,以便高效地执行最小化。当能量可以表示为每个依赖于 Y \mathcal{Y} Y Z \mathcal{Z} Z中变量的不同子集的个体函数(称为因子)之和时,就会出现结构可利用的情况,这些依赖最好用因子图的形式表示[ Kschischang et al .,2001MacKay,2003 ]。因子图是图模型的一般形式,或者说贝叶斯网络。

图模型通常通过直接编码变量之间的依赖关系来表示变量上的概率分布。乍一看,很难将图模型从概率建模分离出来。然而,因子图可以在概率建模的概念外学习,且EBM学习也适用于它们。
在这里插入图片描述

一个简单的因子图展示为Figure 19(top),能量函数是四个因子的和:
在这里插入图片描述
其中 Y = [ Y 1 Y 2 ] Y=[Y_1 Y_2] Y=[Y1Y2]是输出变量, Z = [ Z 1 Z 2 ] Z=[Z_1 Z_2] Z=[Z1Z2]是隐变量,每个因子可以看成表示输入变量之间软约束。推理问题在于寻找:

因子图表示一个结构化输出问题,因为因子 E d E_d Ed编码了 y 1 y_1 y1 y 2 y_2 y2之间的依赖(也许通过禁止特定的值的结合)。

让我们假设 Z 1 Z_1 Z1 Z 2 Z_2 Z2 Y 1 Y_1 Y1是离散的二进制变量, Y 2 Y_2 Y2是一个三进制变量。 X X X所在域的基数是不重要的,因为 X X X总是被观测到的。给定 X X X的条件下, Z Z Z Y Y Y的可能组态数为2× 2× 2× 3 = 24。通过穷举搜索的朴素最小化算法将对整个能量函数进行24次评估(96次单因素评估)。然而,我们注意到对于给定的 X X X E a Ea Ea只有两种可能的输入配置: Z 1 = 0 Z_1=0 Z1=0 Z 1 = 1 Z_1=1 Z1=1。类似地, E b E_b Eb E c E_c Ec只有4种可能的输入配置, E d E_d Ed有6种。因此,不需要超过2+4+4+6=16个单个因子评估。可能的配置集可以用Figure 19(bottom)所示的图(网格)来表示。每列中的节点表示单个变量的可能值。每一条边都由该因子的输出能量(以该边的起点为输入值的输出变量)进行加权。通过这种表示,从开始节点到结束节点的单个路径表示所有变量的一种可能配置。路径上的权重之和等于相应配置的总能量。因此,推理问题可以归结为在图中寻找最短路径。这可以使用动态规划方法来执行,例如Viterbi算法或A*算法。成本与边的数量(16)成正比,而边的数量通常比路径的数量小。为了计算 E ( Y , X ) = m i n z ∈ Z E ( Y , Z , X ) E(Y,X)=min_{z∈\mathcal{Z}}E(Y,Z,X) EYX=minzZE(YZX),我们遵循相同的过程,但是我们将图限制为与Y的规定值兼容的弧的子集。

上述过程有时被称为min-sum算法,它是传统max- product对于图形模型的对数版本。该过程可以很容易地推广到因子图中,因子以两个以上的变量作为输入,而推广到因子图中,因子图具有树状结构而不是链状结构。然而,它只适用于因子图是二部树(不含环)。当图中存在回路时,min-sum算法迭代时可能给出近似解,也可能根本不收敛。在这种情况下,可以使用模拟退火等下降算法。

如第四节所述,变量可以通过最小化或边缘化来处理。计算与计算负对数似然损失的对比项(对数分配函数)所需的计算相同,因此我们不作区分。负对数似然损失函数中的对比项是:
在这里插入图片描述
或者简单点(没有隐变量):
在这里插入图片描述
期初,这看起来很难处理,但这个计算可以像min-sum算法一样因子化分解。值向前传播,从左侧的开始节点开始,沿着网格中的箭头。每个节点 k k k计算一个数量 α k α_k αk:
α k = − 1 β l o g ∑ j e − β ( E k j + α j ) \alpha_k=-\frac{1}{\beta}log \sum_j e^{-\beta(E_{kj}+\alpha_j)} αk=β1logjeβ(Ekj+αj)其中 E j k E_jk Ejk是节点 j j j到节点 k k k的边的能量。最终结束节点的 α \alpha α就是上面提到的负对数似然的对比项。对于 大 的 β 大的\beta β,这个过程简化为min-sum算法。

在一个更复杂的因子图中,因子以两个以上的变量作为输入,或者具有树结构,这个过程推广到对数域中的非概率形式的置信度传播。对于循环图,该过程可以迭代,并且如果它完全收敛,可能导致 − 1 β l o g ∫ Y ∈ Y , z ∈ Z e − β E ( Z , Y , X ) -\frac{1}{\beta}log\int_{Y\in \mathcal{Y},z\in \mathcal{Z}}e^{-\beta E(Z,Y,X)} β1logYY,zZeβE(Z,Y,X)的近似值[Yedidia et al.,2005]。

以上步骤是构造具有结构或序列输出的模型的基本组件。

6.1 EBMs versus Internally Normalized Models

值得注意的是,在上述讨论中,我们不需要操纵标准化概率分布。唯一被操纵的量是能量。这与隐马尔可夫模型和传统的贝叶斯网形成了对比。在HMMs中,节点的输出转移概率必须和为1,发射概率必须适当归一化。这确保了序列上的总体分布是标准化的。类似地,在有向贝叶斯网络中,条件概率表的行被规范化。

EBMs操纵能量,所以规范化(归一化)不是必要的。当能量转化为概率时,在 Y Y Y上的正则化只会发生在处理过程的最后一步。这个“late normalization”(后期规范化)的思想解决了很多HMMs和贝叶斯网络中的相关的几个问题。第一个问题是label bias problem(标注偏置问题):离开给定状态的转换将会相互竞争,但不与模型中的其他转换竞争。因此,其状态具有少量传出的路径往往比其状态具有许多传出的路径具有更高的概率。这看起来是一种人为的约束。为了解决这个问题,一个后期规范化的方案首次在手写和语音识别问题中被提出。标签偏差问题的另一个特点是LeCun等人在[LeCun等人,1998a]中讨论的缺失概率质量问题。他们还使用了一种新的规范化方案来解决这个问题。规划化模型将概率质量分布在系统显式建模的所有答案中。为了处理“垃圾”或其他不可预见和未建模的输入,设计者必须经常添加一个所谓的背景模型,从显式建模的答案集中去除一些概率质量。这可以解释为消除规范化约束的一种隐蔽的方法。换言之,由于每一次显式规范化都是错误处理不可预见事件的又一次机会,因此应该尽量减少模型中显式规范化的数量。最近通过规范化去除成功处理标签偏差问题的一个例子是McCallum、Freitag和Pereira的最大熵马尔可夫模型[McCallum等人,2000]与Lafferty、McCallum和Pereira的条件随机化场[Lafferty等人,2001]之间的比较。

第二个问题是控制不同性质概率分布的相对重要性。在HMMs中,发射概率通常是高维空间(通常为10到100)中的高斯混合概率,而转移概率是几个转移上的离散概率。前者的动态范围比后者大得多。因此,转移概率在总体可能性中几乎不起作用。实践者经常提高转移概率到特定的幂,以增加他们的影响力。这个技巧很难在概率框架中证明,因为它破坏了规范化。在EBMs的框架中,没有必要为违反规则找借口。任意系数可应用于模型中的任何能量子集。规划化总是在最后进行。

第三个问题涉及判别式学习。判别训练通常使用基于梯度的迭代方法来优化损失。在每次参数更新后,用梯度法进行归一化处理往往是复杂、昂贵和低效的。EBM方法消除了这个问题[LeCun等人,1998a]。更重要的是,对HMMs和贝叶斯网进行内部规范化的原因与判别式训练它们的想法有些矛盾。规范化只对生成模型是必要的。

7. EBMs for Sequence Labeling and Structured Outputs

符号序列或向量序列的分类或标记问题一直是一些技术界关注的热点问题。最早也是最著名的例子是语音识别。在1980年代末,提出了一种基于HMM的语音识别系统的判别学习方法[Bahl等人,1986,Ljoje等人,1990]。这些方法为HMMs的语音识别系统带来了很大的提高,至今仍是一个活跃的研究课题。

随着多层神经网络训练程序的出现,多个研究小组提出了结合神经网络和时间对齐的语音识别方法。时间对齐可以通过一组参考词的弹性模板匹配(动态时间扭曲)实现,也可以使用隐马尔可夫模型实现。其中一个主要的挑战是设计一个集成的训练方法,同时训练神经网络和时间对齐模块。在20世纪90年代初,一些作者提出了将神经网络与动态时间扭曲相结合的方法[Driancourt et al.,1991a,Driancourt et al.,1991b,Driancourt and Gallinari,1992b,Driancourt and Gallinari,1992a,Driancourt,1994],以及将神经网络与HMM相结合的方法[Bengio et al.,1990,Bourard and Morgan,1990,Bottou,1991年,Haffner等人,1991年,Haffner和Waibel,1991年,Bengio等人,1992年,Haffner和Waibel,1992年,Haffner,1993年,Driancourt,1994年,Morgan和Bourard,1995年,Konig等人,1996年]。关于这一主题的大量参考文献可查阅[McDermott,1997年,Bengio,1996年]。大多数方法使用一维卷积网络(时延神经网络)来建立对音调、音色和语速变化的鲁棒性。早期的模型将区分分类器与时间对齐相结合,但没有集成序列级训练[Sakoe等人,1988年,McDermott和Katagiri,1992年,Franzini等人,1990年]。

将相似的想法应用于手写体识别中,由于信号的二维特性使得分割问题变得更加复杂,因此将相似的思想应用于手写体识别更具挑战性。为了生成分割假设,需要将图像分割启发式算法集成起来。为了对具有几何畸变鲁棒性的分割进行分类,使用了二维卷积网[Bengio等人,1993,LeCun和Bengio,1994,Bengio等人,1995]。将分割和识别与后期规范化的综合学习进行一般公式化,从而产生了Graph-Transformer网络结构[LeCun等人,1997,LeCun等人,1998a]。

7.1 Linear Structured Models: CRF, SVMM, and MMMN

除了语音和手写识别中的判别式训练传统之外,图模型传统上被视为概率生成模型,并以概率生成模型来训练。然而,近年来,人们对区分性训练的兴趣重新兴起,这主要是由于自然语言处理中的序列标记问题,特别是条件随机场[Lafferty et al.,2001]、类感知器模型[Collins,2002]、支持向量马尔可夫模型[Altun et al.,2003],和maximum margin-Markov(最大边际马尔可夫?)网络[Taskar等人,2003]。

这些模型可以很容易地在EBM设定中描述。假设这些模型中的能量函数是参数W的线性函数:
E ( W , Y , X ) = W T F ( X , Y ) E(W,Y,X)=W^TF(X,Y) E(W,Y,X)=WTF(X,Y)其中 F ( X , Y ) F(X,Y) F(X,Y)是依赖于 X X X Y Y Y的特征函数向量,答案 Y Y Y是一个长度为 l l l的序列标签: ( Y 1 , … , Y l ) (Y_1,\ldots,Y_l) (Y1,,Yl),通常解释为时间序列。序列之间的各个标签的依赖性由因子图来捕捉,如Figure 20所示。
在这里插入图片描述
每个因子是训练参数的一个线性函数,它依赖于输入 X X X和一对标签 ( Y m , Y n ) (Y_m,Y_n) (Ym,Yn)。通常,每个因子可以依赖于超过两个的标签,但我们将讨论限制在成对的标签来简化表示:
E ( W , Y , X ) = ∑ ( m , n ∈ F ) W m n T f m n ( X , Y m , Y n ) E(W,Y,X)=\sum_{(m,n\in \mathcal{F})}W^T_{mn}f_{mn}(X,Y_m,Y_n) E(W,Y,X)=(m,nF)WmnTfmn(X,Ym,Yn)这里 F \mathcal{F} F表示因子的集合(每两个直接相关的标签组成的pair,pair构成的集合)。 W m n W_{mn} Wmn是因子 ( m , n ) (m,n) (m,n)的参数向量, f m n ( X , Y m , Y n ) f_{mn}(X,Y_m,Y_n) fmn(X,Ym,Yn)是一个(固定)的特征向量。总参数向量 W W W是所有 W m n W_{mn} Wmn的拼接。有时假设所有的因子编码相同的输入和标签pair之间的交互:这个模型就叫做同构场。因子共享相同的参数和特征,能量可以简化为:
E ( W , Y , X ) = ∑ ( m , n ∈ F ) W T f ( X , Y m , Y n ) E(W,Y,X)=\sum_{(m,n\in \mathcal{F})}W^Tf(X,Y_m,Y_n) E(W,Y,X)=(m,nF)WTf(X,Ym,Yn)能量的线性参数化确保W上相应的概率分布为指数簇:
P ( W ∣ Y , X ) = e − W T F ( X , Y ) ∫ w ′ ∈ W e − W T F ( X , Y ) P(W|Y,X)=\frac{e^{-W^TF(X,Y)}}{\int_{w'\in W}e^{-W^TF(X,Y)}} P(WY,X)=wWeWTF(X,Y)eWTF(X,Y)这个模型叫做线性结构化模型。

我们现在描述使用不同损失函数的不同版本的线性结构化模型,7.2和7.3节将介绍非线性和层次模型。

7.1.1 Perceptron Loss

训练线性结构模型的最简单方法是用感知机损失。LeCun等人[LeCun等人,1998a]提出将其用于序列标记(特别是手写识别)中的一般非线性能量函数,称之为区分性Viterbi训练。最近,Collins[Collins,2000,Collins,2002]提倡在NLP中使用线性结构模型:
在这里插入图片描述
其中 Y ∗ i = a r g m i n y ∈ Y E ( W , y , X i ) Y^{*i}=argmin_{y\in \mathcal{Y}}E(W,y,X^i) Yi=argminyYE(W,y,Xi)是模型产生的答案。线性的特性使得这个损失的表示特别的简单:
在这里插入图片描述
用随机梯度下降优化这个损失函数,导致一个简单的感知学习准则的形式:
在这里插入图片描述
正如前面提到的,感知损失的主要问题是margin的缺失,尽管当能量是一个参数的线性函数时,这个问题并不致命。margin的缺失,理论上会导致稳定性问题,但在[LeCun et al., 1998a]中被忽略。

7.1.2 Margin Loss: Max-Margin Markov Networks

在maximum margin-Markov网络背后的主要想法是使用margin loss训练线性参数化的因子图(Figure 20),能量函数就是 E ( W , Y , X ) = ∑ ( m , n ∈ F ) W T f ( X , Y m , Y n ) E(W,Y,X)=\sum_{(m,n\in \mathcal{F})}W^Tf(X,Y_m,Y_n) E(W,Y,X)=(m,nF)WTf(X,Ym,Yn)。损失函数就是简单的hinge loss,带L2正则项:
在这里插入图片描述
由于能量是 W W W的线性,损失函数很简单:
在这里插入图片描述
其中 Δ ( F ( X i , Y i ) ) = F ( X i , Y i ) − F ( X i , Y ‾ i ) \Delta(F(X^i,Y^i))=F(X^i,Y^i)-F(X^i,\overline Y^i) Δ(F(Xi,Yi))=F(Xi,Yi)F(Xi,Yi)。这个损失函数可以用多种技术来优化。最简单的方法是随机梯度下降法。然而,hinge loss和线性参数化允许在传统支持向量机的情况下使用对偶公式。哪种优化方法最合适的问题还没有解决。与神经网络训练一样,二阶方法是否比调整良好的随机梯度方法带来显著的速度改进尚不清楚。据我们所知,还没有关于这个问题的系统的实验研究发表过。

Altun, Johnson, and Hofman [Altun et al., 2003] 学习了这个模型的多个版本,使用其他的损失函数,如exponential margin loss:
在这里插入图片描述
这个损失函数倾向于将 E ( W , Y i , X i ) E(W,Y^i,X^i) E(W,Yi,Xi) E ( W , Y i , X i ) E(W,Y^i,X^i) E(W,Yi,Xi)的推的尽可能更远,只能通过正则项来调节。

7.1.3 Negative Log-Likelihood Loss: Conditional Random Fields

条件随机场使用NNL损失函数训练线性结构化模型:
在这里插入图片描述
由于能量函数是参数的线性表示,得到下面这个表示:
在这里插入图片描述
损失函数关于参数 W W W的梯度是:
在这里插入图片描述
其中:
在这里插入图片描述
这个损失函数的问题是需要对所有可能的标签组合求和,因为这种组合的数量是指数级的(对于 l l l长度的二进制标签,有 2 l 2^l 2l种组合方式)。但是,可以使用第6章中提到的有效推理算法之一。

CRFs的一个优点是损失函数关于 W W W是非凸的。然而,损失函数的凸性虽然在数学上令人满意,但似乎并不是一个显著的实际优势。尽管CRF最初的优化算法是基于迭代缩放的,但最近的工作表明随机梯度方法可能更有效[Vishwanathan et al.,2006]。

7.2 Non-Linear Graph Based EBMs

90年代在语音和手写领域发展起来的图模型判别式学习方法允许对因子进行非线性参数化,主要是高斯和多层神经网络的混合。非线性因素允许对输入和标签之间更加复杂的依赖关系进行建模(例如将手写单词的像素映射到相应的字符标签)。一个特别重要的方面是使用对输入的不相关变换不变(或健壮)的架构,例如语音中的时间伸缩或基音变化,以及笔迹中的几何变化。这最好通过分层的、多层的体系结构来处理,这些体系结构可以以集成的方式学习低层次的特性和高层次的表示。大多数作者将一维卷积网络(时延神经网络)用于语音和笔迹[Bengio et al.,1990,Bottou,1991,Haffner et al.,1991,Haffner and Waibel,1991,Driancourt et al.,1991a,Driancourt et al.,1991b,Driancourt and Gallinari,1992b,Driancourt and Gallinari,1992a,Bengio et al.,1992,Haffner和Waibel,1992年,Haffner,1993年,Driancourt,1994年,Bengio,1996年]和基于图像的手写二维卷积网[Bengio等人,1993年,LeCun和Bengio,1994年,Bengio等人,1995年,LeCun等人,1997年,LeCun等人,1998a]。

对一些观测者来说,最近对线性结构模型的兴趣某种程度上是对过去的一种回溯,一种在复杂性尺度上的回归。线性参数化能量的一个明显优点是,它们使得感知器损耗、铰链损耗和NLL损耗是凸的。通常认为,凸损失函数本质上更好,因为它们允许使用有效的优化算法,并保证收敛到全局最小值。然而,最近有几位作者认为凸损失函数并不能保证良好的性能,而且在实践中,即使没有理论保证,非凸损失实际上也可能比凸损失更容易优化[Huang and LeCun,2006,Collobert et al.,2006]。

此外,有人认为,凸损失函数可以使用复杂的二阶优化方法有效地优化。然而,一个众所周知但常常被忽视的事实是,一个经过仔细调整的随机梯度下降方法在实践中往往比最复杂的二阶优化方法(在纸上看起来更好)要快得多。这是因为随机梯度可以通过在单个样本的基础上更新参数来利用样本之间的冗余,而“批量”优化方法浪费大量资源来计算精确的下降方向,通常会抵消理论速度优势[Becker和LeCun,1989,LeCun等人。,1998年a,LeCun等人,1998年b,Bottou,2004年,Bottou和LeCun,2004年,Vishwanathan等人,2006年]。
在这里插入图片描述
Figure 21展示了一个语音识别系统的示例,该系统集成了使用time-delay neural network(TDNN)和Dynamic time warping(DTW)的字匹配。首先将原始语音信号转换为一个语音矢量序列(通常为10至50个谱系数或倒谱系数,每10ms)。将声矢量序列馈送到TDNN中,将其转换为一系列高电平特征。TDNN中的时间次采样可用于降低特征向量的时间分辨率[Bottou,1991]。然后将特征向量序列与单词模板进行比较。为了降低匹配对语音速度变化的敏感性,DTW将特征序列与模板序列对齐。直观地说,DTW在于找到将向量(或符号)序列映射到另一个向量序列的最佳“弹性”扭曲。动态规划(如Viterbi算法或A*算法)可以有效地找到求解方案。

DTW可以简化为在有向无环图中搜索最短路径,其中每个节点的代价是两个输入序列中两个项之间的不匹配。因此,整个系统可视为带隐藏变量EBM,其中 Y Y Y是词典中的单词集, Z Z Z表示每个单词的模板集,以及每个对齐图的路径集。关于神经网络和时间对齐的综合训练最早是由Driancourt和Bottou[Driancourt等人,1991a]提出,他们提议使用LVQ2损失来训练这个系统。通过DTW模块反向传播梯度并进一步反向传播到TDNN以更新权重是一件简单的事情。类似地,渐变也可以反向传播到word模板以更新它们。对于孤立词的识别,尽管LVQ2的损失为零,但仍然获得了很好的结果。McDermott后来使用了类似的方案[McDermott,1997]。

一种更通用的方法是将神经网络(如TDNN)与隐马尔可夫模型相结合,而不是DTW。一些作者在90年代提出了这种组合的综合训练程序。第一个建议是由Bengio等人[Bengio等人,1991年,Bengio等人,1992年,Bengio,1996年]提出的,他们使用了随机梯度下降优化的NLL/MMI损失,Bottou[Bottou,1991年]提出了各种损失函数。Haffner等人随后在他的多状态TDNN模型中提出了类似的方法[Haffner和Waibel,1992,Haffner,1993]。类似的训练方法也被设计用于手写识别。Bengio和LeCun使用随机梯度下降优化的NLL/MMI损失描述了一种具有全局训练的神经网络/HMM混合[Bengio等人,1993年,LeCun和Bengio,1994年]。不久之后,Konig等人提出了REMAP方法,该方法将期望最大化算法应用于HMM,以产生基于神经网络的声学模型的目标输出[Konig等人,1996]。

神经网络/隐马尔可夫模型混合系统的基本结构与Figure 21中的相似,只是单词(或语言)模型是概率有限状态机而不是序列。每个节点的发射概率通常是简单的高斯函数,作用于神经网络产生的输出向量序列。唯一的挑战是通过HMM网格反向传播梯度来计算相对于神经网络输出的损失梯度。由于该过程与Graph-Transformer网络中使用的过程非常相似,因此我们将参考下一节的描述。值得注意的是,许多作者以前提出的方法结合了一个单独训练的判别分类器和一个语音和手写对齐方法,但他们没有使用综合训练方法。

7.3 Hierarchical Graph-Based EBMs: Graph Transformer Networks

7.2节和7.1节讨论了模型中推理和学习涉及动态因子图的所有变量配置的优化或最小化。通过构建一个网格,每个路径对应于这些变量的特定配置,可以有效地执行这些操作。第7.2节侧重于因子是参数非线性函数的模型,而第7.1节侧重于因子线性参数化的简单模型。

本节讨论一类模型叫Graph-Transformer networks(GTN),它设计用于的场景是:序列化结构非常复杂,以至于相应的动态因子图不能显示得表示,但必须用程序化表示。例如,为了识别英语中的整个手写句子,必须动态构建的因子图on-the fly(啥意思??)。对应的网格包含一条路径,用于句子的每个语法正确的转录,用于句子的每个可能的字符分割。生成整个网格(或其相关因子图)是不切实际的,因此必须按程序表示网格。GTN方法将网格视为机器操作的主要数据结构,而不是表示因子图。GTN可以被看作是状态是网格的多层结构,就像神经网络是一个 状态是固定尺寸向量 的多层结构一样。GTN可以被看作是一个模块网络,称为Graph Transformers,它将一个或多个图形作为输入,并生成另一个图形作为输出。大多数模块的操作可以表示为输入图形与另一个图形(称为transducer)的组合,该图形与模块相关[Mohri,1997]。附加到输入图边缘的对象(可以是数字、标签、图像、序列或任何其他实体)被馈送到可训练函数,函数的输出被附加到输出图的边。由此产生的体系结构可以看作是一个组合层次结构,在这个层次结构中,低层次的特征和部分通过图形组合被组合成更高层次的对象。

对于语音识别,声矢量被组合成电话,电话被组合成三音,三音被组合成单词,单词被组合成句子。同样,在手写识别中,墨水段被组合成字符,字符被组合成单词,单词被组合成句子。
在这里插入图片描述

图22展示了用于同时分割和识别手写单词的GTN架构的示例[LeCun等人,1998a]。第一步是对图像进行过度分割,并从中生成一个分割图(见图22(a))。分割图 G r s e g Gr_{seg} Grseg是一个有向无环图(DAG),其中从起始节点到结束节点的每条路径表示将输入图像分割成候选字符的特定方式。每个内部节点与分割产生的候选切割相关联。源节点和目标节点之间的每个弧都与位于两个切割之间的图像部分相关联。因此,每一块墨水在每一条路径上都只出现一次。下一阶段将分割图 G r s e g Gr_{seg} Grseg传入recognition transformer,recognition transformer产生与 G r s e g Gr_{seg} Grseg节点数相同的解释图 G r i n t Gr_{int} Grint。recognition transformer包含的鉴别函数 G W ( X ) G_W(X) GW(X)的相同副本与解释图中的弧一样多(这个数字随着每个新输入的变化而变化)。 G W G_W GW的每个副本获取与分割图中的一个弧相关联的图像,并在解释图中的相应节点之间生成多个弧。每个输出弧由一个字符类别标记,并通过将图像分配给该类别的能量进行加权。因此,解释图中的每条路径表示一个可能分段的输入的一种可能解释,沿着路径的权重之和表示该解释的组合能量。然后,解释图通过路径选择器模块,该模块仅从解释图中选择那些具有与Y(答案)给定的相同标签序列的路径。这个模块的输出是另一个称为 G r s e l Gr_{sel} Grsel的图形。最后,一个叫做Viterbi transformer在 G r s e l Gr_{sel} Grsel中选择一条由潜变量 Z Z Z索引的路径。 Z Z Z的每个值对应于 G r s e l Gr_{sel} Grsel中的不同路径,可以解释为输入的特定分段。输出能量就是沿最短路径的弧能量之和。通过在 G r s e l Gr_{sel} Grsel上运行正向算法,在 Z Z Z上实现边缘化,如第6节等式72所示。路径选择器和Viterbi transformer可以看作是在其输入图中选择路径的特定类型的“开关”模块。

在[LeCun et al.,1998a]中描述的手写识别系统中,判别函数 G W ( X ) G_W(X) GW(X)是二维卷积网络。这类函数被设计成以集成的方式学习低层特征和高层表示,因此在 W W W中是高度非线性的。因此损失函数在 W W W中不是凸的。提出的优化方法是随机梯度下降法的一种改进形式。

通过用随机梯度下降最小化感知机损失,是由下面的更新准则进行的:
在这里插入图片描述
如何计算 E ( W , Y i , X i ) E(W,Y^i,X^i) E(WYiXi) E ( W , Y ∗ i , X i ) E(W,Y^{*i},X^i) E(WYiXi)的梯度?答案很简单,就是通过整个结构反向传播梯度,一直返回到判别函数 G W ( X ) G_W(X) GW(X)。总能量可以用以下形式表示:
在这里插入图片描述
其中,求和运算在 G r i n t Gr_{int} Grint中的所有弧上运行, G k l ( W , X ) G_{kl}(W,X) Gkl(WX)是判别函数的 k k k个副本的的第 l l l分量,并且如果包含 G k l ( W , X ) G_{kl}(W,X) Gkl(WX)的弧出现在最终图形中,则 δ k l \delta_{kl} δkl是等于1的二进制值,否则为0。因此,梯度很简单:
在这里插入图片描述
在第五节中,我们得出结论,广义感知器损失不是一个好的损失函数。虽然零边缘可能会限制解决方案的鲁棒性,但感知器损失似乎是适用于对分段字符进行了预训练的系统的优化。然而,在[LeCun et al.,1998a]中描述的基于GTN的商业银行支票读取系统是以负对数似然损失进行训练的。

第二种训练GTNs的方法是使用负对数似然损失,使用 G r s e l Gr_{sel} Grsel上的原文Equation (72)的正向算法在 Z Z Z上边缘化,而不是最小化。通过使用以下更新规则,使用随机梯度下降最小化NLL损失进行训练:
在这里插入图片描述
其中,
在这里插入图片描述
是通过固定 X i X^i Xi Y i Y^i Yi,在 Z Z Z上边缘化从而得到的自由能。
在这里插入图片描述
而这个是通过固定 X i X^i Xi,在 Y Y Y Z Z Z上边缘化从而得到的自由能。计算这些梯度比最小化的情况稍微复杂一些。通过使用链式准则,梯度可以表示成:
在这里插入图片描述
其中求和在解释图的所有边进行。第一个因子是通过正向算法(等式72)获得的量相对于解释图中一条特定边的导数。这些量可以通过网格反向传播梯度来计算,被视为具有由等式72给出的节点函数的前馈网络。详情请参阅[LeCun等人,1998a]。

与[Lafferty et al.,2001]中的阐述相反,如[LeCun et al.,1998a]中所述,用NLL损失训练的GTN系统在可能的标签序列上分配了明确定义的概率分布。特定解释的概率由等式46给出:
在这里插入图片描述
用一种广义边际损失来训练GTN似乎很自然。据我们所知,从来没有这样做过。

8.Discussion

基于能量和概率模型仍然有一些悬而未决的问题需要回答。本节对这些问题进行了相对哲学的讨论,包括基于能量的推理和学习近似方法的讨论。最后,对本章的主要观点进行了总结。

8.1 EBMs and Probabilistic Models

在1.3节中,能量转化为概率是通过使用Gibbis分布:
在这里插入图片描述
Y Y Y上的任何概率分布都可以用这种形式的分布任意近似。对于有限能量值,某些 Y Y Y的概率正好为零的分布只能近似得到(毕竟指数不可能为0啊)。概率模型的参数估计可以用许多不同的方法来执行,包括用贝叶斯反演的最大似然估计、最大条件似然估计和(当可能时)贝叶斯平均(可能用变分近似)。最大化训练样本的条件似然相当于最小化我们所说的负对数似然损失。

因此,判别概率模型可以看成EBMs的一个特例,其中:

  • 能量能够使得这个积分 ∫ y ∈ Y e − β E ( W , y , X ) \int_{y\in \mathcal{Y}}e^{-\beta E(W,y,X)} yYeβE(W,y,X)收敛;
  • 模型通过最小负对数似然损失来训练。

一个重要的问题是概率模型和EBMs的相对优缺点。概率模型有两个主要缺点。
首先,规范化要求限制了我们可以使用的能量函数的选择。例如,没有理由相信图7中的模型在Y上是可规范化的。
在这里插入图片描述

实际上,如果函数 G W 2 ( Y ) G_{W_2}(Y) GW2(Y)是有上界的,则积分 ∫ y ∈ Y e − β E ( W , y , X ) \int_{y\in \mathcal{Y}}e^{-\beta E(W,y,X)} yYeβE(W,y,X)不收敛。一个常见的修复方法是添加一个项 R y ( Y ) R_y(Y) Ry(Y)到能量上,解释为Y上的对数先验,其负指数是可积的。
其次,计算负对数似然损失函数(或其相对于W的梯度)中的对比项可能非常复杂、昂贵,甚至难以解决。各种类型的模型可按照逐渐递增的复杂程度划分为下面5个粗略类别:

  • Trival:当 Y Y Y基数很小且是离散的,配分函数是一个有少量项的和,可以简单地计算。另一个常见的情况是配分函数不依赖于 W W W,因此为了学习的目的可以忽略它。例如,当能量是 Y Y Y中具有固定矩阵的二次型时,就是这种情况。在这些情况下,能量损失可以不用担心崩溃。
  • Analytical:当配分函数及其导数可以解析计算时。例如,当能量是Y中矩阵依赖于可训练参数的二次型时,配分函数是高斯积分(具有可变协方差矩阵),其导数是高斯分布下的期望,两者都有封闭形式的表达式。
  • Computable:当配分函数是指数项上的和时,但计算可以通过某种方式进行分解,使其可伸缩。最值得注意的情况是,配分函数是一个树型图模型输出变量和潜在变量配置的总和。在这种情况下,置信度传播可以用来计算配分函数。当图模型是简单的链图(如HMMs的情况),配置集可以用加权网格的路径表示。通过该网格运行正向算法,得到了配分函数。一个简单的反向传播类似的程序可以用来计算其梯度(例如,见[LeCun等人,1998a]及其参考)。
  • Approachable:当无法精确计算配分函数,但可以使用各种方法合理地近似时。一个值得注意的例子是,当配分函数是带环图形模型的配置和时。这和不能精确计算,但环置信度传播或其他变分方法可能会得到适当的近似。用这些近似,各种答案的能量仍然会被拉上来,尽管没有像使用完全的配分函数那样系统地和相同的力。从某种意义上说,变分方法可以解释为在EBM的背景下,选择一个子集的能量拉高的方法。
  • Intractable:当配分函数确实难以处理且没有令人满意的变分近似时。在这种情况下,一个是减少使用抽样方法。抽样方法是一种选择合适的候选答案的策略,其能量将被拉高。概率方法是根据模型下答案的概率来抽样,并提取它们的能量。平均而言,每个答案都会根据配分函数上拉适当的数量。

在这种情况下,使用基于能量的损失函数(而不是负对数似然)可以被视为一种具有特定策略的采样方法,用于选择能量将被拉起的答案。例如,hinge loss系统性地选择了最令人不快的错误答案,作为应该提高能量的答案。最后,使用这种策略将产生能量面,能量的差异不能被解释为似然比(变分方法也是如此)。我们应该再次强调,如果模型用于预测、分类或决策,这是无关紧要的。

在EBM框架下,变分近似方法可以解释为损失函数对比项的一种特殊选择。一种常见的方法是将变分方法和基于能量的损失函数视为概率方法的近似。我们在这里提出的是将概率方法视为一个更大的基于能量的方法簇的特例。基于能量的方法与概率方法同样合理。它们仅仅是为了训练模型来回答不同于概率模型的问题。

一个重要的open question是:常用的变分方法(例如,流行结构的平均场近似)是否真的满足条件3(见第5.2节)。

8.2 Efficiency in Learning

影响学习效率的最重要的问题是:“在能量面形成正确的形状之前,有多少错误答案的能量必须被明确地拉上来?”。拉高最冒犯答案的能量的损失函数在每次学习迭代中只会拉高一个能量。相反,负对数似然损失在每次迭代中都会拉高所有不正确的答案,包括那些不太可能产生比正确答案更低能量的答案。因此,除非NLL计算能够以非常低的成本完成(如在“trivial” and “analytical”模型的情况下),否则基于能量的方法必然更有效。

一个重要的开放性问题是,是否存在替代损失函数,其对比项及其导数的计算要比负对数似然损失的计算简单得多,同时保留了一个很好的特性,即它们拉高了大量能量“低得吓人”的错误答案。也许,可以定义一个架构和损失函数的价值系数,它将比较评估损失所需的计算量及其相对于错误答案(其能量因此被拉高)的导数。

对于“intractable”类别的模型,每个需要上拉或下推的能量都需要评估能量及其梯度(如果使用基于梯度的优化方法)。因此,找到能面参数化,使能面以最小的推力和拉力形成正确的形状是至关重要的。如果Y是高维的,而能量面是无限延展的,那么能量面必须在许多地方被拉起,使其形成一个合适的形状。相反,更“刚性”的能量面可能会以较小的拉力形成合适的形状,但不太可能接近正确的形状。似乎存在一个类似于影响泛化性能的偏差-方差困境。

8.3 Learning with Approximate Inference

通常,推理算法只能给出一个近似的答案,或者不能保证给出能量的全局最小值。在这种情况下,基于能量的学习能起作用吗?这方面的理论尚不存在,但一些直觉可能会阐明这个问题。

Y Y Y中可能有我们的推理算法永远找不到的某些答案,可能是因为它们位于算法永远无法到达的遥远的空间区域。我们的模型可能会给这些区域的错误答案提供较低的能量,但是由于推理算法无法找到它们,因此它们将永远不会出现在对比项中,并且它们的能量永远不会被拉起。幸运的是,由于这些答案不是由推理算法找到的,我们不需要担心它们的能量。

基于能量的学习有一个有趣的优点,那就是只有那些能量被拉上来的错误答案才是真正重要的。这与概率损失函数(如NLL)形成对比,在概率损失函数中,对比项必须拉高每个答案的能量,包括我们的推理算法永远找不到的答案,这可能是浪费。

8.4 Approximate Contrastive Samples, Contrastive Divergence

损失函数的不同之处在于对比样本的选择方式,以及对比样本的能量被拉起的程度。一个有趣的建议是找出总是接近正确答案的答案,从而使正确答案成为局部最小值,但不一定是全局最小值。这一思想是Hinton提出的对比散度算法的基础[Hinton,2002,Teh等人,2003]。对比发散学习可以看作是一种近似的学习方式,有两条捷径。首先,通过使用马尔可夫链蒙特卡罗方法从分布P(Y | Xi,W)中提取样本来近似等式24中的对比项。其次,通过在所需答案处启动马尔可夫链,并仅运行链的几个步骤来选取样本。这就产生了一个样本˜这是接近理想的答案。然后,执行参数的简单梯度更新:在这里插入图片描述
由于对比样本总是在期望的答案附近,所以可以希望期望的答案成为能量的局部最小值。运行MCMC仅需几步就限制了计算开销。但是,并不能保证所有低能量的不正确答案都会被拔高。

8.5 Conclusion

本教程旨在介绍和阐述以下主要观点:

  • 许多现有的学习模式可以在基于能量的学习框架中简单地表达。

  • 在文献中提出的许多损失函数中,有些是好的(具有非零裕度),有些是坏的。

  • 概率学习是基于能量的学习的特例,其中损失函数是负对数似然,即最大互信息准则。

  • 使用随机梯度方法优化损失函数通常比黑盒凸优化方法更有效。

  • 随机梯度法可应用于任何损失函数,包括非凸损失函数。由于空间的高维性,局部极小在实际中很少成为问题。

  • 支持向量马尔可夫模型、最大边际马尔可夫网络和条件随机场都是使用线性参数化能量因子的序列建模系统。自20世纪90年代初以来,语音和手写识别的非线性参数化序列建模系统一直是一个非常活跃的研究领域。

  • GTN是一种层次化的序列建模系统,其中被操纵的对象是包含给定层次上所有可选解释的网格。全局训练可以使用随机梯度进行,通过使用一种形式的反向传播算法来计算相对于系统中所有参数的损失梯度。

贝叶斯网络学习教程是一种介绍贝叶斯网络概念和应用的教育材料。贝叶斯网络是一种概率图模型,用于建模和推理关于变量之间的概率依赖关系的方法。 这个教程将引导学习者了解贝叶斯网络的基本原理和构建模型的步骤。首先,它会介绍概率论和贝叶斯定理的基本概念。学习者将了解到如何使用概率分布来描述变量之间的关系,以及如何使用贝叶斯定理来更新我们对变量的信念。 接下来,教程会介绍贝叶斯网络的结构和参数估计。学习者将学习如何构建一个贝叶斯网络,通过定义变量之间的依赖关系来表示概率分布。此外,他们还将了解如何从数据中学习网络的参数,以便通过观察到的数据来推断未观察到的变量。 然后,教程会介绍贝叶斯网络的推断和预测。学习者将学会如何使用贝叶斯网络来进行推断,即根据已知的证据来计算变量的后验概率。他们还将了解如何使用贝叶斯网络进行预测,即根据已观察到的变量来预测未观察到的变量的概率分布。 最后,教程会讨论贝叶斯网络的应用领域和案例研究。学习者将了解到贝叶斯网络在人工智能、医学、金融等领域的广泛应用,并了解一些实际问题的解决方案。 总而言之,贝叶斯网络学习教程是一个全面的学习资源,可以帮助学习者掌握贝叶斯网络的基本原理、构建模型的方法和应用技巧。通过这个教程,学习者将能够理解和应用贝叶斯网络来解决各种实际问题。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值