-->

机器学习40讲_40_38_完备数据下的参数学习有向图与无向图

你好,我是王天一。

今天我和你分享的主题是完备数据下的参数,学习有向图与无向图。

介绍完表示和推断之后,就要进入概率图模型最后一个任务,也就是学习问题。

在推断任务当中,我们会根据已知的模型来确定实例的特性,模型的结构和参数都作为输入的一部分。

出现学习任务呢则是将推断的任务颠倒过来,根据数据来构造出能够反映数据中潜在规律的模型。

实际上呢就是对概率图模型的训练过程,概率图模型的学习和其他的机器学习一样,都属于自动化的建模方式。

构造概率图模型的依据是变量之间的依赖关系。

这些依赖关系的建立呢,需要仰赖垂直领域的先验知识。

如果用纯人工的方式来构建概率图模型的话啊,我按照我自己的这个先验一步一步的把这个变量给它连接起来。

那么在网络的节点数目较多,规模较大的时候,这个工作量将是惊人的。

将学习任务引入到概率图模型当中之后,就可以基于结构化的数据,高效的计算出网络的结构还有参数,从而呢大大的简化训练的流程。

根据学习对象的不同,学习任务可以大体的分为参数、学习和结构。

学习两类参数学习是在已知图模型结构的前提下,估计它的参数啊,这个模型的结构我是知道的,算什么呢?算节点之间的条件概率,这呢可以看成是个数值的优化问题。

因为只需要涉及到这个概率的计算结构,学习呢是在图模型完全未知的情况下,我要先确定它的结构,再来根据结构计算参数。

所以结构学习可以看成是针对结构和参数的联合优化。

好在呢可以存在单一的全局最优解啊,有一个全局的最优解是存在的。

至于说找不找得到,那又是另一回事儿。

今天这一讲里呢,我们先来看看这个参数的学习,这个任务还可以进一步的分类。

根据模型结构的不同参数,学习可以分为对贝叶斯网络的学习和对马尔可夫随机场的学习,其实也就是对有向图的学习和对无向图的学习有向和无向的差异。

不能小看它给两种结构的学习带来了截然不同的解决方案。

在贝叶斯网络里,每一对节点之间都定义了归一化的条件概率分布。

所以学习任务针对的呢是每个单独的局部。

而在马尔可夫随机场当中,规划操作是通过全局化的这个划分函数来完成的参数。

在全局上的耦合性,使得这个复杂的任务不能够被分解成若干个简单的任务,从而呢带来了更大的学习难度。

最简单的参数学习问题呢是利用完全观测的数据来估计贝叶斯网络的参数啊数据是完全的,网络是有限的,网络结构里并不存在任何的隐变量。

从频率主义出发呢,可以基于似然概率最大化来实现参数的估计。

最大自然估计的目标是找到让现有数据出现的概率,也就是似然函数最大化的那一组参数。

根据贝叶斯网络局部的特性,全局自然函数呢可以被拆解成一些独立的局部自然函数的乘积,每个独立项都会对应着网络当中的一个条件。

概率分布。

这个过程呢就是似然函数的全局分解过程,全局分解有什么用呢?用处可大了。

总的来说就是简化参数估计的运算,基于全局分解,可以单独对每一个局部自然函数进行最大化,而不需要考虑呢其他局部结构的影响,将每个局部自然函数的最优参数组合在一起,得到的就是全局自然函数的最优解。

这相当于把一个复杂的任务拆分成若干个简单的任务。

这个技巧最简单又最具代表性应用就是朴素。

贝叶斯分类器将类似然函数改写成属性。

自然函数的乘积其实就是基于图结构的全局分解。

那么在此基础上,计算属性的自然概率就是统计。

当每个属性取得不同的取值的时候,归属于某个类别的样本在这个类别当中所占的b例。

如果你对朴素贝叶斯还有些陌生的话,那可以参考我们专栏的第二十八讲以及人工智能基础课里面的内容。

前面介绍的最大自然估计呢出自于频率主义的视角。

如果要从贝叶斯主义出发,就得先给每个参数设定鲜艳分布,以实现这个最大后验的估计表示鲜艳分布的变量呢,一般来说会与现有贝叶斯网络的数据和结构独立啊,你这鲜艳和模型是没有关系的,从而与原始的贝斯网络共同形成一个新的叫原网这样的一个概念。

可以证明,如果不同参数的先验分布是相互独立的,那么它的后验分布呢也会继承这个优秀的性质啊,也会相互独立。

所以,对于最大后验估计的求解,也可以遵循从局部到整体的方式和最大自然估计一样,这都是没有问题的。

不难看出,对于完整观测的贝叶斯网络进行参数估计呢,实际上就是将传统的最大自然估计还有最大后验估计应用到有向图这个特定的场景之中,算法本身没有任何变化,更重要的是呢图模型里的条件独立性,还可以进一步的将全局优化分解成相互独立的局部优化,某种程度上还相当于简化了这个方法。

但是在马尔可夫随机场里,问题就没有这么简单了。

考虑一个最简单的马尔可夫随机场ABC,三者是一个顺联的结构。

这个图模型里的示函数有两个啊,分别是斐一AB和斐二BC.那它的划分函数z呢等于两个式函数的乘积。

对ABC这三个变量,所有可能的取值进行求和啊,假设说ABC都是二进制的变量,那么所有可能的取值就有八种。

对这八种取值之下的这个似函数的乘积啊,我就要进行求和来求出这个规划的因子。

在给定一组特定的数据ABC之后啊,那点击文稿你可以看到这个实例,它的一个自然概率。

