需要帮助绘制校准图,找到 brier 分数并绘制贝叶斯网络的分布

问题描述

我需要你的帮助。所以,这是这个的代码。数据来自 Facebook 社交联系指数 (SCI),我正在尝试预测区域之间的 SCI。因此,到目前为止,我已经使用 R 中的库 bnlearn 创建了贝叶斯网络模型,并且我还从一个特征(总体)中学习了先验概率。我需要帮助绘制校准图、概率分布图、brier 分数图等内容。但是,我不知道如何进行,因为 bn.pred 有四个级别(因为我对数据使用了离散化间隔(用于将连续变量转换为分类变量)),并且无论我在哪里尝试将其与测试数据进行比较,我都是遇到一些错误,而且我不会去任何地方。我很感激这方面的帮助。

代码如下:

# load the relevant libraries
library(bnlearn)
library(compiler)

# load the dataset

net = tabu(train)

bn = bn.fit(net,train)

write.net("C:\\Users\\rukmani\\Downloads\\10.net",bn)



nationprob = sumnations / sumallnations
cpt = coef(bn[["UserLocation"]])
cpt[1:length(EUROPE)] = nationprob
bn[["UserLocation"]] = cpt
cpt = coef(bn[["FriendsLocation"]])
cpt[1:length(EUROPE)] = nationprob
bn[["FriendsLocation"]] = cpt



write.net("smallmod.net",bn)

bn.pred = predict(bn,node = "scaledsci",data = test,prob = TRUE) 
tabl1 = table(bn.pred,test[,"scaledsci"])
mn = plot(mean(bn.pred == test$scaledsci))

Data

解决方法

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

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

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