如何用bnlearn表示领域知识信息

如何用bnlearn表示领域知识信息,r,directed-acyclic-graphs,bayesian-networks,causality,bnlearn,R,Directed Acyclic Graphs,Bayesian Networks,Causality,Bnlearn,我正在使用R软件包学习动态贝叶斯网络模型。为此,我将遵循他们以6层的形式施加某些约束(本文中的表1): 在本例中,由于性别和年龄处于顶层,因此它们不会受到利鲁唑摄入量的影响,而是影响(或有因果关系)利鲁唑摄入量并最终影响生存。这保证了网络中的非循环性,也就是说,变量之间没有无终止的反馈循环 我的问题是,我们如何使用R软件包对这些先验知识建模bnlearn您可以通过几种方式向结构学习添加领域知识或约束 如果要使用域知识指定网络结构和参数,可以使用custom.fit手动构建网络 如果要根据数据

我正在使用R软件包学习动态贝叶斯网络模型。为此,我将遵循他们以6层的形式施加某些约束(本文中的表1):

在本例中,由于
性别
年龄
处于顶层,因此它们不会受到
利鲁唑摄入量
的影响,而是影响(或有因果关系)
利鲁唑摄入量
并最终影响
生存
。这保证了网络中的非循环性,也就是说,变量之间没有无终止的反馈循环


我的问题是,我们如何使用R软件包对这些先验知识建模
bnlearn

您可以通过几种方式向结构学习添加领域知识或约束


  • 如果要使用域知识指定网络结构和参数,可以使用
    custom.fit
    手动构建网络

  • 如果要根据数据估计BN的结构,则可以使用结构学习算法中的
    白名单
    黑名单
    参数对边缘方向和边缘存在施加约束

  • 在结构学习中,先验知识可以放在边缘上(例如,
    prior=“cs”
    ,其中“如果先验知识是cs,beta是一个数据框,其中列from、to和prob指定了一组弧的先验概率。其余弧的概率分布是一致的。”)


如果要使用领域知识指定网络结构和参数,可以使用
custom.fit
手动构建网络。如果您想根据数据估计结构,则可以使用结构学习算法中的
白名单
黑名单
参数对边缘方向和存在施加约束。感谢@user20650的回答,如果您想放置答案,我可以将其标记为已回答
1   Gender, age at ALS onset    
2   Onset site, onset delta (start of the trial - onset)    
3   Riluzole intake, placebo/treatment  
4   Variables at time t-1   
5   Variables at time t, TSO    
6   Survival