pgm12
作为 inference 部分的小结,我们这里对 machine learning 里面常见的三个 model 的 inference 问题进行整理,当然很幸运的是他们都存在 tractable 的算法是的我们避免了烦人的 approximate inference。
HMM
常意所说的 HMM 是对离散状态、离散观测情形下的一种 generative model,它包括
- 状态的先验分布
(在下面的推导中我们可以将其藏在转移概率中)
- 转移状态
,这是对
的分布
- 发射概率
,这是对
的分布
这个模型的潜台词是
- Markovian property:
- time-invariance:
因此联合分布的概率为
其中 故可省略。下面我们分别讨论这上面的 message passing、belief update 和一些常见的 inference 问题。
message passing 需要建立一个 cluster graph,当然实际也是一个 clique tree,这个图上的顶点包括 ,这是将
、
和
绑在一起,
;则每个对应的
。于是可以计算前向的消息,
其中 ,后向消息为
其中 。如果仔细分析一下这些消息,我们就会发现,前向消息其实是边际分布
我们可以继续代入后面的消息里面,
如果观测是给定的,即 已知,这获得的将是
。对后向消息而言,
代入后面的消息有
都是常数。如果 是已知的,这将获得
。
对于 MAP 类型的 query,我们需要使用 max-product 算法,此时的前向消息为()
且
后向消息为
且
对 belief update 来说,belief 是 上的边际分布
而对应的 belief update 为
类似可以导出 MAP 类型下的形式。这样,对于 filtering 来说 可以将前向消息归一化,而 prediction 使用的概率
是归一化后的值。smoothing 需要求 ,本质上就是
,这直接使用 MAP 类型两种 message 就能给出两种算法。
LDS
LDS 和 HMM 具有类似的图结构,但是对应的状态和观测均为连续分布,因而常使用 Gaussian 建模。
其中,
另一种描述这种关系的形式是使用 additive noise,
使用的 clique tree 与前面一致,前向消息为
且
其中 and
,后向消息也均为 1。对 MAP 类型的 query,前向消息为
关于 的优化问题是
其解为
这是 的线性函数,因此大致的求解过程是,从
的二次方程中解出
得到一个使用
的线性函数表示的关系,代入后得到
的消息,这仍然是一个二次函数,向后代入即可。最后获得的
的方程解出
后进行回代就解出了其他的隐变量。
beliefs 为
且
类似有对应 belief。
对 filtering 问题,给定 后计算
可使用前向消息,
其中,
且
其中
令 且
则以上计算可用统一的形式表述。
对 prediction 问题,给定 ,
可使用 filtering 的结果计算
MEMM
我们直接对 使用 ME 建模,但是为了引入上下文关系,我们可以将这个 ME 弄成多个
,这也就是说前面一个状态决定了后面使用的 ME 的参数。这样似然函数为
这里的假定有,
- Markovian 性:
,
- ME 假定:
我们使用与 HMM 一致的 cluster graph,前向消息为
后向消息为
max-product message passing 仅仅需要将求和换成 max。belief propagation 中 belief 为
且 belief update 为
其 filtering、prediction 和 smoothing 算法与 HMM 完全一样。
CRF
其假设为
- Markovian 性,与 MEMM 类似;
- invariant factor:对每个 transition,我们引入一个 log-linear 表示,
,其中
是所谓的 feature;
类似前面可以定义消息、belief 等。如果需要计算 log-likelihood,我们需要求 partition function 的函数值,这需要使用前向消息
就能避免指数求和项,而计算梯度的时候,
其中后者需要 ,这正是 belief。
——————
And Sarah saw the son of Hagar the Egyptian, which she had born to Abraham, mocking.
pgm12的更多相关文章
随机推荐
- 【Codeforces 3D】Least Cost Bracket Sequence
Codeforces 3 D 题意:有一个括号序列,其中一些位置是问号,把第\(i\)个问号改成(需要\(a_i\)的代价,把它改成)需要\(b_i\)的代价. 问使得这个括号序列成立所需要的最小代价 ...
- Android 如果布局中有ScrollView和Fragment或者带有滚动条的布局进行嵌套,布局加载完成页面无法定位到顶部的情况
页面无法定位到顶部: 1.ScrollView中嵌套Fragment(Fragment中可能有想ScrollView,ListView带有滚动条的控件). 2.ScrollView嵌套ScrollVi ...
- oa tomcat 代码处理跨域问题
meta标签处理http.https跨域 <!-- 将http请求转成https请求 --> <meta http-equiv="Content-Security-Poli ...
- AIS系统(转)
船舶自动识别系统(Automatic Identification System, 简称AIS系统)由岸基(基站)设施和船载设备共同组成,是一种新型的集网络技术.现代通讯技术.计算机技术.电子信息显示 ...
- GIT 远程仓库:添加远程库、从远程库克隆
到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了. 可是有用过集中式版本控制系统SVN的童鞋会站出来说,这些功能在SVN里早就有了,没看出Gi ...
- 自行实现高性能MVC
wcf虽然功能多.扩展性强但是也面临配置忒多,而且restful的功能相当怪异,并且目前没法移植.asp.net core虽然支持webapi,但是功能也相对繁多.配置复杂.就没有一个能让码农们安安心 ...
- flask seesion组件
一.简介 flask中session组件可分为内置的session组件还有第三方flask-session组件,内置的session组件功能单一,而第三方的flask-sessoin可支持re ...
- LiveCharts文档-3开始-6轴Axes
原文:LiveCharts文档-3开始-6轴Axes LiveCharts文档-3开始-6轴Axes 通常来说,你可以自定义LiveChart里的任何东西,Axes也不例外.下面这幅图展示了Axes. ...
- php WNMP(Windows+Nginx+Mysql+php)配置笔记
下载安装 php 修改nginx 文件 参考云盘实例 eclipse php配置服务ip 127.0.0.1:999 以及项目路径(php解析路径)
- H+ 后台主题UI框架
十年河东,十年河西,莫欺少年穷 学无止境,精益求精 今天得到了一个非常完美的后端管理系统框架:H+ 后台主题UI框架 H+ 后台主题UI框架 H+是一个完全响应式,基于Bootstrap3.3.6最新 ...