概率图模型基础

一、概念引入

  很多事情是具有不确定性的。人们往往希望从不确定的东西里尽可能多的得到确定的知识、信息。为了达到这一目的,人们创建了概率理论来描述事物的不确定性。在这一基础上,人们希望能够通过已经知道的知识来推测出未知的事情,无论是现在、过去、还是将来。在这一过程中,模型往往是必须的,什么样的模型才是相对正确的?这又是我们需要解决的问题。这些问题出现在很多领域,包括模式识别、差错控制编码等。

  概率图模型是解决这些问题的工具之一。从名字上可以看出,这是一种或是一类模型,同时运用了概率和图这两种数学工具来建立的模型。那么,很自然的有下一个问题。

二、为什么要引入概率图模型

  对于一般的统计推断问题,概率模型能够很好的解决,那么引入概率图模型又能带来什么好处呢?

  LDPC码的译码算法中的置信传播算法的提出早于因子图,这在一定程度上说明概率图模型不是一个从不能解决问题到解决问题的突破,而是采用概率图模型能够更好的解决问题。

  《模式识别和机器学习》这本书在图模型的开篇就阐明了在概率模型中运用图这一工具带来的一些好的性质,包括

  1. They provide a simple way to visualize the structure of a probabilistic model and can be used to design and motivate new models.

  2. Insights into the properties of the model, including conditional independence properties, can be obtained by inspection of the graph.

  3. Complex computations, required to perform inference and learning in sophisticated models, can be expressed in terms of graphical manipulations, in which underlying mathematical expressions are carried along implicitly.

  简而言之,就是图使得概率模型可视化了,这样就使得一些变量之间的关系能够很容易的从图中观测出来;同时有一些概率上的复杂的计算可以理解为图上的信息传递,这是我们就无需关注太多的复杂表达式了。最后一点是,图模型能够用来设计新的模型。所以多引入一数学工具是可以带来很多便利的,我想这就是数学的作用吧。

  当然,我们也可以从另一个角度考虑其合理性。我们的目的是从获取到的量中得到我们要的信息,模型是相互之间约束关系的表示,而数据的处理过程中运用到了概率理论。而图恰恰将这两者之间联系起来了,起到了一个很好的表示作用。

三、加法准则和乘法准则

  涉及到概率的相关问题,无论有多复杂,大抵都是基于以下两个式子的——加法准则和乘法准则。

  第一个式子告诉我们当知道多个变量的概率分布时如何计算单个变量的概率分布,而第二个式子说明了两个变量之间概率的关系。譬如X,Y之间相互独立时应有

还有一个是著名的贝叶斯公式,这和上面的乘法准则是一样的(当然分母也可以用加法公式写,这样就是那个全概率公式了)

四、图和概率图模型

  下面这张图片描述的就是图,它是由一些带有数字的圆圈和线段构成的,其中数字只是一种标识。我们将圆圈称为节点,将连接圆圈的节点称为边,那么图可以表示为G(V,E)。

  如果边有方向,称图为有向图,否则为无向图;

  两个节点是连通的是指两节点之间有一条路;

  路是由节点和边交叉构成的;

  上述定义都不太严格,具体可参考图论相关知识。

  有向图模型(贝叶斯网络)

  举个例子,譬如有一组变量X1,X2….XN,如果每个变量只与其前一个变量有关(1阶马尔可夫过程),那么以下等式成立

  那么如何用图来表示这一关系呢?自然,我们要表示的是右边的式子,右边的式子表示了变量之间的联系。而当我们观察条件概率时,我们发现我们必须要指明哪个是条件。如果我们采用变量为节点,采用无向图这种节点等价的关系显然不能直接描述条件概率,因此这里选择了有向图来描述这一关系,即表示为P(X2|X1)

  那么此时上述的1阶马尔可夫过程表示为,注意其中没有箭头指向X1,故表示p(X1)意味着无条件。

  有向图模型,或称贝叶斯网络,描述的是条件概率,或许这就是其被称为贝叶斯网络的原因吧。此处不再细说。

  无向图模型(马尔可夫随机场)

  构造有向图模型需要变量之间显式的、很强的约束关系。即首先要有条件概率分布关系,其次还要是可求的。为了达到这一目的,很有可能我们要做很多不切实际的假设。譬如朴素贝叶斯(Naive Bayes)的假设就相当的Naive。如下所示,其假设往往是不成立的。

  那什么是更弱的假设呢?很多时候我们知道两个变量之间一定是相关的,但我们不知道到底是怎么相关的。这时候我们也可以用其相关性来构造概率图模型。相关是不分方向的,此时我们应该选择无向图来表示。

  和相关对应的是独立(实际上是不相关,这里不做区分了),我们可以这样来构造图模型,如果两个节点之间独立,那么没有路使其相连。条件独立即去掉条件中节点后,两节点之间没有路相连。具体可由《PATTERN RECOGNITION and MACHINE LEARNING》中的例子阐述

  因子图

