概率图模型学习笔记

参考文献

1.概率图模型
2.概率图模型学习笔记:HMM、MEMM、CRF
3.Hulu – 《百面机器学习》
4.李航 – 《统计学习方法》
5.周志华 --《机器学习》
6.知乎博客
7.邱锡鹏–《神经网络与深度学习》
8.概率图模型理解
9.谈一谈工程中最为常用的概率图模型


概率图模型(PGM),简称图模型(GM),
是指一种用图结构来描述多元随机变量之间条件独立关系的概率模型。

常见图模型结构
概率图模型学习笔记_第1张图片
对于一个K维随机向量来说,它的联合概率为高维空间中的分布,一般难以直接建模。一种有效减少参数量的方法是独立性假设。 K 维随机向量的联合概率分解为 K 个条件概率的乘积。

当概率模型中的变量数量比较多时,其条件依赖关系也比较复杂。我们可以使用图结构的方式将概率模型可视化,以一种直观、简单的方式描述随机变量之间的条件独立性的性质,并可以将一个复杂的联合概率模型分解为一些简单条件概率模型的组合。

概率图模型学习笔记_第2张图片



一、表示问题

图的概念
一个图由结点(nodes)(也被称为端点(vertices))和它们之间的链接(links)(也被称为边(edges)或弧( arcs))组成。在概率图模型中,每个结点表示一个或一组随机变量,链接则表示这些变量之间的概率关系。

1.有向图模型(贝叶斯网络)
概率图模型学习笔记_第3张图片
概率图模型学习笔记_第4张图片
有关概念:
【1】条件独立性:在贝叶斯网络中,如果两个节点是直接连接的,它们肯定是非条件独立的,是直接因果关系。
【2】局部马尔可夫性质:对一个更一般的贝叶斯网络,其局部马尔可夫性质为:每个随机变量在给定父节点的情况下,条件独立于它的非后代节点。

常见的有向图模型:
朴素贝叶斯分类器(NB)、隐马尔可夫模型(HMM)、深度信念网络(DBN)等。

(1).朴素贝叶斯分类器
概率图模型学习笔记_第5张图片
(2).隐马尔科夫模型
概率图模型学习笔记_第6张图片


2.无向图模型(马尔科夫随机场MRF)
概率图模型学习笔记_第7张图片
概率图模型学习笔记_第8张图片
有关概念:
【1】团:无向图中的一个全连通子图,称为团;
【2】最大团:在所有团中,如果一个团不能被其它的团包含,这个团就是一个最大团;
【3】 由于无向图模型并不提供一个变量的拓扑顺序,因此无法用链式法则对p(x)进行逐一分解。无向图模型的联合概率一般以全连通子图为单位进行分解;
【4】因子分解: 无向图中的的联合概率可以分解为一系列定义在最大团上的非负函数的乘积形式;
概率图模型学习笔记_第9张图片
常见的无向图模型:
最大熵模型、条件随机场、玻尔兹曼机、受限玻尔兹曼机等。

(1).最大熵模型

(2).条件随机场


有向图和无向图之间的转化

无向图模型可以表示有向图模型无法表示的一些依赖关系,比如循环依赖;
但它不能表示有向图模型能够表示的某些关系,比如因果关系。
有向图转无向图的过程称为过程称为道德化(Moralization)。转换后的无向图称为道德图(Moral Graph)。道德化的名称来源是:有共同儿子的父节点都必须结婚(即有连边)
概率图模型学习笔记_第10张图片



二、推断问题

1.推断的定义:
在图模型中, 推断(inference)是指在观测到部分变量e = {e1, e2, · · · , em}时,计算其它变量的某个子集 q = {q1, q2, · · · , qn}的后验概率 p(q|e)。

概率图模型学习笔记_第11张图片

2.推断方法分类:
精确推断:【1】变量消除法;【2】信念传播法;
【1】变量消除法
核心思想就是利用动态规划的思想,每次消除一个变量,来减少计算边际分布的计算复杂度,称为变量消除法(variable elimination algorithm)。随着图模型规模的增长,变量消除法的收益越大。
变量消除法的一个缺点是在计算多个边际分布时存在很多重复的计算。
【2】信念传播法
该方法是将变量消除法中的和积(Sum-Product)操作看作是消息,并保存起来,这样可以节省大量的计算资源。
本节以无向图为例来介绍信念传播,但其同样适用于有向图。

近似推断:【1】环路信念传播;【2】变分法;【3】采样法

关于采样法的介绍,详见单独的一篇关于采样的整理文章。



四、学习问题(网络参数估计)

4.1 不含隐变量的参数估计
【1】有向图模型—— 在有向图模型中,所有变量x的联合概率分布可以分解为每个随机变量xk 的局部条件概率p(xk|xπk, θk)的连乘形式;
【2】无向图模型—— 在无向图模型中,所有变量x的联合概率分布可以分解为定义在最大团上的势能函数的连乘形式;

4.2 含隐变量的参数估计
如果图模型中包含隐变量,即有部分变量是不可观测的,就需要用 EM算法进行参数估计。

你可能感兴趣的:(机器学习,数据挖掘(DM))