使用 bnlearn 包,我可以通过将数据集作为参数传递来学习 BN 的结构,例如:
bn1 <- blnearn :: hc (dataset)
或者我必须传递一些边缘作为先验知识,例如:
wl = data.frame (from = c ("A", ">B"), to = c ("B", "C")) BN1 <- blnearn :: HC (Datase, White List = WL)
我的意思是bnlearn算法能够仅从数据中学习结构,或者总是需要一些先验知识的帮助。
bnlearn具有结构学习和手动创建网络中的结构功能。
基本的结构学习就像你想象的一样简单:
bn1 <- hc(x = dataset)
如果您对要包含的结构有先验知识,则可以使用白名单或黑名单参数。但这是可选的。
对于初学者,我推荐这个关于R中贝叶斯网络的介绍性教程 哈辛托·阿里亚斯(Jacinto Arias)包括一个关于结构学习的例子。