Over several years, I have developed open-source machine learning software for inductively learning various forms of Bayesian networks from data, and for classification using BNs.

You can download it here, with instructions on how to use it.

Features include:

  • Learn Naive Bayes, Tree-Augmented Naive Bayes (TAN), General Bayesian Networks, and BN-Augmented Naive Bayes structures
  • Multiple scoring metrics, including the K2 metric, BDeu and CMI
  • Visualisation of structures using GraphViz (DOT and DOTTY)
  • Supplementary code to work with data from other formats, to perform cross-validation, to construct learning curves, and to construct ROC curves

For a description of the classifiers, and a discussion of their relative performance, see: “On the Classification Performance of TAN and General Bayesian Networks” , Michael G. Madden. Knowledge Based Systems, 2009.

Please cite that paper if you use this software in your work.