【学术研究】PGM(probability graph model)研究与应用

来源:互联网 发布:类似惠头条的软件 编辑:程序博客网 时间:2024/06/11 13:03

在知乎上大家对有没有必要系统学习概率图模型(PGM,graphical model)进行了讨论(https://www.zhihu.com/question/23255632),也许是概率图模型覆盖的知识面太广,也或者是PGM的学习曲线较长,所以大家对是否有必要系统学习PGM各执己见。以下摘抄自谢澎涛(CMU 机器学习博士,http://www.cs.cmu.edu/~pengtaox/)的回答,供学习参考。

PGM大致分为两种:1、directed graphical model (贝叶斯网络);2、undirected graphical model(马尔可夫随机场)。概率图模型在实际应用中非常广泛,比如隐马尔可夫模型(HMM)是语音识别的支柱模型;高斯混合模型(GMM)及其变种K-means是数据聚类的最基本模型;条件随机场(CRF)广泛应用在自然语音处理(词性标注、命名实体识别),lsing 模型等。机器学习的一个核心任务是从观测到的数据中挖掘出隐含的知识,而概率图模型是实现这一任务的一种优雅的手段。

PGM巧妙地集合了图论和概率论。1、从图论的角度,PGM是一个图,包含边和点。结点可以分为两类:隐含结点和观测结点。边可以是有向的或者无向的。2、从概率论的角度,PGM是一个概率分布,图中的结点对应于随机变量,边对应与随机变量的依赖(dependency)或者相关性(correlation)。

给定一个实际问题,通常会观测到一些数据,并希望从观测到的数据中挖掘出隐含的数据知识。使用PGM实现,构建一个图,用观测结点表示观测到的数据,用隐含结点表示潜在的知识,用边来描述知识与数据之间的关系,最后获得一个概率分布。在给定概率分布之后,有两个任务:inference和learning。inference过程是给定观测结点,推断隐含结点的后验分布;learning过程是学习这个概率分布的参数。不管数据有多复杂,处理手段都是构建一个图,定义一个概率分布,然后进行inference和learning。

另外,还谢博士还推荐了 CMU Eric Xing 每年开设的 10708 PGM课程:http://www.cs.cmu.edu/~epxing/Class/10708-14/lecture.html。包含PGM中最基本、最核心的内容,也讲述了很多advanced topic。值得学习。


PGM 有三个问题:表示 representation,推理 inference, 学习 learning


1、表示 representation 

   1.1 directed graph 贝叶斯网络

   1.2 undirected graph 马尔可夫网络


2、推理 inference

    2.1 精准推理算法(exact algorithm) 能够计算查询变量的边缘分布或者条件分布的精准值。

      2.1.1 变量消去算法/变分方法

      2.1.2 团树算法--信念传播

    2.2 基于优化的推理理论,将图模型的推断形式化为优化问题,通过松弛优化问题的约束条件或者调整优化的目标函数,算法能够在较低的时间复杂度下获得原问题的近似解。

      2.2.1 环路信念传播 loopy belief propagation LBP

      2.2.2 平均场近似 mean field 

       基于平均场逼近(mean field approximation)的变分推理,这种方法通常用于由exponential family distribution所组成的贝叶斯网络,EM算法属于该类型。

2.3 基于抽样方法的推理

      当精准推理计算困难时,抽样方法提供了计算随机变量边缘(条件)分布和其他函数的另一种方法,抽样的方法有:拒绝性采样、重要性采样、粒子滤波、马尔可夫链蒙塔卡萝MCMC算法。采样有三方面的优点:1、它提供了一种有严谨数据基础的方法来逼近概率计算中经常出现的积分;2.采样过程最终获得是整个联合分布的样本集,而不仅仅是对某些参数或者变量值的最优估计。3、它的渐近性可以被严格证明。

    2.3.1 拒绝性采样

    2.3.2 重要性采样

    2.3.3 MCMC 蒙特卡罗采样

 蒙特卡罗采样(Monte Carlo sampling)。与基于优化的方法不同,蒙特卡罗方法通过对概率模型的随机模拟运行来收集样本,然后通过手机到的样本来估计变量的统计特性。常用的采样方法:gibbs sampling、Metropolis-Hasting sampling(M-H)、slice sampling, hamiltoian mote carlo

3、学习 learning

学习是希望能够从观测数据中获得模型的参数甚至结构,分为如下几个情况:贝叶斯网络或马尔可夫网络;所有的变量都可观测的模型或只可观测部分变量的模型。结构已知或者结构未知的模型。在参数估计的不同准则中,有一种常用的估计方法是最大似然估计(maximum likelihood estimation MLE),即在参数空间中寻找使观测数据的似然最大的参数;另外一种为最大后验(maximum a posteriori,MAP)估计方法寻找参数空间中后验概率最大的参数。

3.1  known structure,full observability;

3.2  known structure,partial observability(EM,gradient ascent 梯度)

    对某变量的缺失,会有两种情况:1、部分缺失;2、完全缺失(隐变量)。主要讨论模型含有隐变量的情况,对于贝叶斯网络,最大化数据的似然函数的问题,一般有如下两种参数估计的方法:
3.2.1 梯度上升算法:
     优化非线性目标函数的标准方法。算法迭代的每一步计算数据的似然关于模型参数的偏导,并在梯度方向上升,由于似然函数有界,算法将收敛于一个局部最优解。
 3.2.2 期望最大化算法EM算法

3.3 unknown structure,full observability


我会从以下两个方面展开对PGM的学习和研究:

一、PGM是什么,PGM的工作机制,哪些机器学习的算法模型可以归结为PGM,进行汇总学习。

二、现在学术研究中如何使用PGM来解决实际问题。




原创粉丝点击