按理来说,无向+有向就全了。为什么还有一类呢?或许严格来说不应该将因子图和上述两类并列的,但我不知道放到哪里去……

因子,从名字中就强调了的两个字一定是其重要组成部分。而上述的两类图表现出的变量之间最终的关系实际上就是将概率分布化为了多个式子的乘积。对于多项式而言,我们有因式分解。譬如在解高次方程的时候,我们非常希望方程能够分解为多个低次方程的乘积。那么,对于概率分布函数而言,我们也希望能够这样做,即

其中,中变量的子集,至于到底能够如何分解是取决于问题的,就好象多项式的分解取决于其具体形式。对于一个实际的问题,如果有以下关系

那么这一个式子的因子图表示如下

  这个例子,我们总结一下因子图是什么。因子图有两类节点,一是变量节点,另一类为因子节点。这两类节点的内部没有边直接相连,变量的概率分布可以因式分解为因子节点的函数的乘积,因子节点的函数变量包括与其直接相连的变量节点。

  三类图各有特点,适用于不同的场合,且这三类图是可以相互转换的。转换方式此处不做描述。

五、举例分析

  HMM,隐马尔可夫模型,是一种有向图模型。这和上述的1阶马尔可夫过程是类似的,不同之处在于我们能够观测到的量不是过程本身,而是与其有一定关系的另一些量。HMM应用很广泛,可以参考隐马尔可夫模型(HMM)攻略 。

  RBM,限制玻尔兹曼机,无向图模型。了解深度学习相关知识的对这个应该很熟悉,看到无向图模型的时候就会发现,都有一个势能函数。这个我不太会,就不介绍了。

  图像去噪,PRML中的一个例子,无向图模型。目的是从观测到的有噪声的图片中恢复出原始图片,做出的假设是观察到的图片像素点和原始图片相关,同时原始图片相邻像素点之间相关。

  LDPC译码,差错控制编码中的例子,因子图。其中Y是观测节点,和变量节点X相关,同时f是因子节点,约束是连接该节点的变量节点模2和为0。(也可以去掉Y,这样就是比较标准的因子图了)

六、推理:和积算法

  本节将以和积算法为例,说明概率图模型下的概率计算过程。和积算法也用在LDPC译码过程中,这一过程也将证实“一些概率上的复杂的计算可以理解为图上的信息传递,这是我们就无需关注太多的复杂表达式了”这一观点。和积算法作用在因子图上,旨在计算边缘概率

其中,表示除之外的变量集合。 具体算法推导过程可以参考PRML的p402。这里仅简单叙述。



  最简单的情况是只有一个变量节点和因子节点,这个时候就不用算了。但实际情况不可能是这样的,但这并不影响我们采用化繁为简的思路。

这里我们做出一个假设是一旦我们断开了一条变量节点和因子节点的边,那么因子图就变成了两个互不连通的因子图。(否则则有环,但实际上很多有环的图采用这一算法也得到了很好的结果)

  考虑图上的信息流动,从因子节点fs到变量节点x以及从变量节点x到因子节点fs。充分利用上述假设带来的结果,最后我们可以推得

  此处不做具体解释,仅说明何为“图上的信息传递”。推理过程和最后的结果都不是很直观,但我们可以理解是因子节点传递给变量节点的信息,这包括除该变量节点之外的所有因子节点传递给校验节点的信息。表示为因子节点接收到的信息的乘积乘上因子节点本身的约束函数后求和。

是变量节点传递给因子节点的信息,这表现为接收到的其他变量节点信息的乘积

  整理自       http://dataunion.org/12187.html

时间: 2024-10-09 10:36:33

概率图模型基础的相关文章

机器学习 —— 概率图模型(学习:综述)

今天Google的机器人AlphaGo获得了围棋对阵李世石的第二场胜利,我也进入到概率图模型学习模块的阶段.Machine Learning 令人着迷也令人畏惧. ——题记 1.基于PGM的学习 ANN网络的拓扑结构往往是类似的.同一套模型以不同的样本进行训练,可以获得不同的结果.PGM可以人为的向网络中添加先验知识,在设计以及分析时有更好的可读性.此外,概率图模型在序列变量的学习上,要优于常规机器学习算法.本质上,基于PGM的学习是在给定Dataset的基础上,对随机变量的分布进行估计. 2.

机器学习 —— 概率图模型(Homework: Exact Inference)

