为 catnetwork 对象解释“catnet”包的 cnProb 输出

问题描述

我是贝叶斯网络的新手。我试图在 R 中使用 catnet 包,但是,我很难理解 cnProb() 函数输出。例如,这是一个新的 catnetwork 对象:

cnet_test <- cnNew(
  nodes = c("a","b","c"),cats = list(c("1","2"),c("1","2")),parents = list(NULL,c(1),c(1,2)))

这应该会导致这样的网络,对吗?我假设这里的 parents = 参数意味着节点 X 是 ...

的父节点

enter image description here

但是,当对这个 catnet 对象执行 cnProb() 时,它返回以下内容

$a
   1    2 
0.19 0.81 
$b
  a 1     2    
A 1 0.396 0.604
B 2 0.611 0.389
$c
  a b 1     2    
A 1 1 0.519 0.481
B 1 2 0.878 0.122
A 2 1 0.666 0.334
B 2 2 0.89  0.11 

这似乎与网络图完全相反。根据文档,cnprob:

返回指定节点的条件概率列表 catNetwork 对象的哪个参数。节点概率是 按以下格式报告。首先,节点名称及其父节点是 给定,则对应于所有的概率值列表 父类别(括号中)和节点的组合 类别。例如,一个节点的条件概率 两个父节点,这样节点和它的父节点都有三个 类别,由 27 个值给出,每个值对应 333 组合。

我想知道我们究竟如何解释 cnProb 的输出?或者我对cnNew的父母参数的解释是错误的。任何信息都会有所帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)