-
Notifications
You must be signed in to change notification settings - Fork 43
/
Copy path40Probabilistic Relational Models
88 lines (79 loc) · 6.94 KB
/
40Probabilistic Relational Models
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
概率关系模型
(一)简介
概率关系模型(PRM)是一种具体的建模工具,它提供了一种系统化的方法来合并顶点和边属性,以对一组实体及其关联链接的联合概率分布进行建模。
概率关系模型的好处在于,它通过捕获实体和链接本身之间的概率交互来考虑结构数据的对象关系性质。
因此,它比抛弃这种关系信息的平面模型更好。
概率关系模型有两种开拓性的方法,一种是基于贝叶斯网络的,它考虑关系链是有向的,另一种基于关系马尔可夫网络,考虑关系链是无向的。
虽然两者都适用于链路预测任务,但对于大多数网络,无向模型由于其灵活性似乎更合适。
在概率关系模型中,我们可以在模型中混合异构实体。
在这个模型中完全可以包含其他相关对象,如文章、会议地点和机构。与数据库模式类似,每个对象都可以有属性。
例如,一个人可能具有诸如姓名、所属机构、身份等属性(无论他是学生、员工还是教授);一篇文章可能有发表年份、会议地点;一个研究所可能有位置,一个会议地点可能有研究关键词等属性。
这些实体之间可以存在关系链接:一个人可以通过作者关系与一篇论文联系起来,论文可以通过发布关系与会议地点相关联。
通过这种方式,模型可以包含一个类似于对象关系数据库的完整关系模式。
概率关系模型最初是为关系数据中的属性预测问题而设计的。
对于链接预测任务,对其进行了扩展,使链接成为模型中的首要,从而在关系模式中添加了其他对象,命名为链接对象。
任何链接对象l都与参与关系的实体对象元组(o1,…ok)相关联(在大多数情况下,链接将位于两个实体对象元组之间)。
根据上一段中的示例,链接对象之一可以是涉及两个人的顾问/提问者对象。
该模型还允许链接对象具有属性。现在,考虑一个名为FIFEALLink的对象,它涉及两个人。它有一个名为exist的二进制属性,如果关联对象之间存在链接,该属性为true,否则为false。链接预测任务现在简化为预测这些链接的存在属性的问题。
在模型的训练步骤中,在整个链接图上定义一个单一的概率模型,包括对象标签和对象之间的链接。
对模型参数进行区分性训练,以最大化给定已知属性的(对象)和链接标签的概率。然后使用概率推理应用学习的模型,使用观察到的属性和链接预测和分类链接。
(二)关系网络
1.关系贝叶斯网络
关系贝叶斯网络(RBN)是贝叶斯网络(BN)的关系对等物。
因此,RBN GDM=(VM,EM)的模型图是一个具有一组条件概率分布(CPD)来表示项目类型属性的联合分布的有向无环图。
每个属性X对应的CPD代表P(X|pa(X)),其中pa(X)是网络中X的父节点。
在RBN中,像BN一样,联合概率分布可以根据非循环图结构中的依赖关系进行因式分解。
RBN具有封闭形式的参数估计技术,使得模型参数的学习非常有效。学习过程几乎与BN相同。
2.关系马尔可夫网络
关系马尔可夫网络(RMN)是无向图形模型或马尔可夫网络的关系对应物。
设V表示一组离散随机变量,v是V中变量的一个实例。V的马尔可夫网络通过一个无向依赖网络和一组参数定义了V上的联合分布。
对于图G,如果C(G)是一组团(不一定是最大的),马尔可夫网络定义了分布p(v) =1/Z∏c∈C(G) φc(vc),其中Z是标准规范化因子,vc是团C的顶点集,φC是团势函数。
RMN使用关系团模板的概念指定团,该模板使用关系查询语言指定实例化中的变量元组。
给定模式的特定实例I, RMN M在I中的实体属性上生成一个展开的马尔可夫网络。
展开网络中的派系由派系模板C确定。每个C都有一个派系∈ C(I),所有这些团都与相同的团势φC相关联。
Tasker等人展示了如何从数据中学习固定团集上RMN的参数。在一个具有大量关系属性的大型网络中,网络通常较大,因此精确推断通常不可行。
因此,与RBN一样,RMN也使用信念传播进行推理。
除上述两种模型外,它们还存在其他几种可用于链接预测的关系模型。
这些是几种贝叶斯关系模型,如DAPER(有向无环概率实体关系)、关系依赖网络、参数层次贝叶斯关系模型、非参数层次贝叶斯关系模型和随机关系模型。
(三)举例
贝叶斯网关于节点(随机变量)的条件依赖或条件独立可以从图的角度讨论节点之间的连通与分割。
如果两个节点A,B直接相连,它们之间存在直接依赖关系。若两个节点不是直接相连的,要么A和B之间没有任何联系,即条件独立;要么可以通过其它节点在A,B之间建立起来联系,即条件依赖。两个节点A和B通过第三个节点C间接连接的情况,有3种基本情形。对这三种连接形式,当给定节点C时,可以由贝叶斯网的Markov 性质解释条件依赖的情况
基于评分的算法:运用优化中的贪婪算法,对每个“备选”的网络指定一个表示拟合优度的得分,然后取评分最大的网络。
bnlearn包里边使用评分法的函数只有一个:hc(),使用的是爬山法(Hill-Climbing)。
这个方法的基本思路是:
(1)选择一个网络结构G(通常是空的)
(2)计算G的得分,定义score=score(G)
(3)取maxscore=score(G)
(4)随着maxscore的增加,重复下面的步骤: (i)对边的增加,删减或颠倒操作不会导致一个有环的网络。 (ii)计算修正的网络,更新maxscore
(5)最后返回一个有向图
常用的评分方法有:
likelihood (lik)/log-likelihood (loglik) Akaike (aic) 和 Bayesian (bic) Information Criterion Bayesian Dirichlet equivalent score (bde)
K2 score (k2), 另一种 Dirichlet 后验密度
下面看hc( )的学习效果:
marks.bn1 <- hc(marks)
marks.bn1
##
## Bayesian network learned via Score-based methods
##
## model:
## [MECH][VECT|MECH][ALG|MECH:VECT][ANL|ALG][STAT|ALG:ANL]
## nodes: 5
## arcs: 6
## undirected arcs: 0
## directed arcs: 6
## average markov blanket size: 2.40
## average neighbourhood size: 2.40
## average branching factor: 1.20
##
## learning algorithm: Hill-Climbing
## score:
## Bayesian Information Criterion (Gaussian)
## penalization coefficient: 2.239
## tests used in the learning procedure: 34
## optimized: TRUE
graphviz.plot(marks.bn1, layout = "fdp")
(四)后记
由于经典关系数据库处理不了具有概率的数据, 而引入概率关系模型后这一问题迎刃而解。
在今后的研究中应该注重概率关系模型的应用而且实际问题中的概率计算公式选择更为显得重要。
(五)参考文献
(1)Social Network Data__ Analytics