在前三周的作业中,我构造了概率图模型并调用第三方的求解器对器进行了求解,最终获得了每个随机变量的分布(有向图),最大后验分布(双向图).本周作业的主要内容就是自行编写概率图模型的求解器.实际上,从根本上来说求解器并不是必要的.其作用只是求取边缘分布或者MAP,在得到联合CPD后,寻找联合CPD的最大值即可获得MAP,对每个变量进行边缘分布求取即可获得边缘分布.但是,这种简单粗暴的方法效率极其低下,对于MAP求取而言,每次得到新的evidance时都要重新搜索CPD,对于单个变量分布而言,更是对每

想了解概率图模型?你要先理解图论的基本定义与形式

图论一直是数学里十分重要的学科,其以图为研究对象,通常用来描述某些事物之间的某种特定关系.而在机器学习的世界里,我们希望从数据中挖掘出隐含信息或模型.因此,如果我们将图中的结点作为随机变量,连接作为相关性关系,那么我们就能构造出图模型,并期望解决这一问题.本文将为构造该模型提供最基础的概念. 我们都知道机器学习里的决策树,其可以表示为给定特征条件下类的条件概率分布.并且我们知道决策树由结点和有向边组成,结点又由表示特征的内部结点和表示类的叶结点构成.而通常决策树的学习又包括了特征的选择.决策树的

5、概率图模型 Inference-Variable_Elimination

对于概率图模型,整个过程分为三个步骤: Reprentation:如何建模以表示现实世界中的不确定性和各个量之间的关系. Inference:如何从我们建立的模型中去推知我们要求的问题(概率).        Learnig:对于我的数据来说,什么模型是相对正确的? 之前都是对Repretation的学习,从本篇开始进行Inference的学习和总结.

Unity3D游戏开发初探—2.初步了解3D模型基础

一.什么是3D模型? 1.1 3D模型概述 简而言之,3D模型就是三维的.立体的模型,D是英文Dimensions的缩写. 3D模型也可以说是用3Ds MAX建造的立体模型,包括各种建筑.人物.植被.机械等等,比如一个大楼的3D模型图.3D模型也包括玩具和电脑模型领域. 互联网的形态一直以来都是2D模式的,但是随着3D技术的不断进步,在未来的时间里,将会有越来越多的互联网应用以3D的方式呈现给用户,包括网络视讯.电子阅读.网络游戏.虚拟社区.电子商务.远程教育等等.甚至对于旅游业,3D互联网也能

机器学习 —— 概率图模型

概率图模型(PGM)是一种对现实情况进行描述的模型.其核心是条件概率,本质上是利用先验知识,确立一个随机变量之间的关联约束关系,最终达成方便求取条件概率的目的. 1.从现象出发---这个世界都是随机变量 这个世界都是随机变量. 第一,世界是未知的,是有多种可能性的. 第二,世界上一切都是相互联系的. 第三,随机变量是一种映射,把观测到的样本映射成数值的过程叫做随机变量. 上述三条原则给了我们以量化描述世界的手段,我们可以借此把一个抽象的问题变成一个数学问题.并且借助数学手段,发现问题,解决问题.

概率图模型学习笔记(二)贝叶斯网络-语义学与因子分解

概率分布(Distributions) 如图1所示,这是最简单的联合分布案例,姑且称之为学生模型. 图1 其中包含3个变量,分别是:I(学生智力,有0和1两个状态).D(试卷难度,有0和1两个状态).G(成绩等级,有1.2.3三个状态). 表中就是概率的联合分布了,表中随便去掉所有包含某个值的行,就能对分布表进行缩减. 例如可以去掉所有G不为1的行,这样就只剩下了1.4.7.10行,这样他们的概率之和就不为1了,所以可以重新标准化(Renormalization).如图2所示. 图2 反之也可以

机器学习 —— 概率图模型(完结)

经过了一段时间的学习,我终于完成了PGM的所有视频课程,但是编程作业并没有结束.最大的体验是手里有了武器和手段,碰见问题不再束手无策或者需要根据自己的直觉经验来设计解决方法.其实按照目前的科技树而言,三种手段在手基本上就不需要担心任何综合型问题了:1.优化理论及方法; 2.深度学习理论:3.概率图模型.有这三种方法则可以对大部分学术问题进行建模,无论什么层面或是类别的问题,总能往这三种框架里塞.简直水文章之神器. 1.What is PGM PGM 是统计学与机器学习的混合题.其借鉴了统计学的概

机器学习 —— 概率图模型(推理:连续时间模型)

有一种很重要的概率图模型用于SLAM,视觉追踪,识别,传感融合等领域,称为为Template Model. 其特征是每个状态具有多个随机变量,下个状态随机变量的取值受到上个状态的影响.并且随机变量之间的交互属于复制关系.如下图所示: 显然,普通的概率图模型的图是确定的,并不会图的结构不会改变,而这种Template Model的图结构会随着时间的改变自行增殖,故此模型的推理算法需要单独讨论. 1.变未知为已知,图的截断 一种简单的思路是在某个时间点对图模型进行截断,将增殖的PGM变为固定的PGM