title: 斯坦福-随机图模型-week2.1
tags: note
notebook: 6- 英文课程-9-Probabilistic Graphical Models 1: Representation
---
斯坦福-随机图模型-week2.1
plate model 模板模型
4. Plate 模型
时序模板模型,通常还有一类情况需要模板模型:问题中有多个相同类型的不同对象,希望建立模板对这些对象进行统一考虑。
4.1 硬币采样例子
如何理解 Plate 模型的机制,以最简单的硬币采样为例 :
这里写图片描述
这是从单个硬币采样的一系列硬币投掷结果的 Plate 模型,模型是对“投掷这个硬币”这个事件的多次重复(repetition)。描述从同一分布中多次独立生成随机变量的机制。这些随机变量的值域相同;方框表示这些随机变量产生于同一个分布,故产生机制相同,即 Outcome 对每个 tk 有相同的条件概率分布。方框隐含一个方框参数 θ 来刻画这种产生机制,与这是第几次投掷即 tk 无关。
4.2 模型步骤例讲
4.2.1 步骤解析
对象(object): 将问题世界看作由一组对象构成;
类(class): 类是对象的一个特定的集合,简单情况下可将对象划分为一组不相交的类。
??原书对 Plate 模型概述如下5(列出提供参考,可忽略)
A plate model provides a language for encoding models with repeated structure and shared parameters. As in the case of DBNs, the models are represented at the template level; given a particular set of objects, they can then be instantiated to induce a ground Bayesian network over the random variables induced by these objects. Because there are infinitely many sets of objects, this template can induce an infinite set of ground networks.
上述粉色文字解释了 Plate 模型思路:给定对象的一个特定集合,通过实例化它们,导出的一些随机变量。并在这些随机变量上导出一个基础贝叶斯网。具体实施分为以下步骤:
Step 1:明确问题世界中对象集类;
Step 2:实例化类来导出随机变量;
Step 3:分别明确这些随机变量的父节点集;
Step 4:通过父节点在子节点上的条件概率分布(CPD)定义基础贝叶斯网络。
4.2.2 简单成绩例子
这些步骤后文会给出形式化表示,这里先结合例子理解步骤的含义。简单成绩例子:学生的成绩 G(S) 决定于该学生的智商 I(S)。
这里写图片描述
Step 1(对象集类): 所有学生 si 组成学生类 S;
Step 2(随机变量): 学生的智商 I(S),学生的成绩 G(S) 由 S 对 I,G 实例化得到;
Step 3(变量父节点集):
学生的成绩 G(S) 决定于该学生的智商,即 PaG={I(S)};
学生的智商本身就是贝叶斯网中的父节点,即 PaG=?;
Step 4(条件概率分布): P(G(S)|I(S)),即图中右边导出的基础贝叶斯网的结构参数。
4.2.3 硬币投掷例子
Step 1(对象集类): 投掷行为 T,tk 表示第 k 次投掷;
Step 2(随机变量): 投掷结果 Outcome(T);
Step 3(变量父节点集): 例中 O 是网络中单一节点;
Step 4(条件概率分布): P(O(T)) 表示投掷该硬币所产生的结果的分布。
4.3 模型形式构架
??前文的时序模型中,模板变量基于时间采集。
??这里 Plate 模型中,模板变量基于对象采集。
4.3.1 形式化表示
基于前文对于模型步骤的理解,这里给出形式化表述。
模型指标:客观世界中的对象集合类型(objects types) Ui,可以被不同 Plate 使用;
模板属性:或称模板变量,它有一组模型指标作为参数(is indexed by a bunch of objects types),表示为 A(U1,...,Uk) ;
??前文粉色标记出的模型步骤,形式化表述如下:
对于有属性 A(U1,...,Uk) 的 Plate,Plate 模型定义了一个该 Plate 父节点集合 (template parents) 为 PaA={B1(UA1),…,Bm(UAm)},并定义该 Plate 的模板 CPD P(A|PaA)。
??举例(成绩模板): 构建一个关于学生(Student, s)和课程(Course, c)的成绩模板,模板属性 Grade(S,C) 的参数为模型指标 S,C ,分别可以用学生类中某个学生,课程类中某门课程来实例化。
即 Grade 可以对不同的 (s,c) 实例化,从而生成多个随机变量 Grade(s,c)。
??这个成绩模板只是一个模板,但模型由多个模板组成。现在构建成绩模型。
?
举例(成绩模型): 如图模型由两个模型指标 S,C,和三个模板属性 Grade(S,C),Intelligence(S),Difficulty(C)。模板属性间关系为 D→G←I。
4.3.2 图形化表示
Plate 模型由多个模板组成。每一个 Plate 有其对应的一个模型指标,模型指标根据模型结构决定模板属性。图形化表示易于理解,如成绩模型中的图示:
方框对应模型指标(对象集类),在右下角标明。这就是 Plate;
节点对应模板属性(模板变量),放入其参数指标对应 Plate 中;
方框间可嵌套重叠:若一个变量被置于多个方框中,则该变量依赖于这多个模型指标;
节点间的边表示模板属性间的依赖关系,但这还不是贝叶斯网络。模板属性实例化之后将展开为基础贝叶斯网。
注:“模板属性”和“模板变量”都指模板属性,但后文“变量”是“模板属性”实例化后得到的,是基础贝叶斯网中的节点。
??需要注意以下几处的理解:
1)模板的 CPD
每个模板确定了一种模板的 CPD,可以重复应用于 any copy of 模板属性 A。这些 copies of 模板属性是其模型指标 U=(U1,...,Uk) 的实例化(concrete instantiations of indices),即 A(u1,…,uk)。
2)模板间 CPD
对于模板属性 A(U1,...,Uk) 和其父模板属性 B1(UA1),…,Bm(UAm),它们之间的依赖关系由模板间 CPD P(A|B1,...Bm) 给出。
3)转换为贝叶斯网表示:每一个模板属性实例化之后即为变量,设置为节点,变量间关系由模板间 CPD 决定。设模板属性 A 实例化后得到 ak,Bi 实例化后得到 bik,m 个 bik 的每个组合(i=1,2,…,m)都是 ak 的一组父节点,ak 与每组父节点间边都由模板间 CPD P(A|B1,...Bm) 决定。
4)父节点不可以有子节点没有的参数(we cannot have an index in the parent that doesn’t appear in the child)
比如 Honors(S) 依赖于 Grade(S,C):但 H 不是 G 的 CPD,Plate 模型无法表示。
比如孩子的 Phenotype(Person) 依赖于父母的 Phenotype(Person):但 Phenotype 取决于一个人本身的 Genotype,即模型明确来讲是 Phenotype(Genotype,Person) 依赖于 Phenotype(Person),同样不是一个标准 CPD,无法用 Plate 模型。
4.3 三种 Plate 模型
??针对不同情形,不同 Plate 可通过嵌套或重叠来迎合模板属性对于模型指标的依赖关系。
??参阅原书翻译版 Page 213,有三种 plate 模型。考虑学生例子:S,C,D,I,G 分别为 Student,Course,Difficulty,Intelligence 和 Grade。下图为学生例子中三种 Plate 模型6:
这里写图片描述
(a): 单一 plate(Single plate): 多个来自同一分布的独立采样,详见这里;
(b): 嵌套 plate(Nested plates): 多门课程,每门课程有学生的一个分离集;
(c): 相交 plate(Intersecting plates): 有重叠(overlapping)的学生集的多门课程,详见这里;
4.4 集体推理中的应用
Plate 模型在相互依赖的复杂(intricate)网络中捕获简洁明了的关联(correlated)结构,使得我们在不同孤立个体对象(individuals in isolation)之间获得了更多有价值的信息。对于横跨多个对象的编码来说支持集体推理(collective inferrence)。
假设有多个不同难度的课程,多个不同智力的学生,那么显然在更加难的课程上拿到 A 的学生智商更高,智商低的学生拿到 A 的课程难度更低等。
4.5 Plate 模型总结
??Plate 模型是对象-关系领域的有向概率图模型基于模板的表示。模型指标来源于对象集类型,模板属性是一些对象集的性质。
模板在每一个模板属性上定义,模板间的关系由 Plate 的嵌套或重叠表示,这是通过 Plate 的模板属性共享部分模型指标实现的。
无限大贝叶斯网:Plate 模型描述了每个子节点依赖于不同的父节点集合的关系,是针对贝叶斯网络的一个无限模板。
重复结构和参数:类似 Temporal 模型,Plate 模型也编码了重复结构(模板属性)和共享参数(模板间 CPD 关系);
集体推理:对于横跨多个对象的编码来说支持集体推理(collective inferrence)
模型限制:父模板属性的参数集 ? 子模板属性参数集。且不能描述时序模型。
原文地址:https://www.cnblogs.com/zangzelin/p/8543876.html