Classifier with Bayesian Networks
Probabilistic classification in pyAgrum aims to propose a scikit-learn-like (binary and multi-class) classifier class that can be used in the same codes as scikit-learn classifiers. Moreover, even if the classifier wraps a full Bayesian network, skbn optimally encodes the classifier using the smallest set of needed features following the d-separation criterion (Markov Blanket).

The module proposes to wrap the pyAgrum’s learning algorithms and some others (naive Bayes, TAN, Chow-Liu tree) in the fit method of a classifier. In order to be used with continuous variable, the module proposes also some different discretization methods.
skbn is a set of pure python3 scripts based on pyAgrum’s tools.
Reference
- Classifier using Bayesian networks
BNClassifierBNClassifier.XYfromCSV()BNClassifier.fit()BNClassifier.fromTrainedModel()BNClassifier.get_metadata_routing()BNClassifier.get_params()BNClassifier.predict()BNClassifier.predict_proba()BNClassifier.preparedData()BNClassifier.score()BNClassifier.set_fit_request()BNClassifier.set_params()BNClassifier.set_predict_request()BNClassifier.set_score_request()BNClassifier.showROC_PR()