在对这个似然概率进行最大化的时候呢,我们不能对斐一AB和斐二BC进行一个分开的处理,各自求解最大值,这种做法是行不通的,为什么呢?因为划分函数z是由所有的参数共同决定的,无论是斐一、AB还是斐二BC发生变化,都会导致z发生变化。

这划分函数呢就像一条履带,将这两个因子像两个齿轮一样扣在一起,其中一个的变化会被传导到另一个。

所以在优化的时候呢,b就必须让两者作为一个整体来进行优化。

在马尔可夫场的参数学习当中,上面这个乘积式里面,每个因子都会被改写,成为对数线性的形式。

好,改写成为一个指数项,也就是把这个因此改写成变量级特征函数的指数加权求和。

这样一来呢,模型的参数就变成了对数线性模型当中的权重系数。

那么对于权重函数的最优化,也就是参数学习的过程。

利用划分函数是关于待估计函数的这个凸函数这个条件可以证明呢对数自然函数是单峰函数,只有全局最优而没有局部最优,这是由这个线性的性质所保证。

求解这个全局最优值呢?就等价于找到让对数自然函数梯度为零的那组参数啊梯度为零,意味着它肯定是取到一个最值啊,因为它没有局部的最优解,这时候得到的最优解呢就会和真实的模型完全的匹配。

但问题在哪儿呢?在于单凭这个准则不能给出问题的解析解,它相当于一个存在性的定律,没告诉你怎么找到存在的这个点。

所以要计算出最优的参数,就必须借助梯度啊这样的一些最优化的方法。

虽然说马尔可夫随机场不能像贝叶斯网络那样,将整体转化为局部之机,但是它在结构上呢也是可以被分解的。

如果马尔可夫随机场的结构是一个弦图的话,那这个随机场就是可分解。

什么是弦图呢?指的是无向图当中任意长度大于三的环路里,都至少存在着一条弦,也就是连接环路不相交的顶点的无向边。

当然这个概念听起来可能有些让人蒙圈啊,实际上什么意思呢?有的若干个顶点啊,我可以让它首尾连接,形成一个圈儿啊,形成一个环儿。

如果这个环中间啊没有连接其他点的直线啊,那这个这个图呢就不是一个弦图,我把不相邻的两个点给它连接起来,就像我在一个圆儿里面画一条弦啊,有一条通过内部的直线,这样的图实际上就是弦图。

点击文稿,你可以看到一个弦图的实例,那么其中连接节点x二和x三的那条边就是弦。

如果去掉这条弦的话,那整个的图就变成一个环了。

可分解的这个马尔口随机场,它可以被划分成为不同的团,每个团的试函数都可以被初始化为经验编辑函数啊,利用我的数据来进行初始化。

如果这个团和其他团之间存在公共节点的话,那么它的是函数呢还要除以公共节点的这个经验。

边际函数。

利用这种经验方式,我可以单独的计算出每个团的示函数,再将得到的结果相乘。

这个结果呢就可以用来进行最大似然。

估计还是以上面的弦度为例啊,节点x一、x二、x三三个构成了一个团。

它的视函数呢可以表示为经验边际,按照同样的方式也可以写出团x二、x三x四的经验式函数。

但是因为这个团和上一个团共享了公共节点x二和x三,所以呢就得用这两个公共节点的经验式给它做一个约化。

图里又可以求出团x二、x四、x五的是函数。

三者相乘,就可以计算出最大自然估计的参数。

点击文稿,你可以看到具体的这个数学表达式,可分解马尔可夫飞机场的最大自然估计呢可以通过上面的方式来进行一个简化。

可是如果图结构本身是不可分解的模型的学习,就要借助于更一般的方法,迭代比例拟合就是这样的一种方法。

迭代比例拟合的方法呢,可以在给定经验边际的条件下求解未知的示函数。

具体做法是什么呢?一个一个的去满足经验边际的约束。

但是在这个过程当中,满足下一个约束又可能会破坏上一个约束。

所以呢需要通过迭代的方式来逼近所有的编辑条件啊,这也是迭代比例拟合这个名称的来源。

马尔可夫随机场和贝斯网络相比,它的运算成本较高。

如果要简化运算的话,既可以使用近似推理过程来计算梯度,也可以用其他目标函数来代替似然的函数。

近似推理呢实际上是将学习问题当成一个推断问题来解决,它包括传播近似推理和抽样近似推理两种具体的实现方案。

传播近似推理呢是将信念传播算法应用在马尔可夫唱的学习当中。

抽样近次推理则通常借助于MMC用平稳分布作为参数后验分布的估计,用来代替自然函数的目标。

函数呢则包括什么?伪似然函数啊,对比散度还有最大间隔函数等等。

那其中的对比散度已经被用于受限波尔兹曼基的训练当中。

今天呢我和你分享的概率图,模型当中的参数学习任务包含着以下四个要点。

第一,参数学习的任务是在已知模型结构的前提之下来,估计它的参数可以看成是对模型的训练。

第二,贝叶斯网络的参数学习可以由整体分解为局部,在局部上应用,最大自然估计或者最大后验估计。

第三,马尔可夫随机场的参数学习不能分解也不存在解析解,但是可以通过使用通用的迭代比例拟合方法来找到全局最优解。

第四,马尔可夫随机场的参数学习,可以通过近似推理和目标函数替换加以简化。

今天我们介绍的内容呢关注的是完备数据基础上的参数学习啊,就是数据是完整的。

如果数据集是不完备的呢,它就可能会缺失某些变量的观测结果,或者存在着不能被观测的隐变量。

后一种情况可以通过EM算法来解决。

那么,前一种情况如何处理呢?你可以查阅资料,了解相关内容,并在这里分享你的见解。