问题标签 [bnlearn]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
515 浏览

r - bnlearn 包:意外的 cpdist(预测​​)行为

我遇到了一个超出我理解范围的问题。我制作了一个简单的可重现示例供您测试。

基本上,我创建了一个贝叶斯网络,其中两个高度相关的变量链接在一起。人们会期望,如果其中一个很高,那么另一个也应该很高(因为它们是直接相关的)。

有人可以在这里告诉我为什么它不适用于该lw方法吗?(您可以尝试,ls它似乎工作正常)。

lw代表似然加权

更新:从维护者那里得到了解决方案。在末尾添加以下内容将打印预期的预测:

print (sum(very_low_cause_values[, 1] * attr(very_low_cause_values, "weights")) / sum(attr(very_low_cause_values, "weights")))

0 投票
1 回答
877 浏览

r - 使用“概率”作为证据的 cpdist 预测

我有一个非常简单的问题,有一个简单的可重复示例,该示例与我使用 bnlearn 进行预测的工作有关

以下是帮助内容:

“在离散或有序节点的情况下,也可以提供两个或多个值。在这种情况下,该节点的值将以统一的概率从一组指定值中采样”

当我使用分类变量预测变量的值时,我现在只使用所述变量的某种模态,如示例中的第一个预测。(将证据设置为“是”会使 Cons 获得较高的价值)

但是,如果我想在不确定变量 Cause 的确切模态的情况下预测 Cons,我可以使用我在第二个预测中所做的(只知道概率)吗?这是一种优雅的方式还是有更好的实施方式我不知道?

0 投票
1 回答
347 浏览

r - R bnlearn 包:防止节点有任何父节点

使用包 bnlearn,是否可以将节点设置为不能有任何父节点?我发现使用黑名单功能在技术上是可行的。阻止“A”在包含的测试数据中有任何父母的示例:

但是,我正在处理具有数万个节点的数据,这些节点不应该是彼此的父节点,从而导致黑名单长达数百万行。我本质上是在寻找类似的东西:

黑名单 = data.frame(from = c("*", "A"))

这意味着没有节点可以成为 A 的父节点。这可能吗?如果没有,是否有任何人可以推荐的具有此功能的贝叶斯学习包?

0 投票
1 回答
391 浏览

r - build.whitelist 中的错误:白名单中存在未知节点标签

我对使用 R 还是很陌生(只有几个月),我正在尝试为我的研究(生物学)建立一个贝叶斯网络(BN)。我已经用离散变量完成了所有这些,但是,我现在也在尝试整合连续变量,我知道这可能是一个问题。现在我只是在构建一个 BN 以在MoTBFs包中使用来构建一个混合网络,使用bnlearn包。这是我的数据:

我在下面得到了这个字符串,因为我只针对上述数据中的几个 SNP:

但是,它没有创建正确的弧,因此我尝试创建一个白名单,如下所示(L 是上面子集中未显示的列):

当我尝试添加此白名单时,调用whitebn 函数:

现在错误并不神秘,但白名单中的所有名称都在数据框中。它们出现在白名单中成功创建的 bn 中。我已经尝试将数据作为因素和字符认为必须是某种格式,但同样的错误。我错过了什么?

有没有人有经验或建议的包来构建具有连续父节点和离散子节点的 BN?也许这个MoTBFs包不是我应该使用的。

0 投票
0 回答
34 浏览

r - 是否可以使用包 bnlearn 在 R 中生成最佳父集?

我们可以使用函数“score”计算贝叶斯网络的分数,但我需要计算从节点设置的所有可能父节点的分数。我的意思是如果我有 n 个变量(X1,X2,X3,...,Xn),我想计算 X1 的分数和所有可能的父母集。

0 投票
1 回答
2321 浏览

r - 如何在 R 中使用 bnlearn 增加贝叶斯网络图中的文本大小

我正在尝试用 bnlearn 在 R 中绘制一个 Bsyesian 网络。这是我的 R 代码

上面的代码有效,但图中文本的大小比我预期的要小得多。这里是:

在此处输入图像描述

我认为那是因为我的变量名称很长。在我的真实数据中,变量名甚至更长。这是我的真实数据集的 BN 图:

在此处输入图像描述

有没有办法增加情节中文字的大小?

0 投票
0 回答
674 浏览

r - bnlearn 中的错误:变量有 5 个级别,但我收到错误“变量 arb_review 必须至少有两个级别”。

我的数据由 3 个因子变量组成,每个变量有 5 个级别。 head(swiss_bn,n = 10)

但是当我跑步时

我收到以下错误

0 投票
2 回答
112 浏览

r - 在 R 中拆分图形网络字符串

我有以下来自贝叶斯网络学习算法的字符串(如来自bnlearndeal包):

该字符串定义了变量之间的连接以及连接的方向。括号( )中每一项的第一个变量[...]代表一个节点,后面的所有变量|代表在方向上连接到第一个节点的节点。这些变量由 分隔:

我想将字符串转换为表示每个变量之间连接的 data.frame。它应该如下所示:

0 投票
0 回答
288 浏览

r - R bnlearn 中的贝叶斯推理,所需弧的值,模型列入白名单

我正在运行安装了 bnlearn 包的 Rstudio。

我想要不同父节点对子节点的影响(如果可能,有置信区间)。

我有:
我的数据集,被制成因子(25 个变量,200 个案例)。
我的节点之间所有合法连接的白名单(60 个弧)。

我的问题:当我运行以下代码时:

我的电脑将因内存太少而停滞(它会产生大约 7 gigs 的内存使用,直到我的电脑放弃)。但是,如果我删除我的白名单,它会运行得很好。

所以:

  1. 据我所知,检测与约束的交互(arcs.csv)应该比没有使用更少的内存。事实证明这是错误的。我在这里错过了什么吗?

  2. 我对 bnlearn 为我推荐一个模型完全不感兴趣,我知道它应该是什么样子。我只想用节点之间的 p 值(和置信区间)计算依赖关系。我是否使用了正确的工具?

0 投票
0 回答
611 浏览

r - ** 捕获段错误 *** 地址 0xfffffffc0fcd6248,导致“内存未映射”

大家好,我正在使用 bnlearn 为贝叶斯网络和使用 r studio 开发闪亮的应用程序,我得到一个致命错误,当我使用 R GUI 时,我得到这个错误

我试图获得最新版本的 R 和 rstudio 但它仍然发生

是不是我电脑内存小??或者是其他东西

提前致谢