K2算法是近二十年来贝叶斯网络中最著名的基于分数的算法。 具体来说,它以 DAG 的形式有效地恢复了底层分布。 详情请参考Cooper发表的论文[1] 请从“ControlCentor.m”开始,这里有一个简单的例子来理解如何使用我们的代码。
如果有任何问题,请告诉我,我会尽快帮助您。
我用mex编程重写了K2,如果你知道怎么编译,请试试K2.c,因为这段代码可以处理1000个变量的变量,效率很高。 它在 32 位和 64 位 linux 下进行了测试。
[1] G. Cooper 和 E. Herskovitz,从数据中归纳概率网络的贝叶斯方法,机器学习9 (1992), 330–347。
如果您使用此代码,请引用我们的论文:
Bielza, C., Li, G. & Larrañaga, P. (2011)。 贝叶斯网络的多维分类。 国际近似推理杂志,第52卷,第705-7