pgm3
这部分主要讨论了一些概念性的东西。一个是常用的 local probabilistic models,一个是如何用 template-based representation。
这部分主要是一些概念,特别是对 BN 在某些特殊场所下 d-sep 概念的推广。
这里需要区分一点的是 context 与“给定某个随机变量”的细微差别,context 指某些变量的具体赋值,比如 ,而给定仅仅表明
的值我们知道,至于是 0 还是 1 天知道。从某个角度来说如果对任意的
赋值,我们都有同一个 context-specific CPD,那就等价于原先的 CPD 了。
另外一点是 causal relationship 对设计网络的好处在于,如果 BN 反应了因果关系,那么得到的网络往往具有较多的独立性,也就意味着我们有更少的边,更简单的模型,更少的参数,等等。否则就会导致模型变得复杂起来。
这部分主要介绍了使用 template 简化表示的形式,并讨论了使用 PGM 描述问题上的一些局限性。
这部分主要搞清楚 plate model,当然有一些特殊的例子(比如做时序模型,一般就会用 2-slice BN),这里为了把整个逻辑 formulate 得更加数学化(形式化,精确化),书里面用了不少符号看起来比较累。其实就是说原先的图上的顶点表示随机变量,但现在就对应的是一类随机变量了,那怎么办呢,没关系,我们称之为 template variable/attribute,并且定义了所谓的 object skeleton 这个所有可能的范围。这时 plate 里面画的“变量”其实代表了这个 template variable 的 index,而如果处于几个 plate 里面相当于有几个 index。但是 plate 这种搞法就出现了一个问题,由于是“cross product”意味着任意乘积空间里面的随机变量组合都是“合法”的,在某些情况这就会引入很多不必要的“边”。因此我们需要从这里面取子集出来,这每个子集就是我们常说的“关系”,通过所谓的 guard 定义的 contingent dependency 就是为了把符合关系的边加上而去掉不符合关系的边。
对于无向图模型,在 Gibbs distribution 下我们常用的 feature 也会被推广到 template feature 上:feature 是 r.v.s 的函数,而这里就是 template variables 的函数了。
来自 video 上的一些补充
有的内容还是听课稍微清楚一些,不过课程上面也有书上不少东西没有被 cover 到。
一个比较是关于什么时候使用 shared parameter 什么时候使用 specific 的 parameter。特别是用了 template-based representation 之后,我们很容易想到某些地方的参数可以 share,某些时候我们需要做额外的假定,比如 HMM 之类里面通过一阶 Markov 性简化到前后状态的转移后,我们很容易想到使用 plate 来简化这个图模型,这就导致我们想到使用 shared transition matrix 和 emission probability,这意味着 time-invariant assumption。
另外有一些前面的知识和概念上的补充。比如 minimal I-map 和 perfect I-map:前者只要求没有多余的边,往往不能很好的刻画给定的 independency set/给定的分布(存在更多边的图,这样 independency assertions 变少了,但是仍然 compatible to 给定的 independency assertions);而某些 independence set 又没有 perfect I-map(参考 MRF 和 BN 存在的表达上的差异那块)。
video 上至此 representation 上的内容就结束了。
——————
But Abimelech had not come near her: and he said, LORD, will you slay also a righteous nation?
pgm3的更多相关文章
- sqoop安装与使用
sqoop简介 sqoop名字是怎么来的?Sqoop: SQL-to-Hadoop 连接传统数据库和hadoop的桥梁,把关系型数据库的数据导入到hadoop系统(如HDFS,HBASE和hive中) ...
- [小北De编程手记] : Lesson 02 - Selenium For C# 之 核心对象
从这一篇开始,开始正式的介绍Selenium 以及相关的组件,本文的将讨论如下问题: Selenium基本的概念以及在企业化测试框架中的位置 Selenium核心对象(浏览器驱动) Web Drive ...
- 《Scala入坑笔记》缘起 3天就搞了一个 hello world
有小伙伴向我咨询 play framework 的问题,我就想了解一下 play framework ,按照官方的文档,要使用 SBT 安装,就掉进了 SBT 的坑. 第一坑:国外仓库太慢 安装完成后 ...
- Centos 7.0_64bit 下安装 Zabbix server 3.0服务器的安装
一.关闭selinux 修改配置文件/ etc / selinux / config,将SELINU置为禁用(disabled) vim /etc/selinux/config # This ...
随机推荐
- jqgrid 启用键盘操作bindKeys
给jqgrid启用键盘操作,代码如下: // the bindKeys() 启用键盘操作 $("#jqGrid").jqGrid('bindKeys'); 启动后,比如可以使用上下 ...
- Eclipse-安装Spring Tool Suit 插件
登录http://spring.io/tools/sts/all 下载所需的Spring Tool Suit安装包 我用的是springsource-tool-suite-3.6.1.RELEASE- ...
- 怎样让oracle实验本在不做实验时性能提升——win7下举例
怎样让oracle实验本在不做实验时性能提升--win7下举例 型号:ThinkPad E431 系统:WIN7 实验使用的笔记本不使用数据库时.建议将oracle关闭,使其释放占用的资源. orac ...
- Docker:一个装应用的容器
一:简介:你是否经历过“我本地运行没问题啊!““哪个哥们有写死循环了““完了,服务器撑不住了“等等问题,docker就是这么帮你解决问题的工具,它可以帮你把web应用自动化打包和发布,在服务型环境下进 ...
- 常用数据库驱动名称以及URL
oracle: 驱动类的名字:oracle.jdbc.driver.OracleDriver URL:jdbc:oracle:thin:@dbip:port:databasename Mysql: 驱 ...
- ABAP error:CONVT_NO_NUMBER
今天写了个接口,传入数据到SAP,结果接收后在报表展示时直接报错. 检查后发现数据转换出错,接收到的数据格式混乱. 最后检查了所有地方发现,源系统传入的数据长度为9个字节,但是自己的接收程序,定义数据 ...
- Java基础—面向对象
一.什么叫面向对象 万物皆对象(待更正) 二.面向对象三大特征 抽象:把一类对象共同特征进行抽取构造类的过程,包括两种抽象:第一种是数据抽象,也就是对象的属性.第二种是过程抽象,也就是对象的行为 封装 ...
- flask使用sqlit3的两种方式
方式一:raw_sql import sqlite3 from flask import Flask, request, jsonify app = Flask(__name__) DATABASE_ ...
- SSISDB4:当前正在运行的Package及其Executable
SSISDB 系列随笔汇总: SSISDB1:使用SSISDB管理Package SSISDB2:SSIS工程的操作实例 SSISDB3:Package的执行实例 SSISDB4:当前正在运行的Pac ...
- 事务特性,事务的隔离级别,并发事务可能出现的问题,spring事务 数据库锁
1.0 事务特性(ACID) Atomicity:原子性,一个事务不可以被拆分 Consistency:一致性,在事务执行前数据库的数据处于正确的状态,而事务执行完成后数据库的数据还是处于正确的状态, ...