30 #ifndef GUM_LEARNING_BN_LEARNER_H 31 #define GUM_LEARNING_BN_LEARNER_H 37 #include <agrum/BN/BayesNet.h> 38 #include <agrum/agrum.h> 39 #include <agrum/tools/core/bijection.h> 40 #include <agrum/tools/core/sequence.h> 41 #include <agrum/tools/graphs/DAG.h> 43 #include <agrum/BN/learning/BNLearnUtils/genericBNLearner.h> 49 class BNLearnerListener;
58 template <
typename GUM_SCALAR >
59 class BNLearner:
public genericBNLearner {
71 BNLearner(
const std::string& filename,
72 const std::vector< std::string >& missing_symbols = {
"?"});
74 BNLearner(
const DatabaseTable<>& db);
109 BNLearner(
const std::string& filename,
110 const gum::BayesNet< GUM_SCALAR >& src,
111 const std::vector< std::string >& missing_symbols = {
"?"});
114 BNLearner(
const BNLearner&);
117 BNLearner(BNLearner&&);
120 virtual ~BNLearner();
130 BNLearner& operator=(
const BNLearner&);
133 BNLearner& operator=(BNLearner&&);
138 BayesNet< GUM_SCALAR > learnBN();
152 BayesNet< GUM_SCALAR > learnParameters(
const DAG& dag,
bool takeIntoAccountScore =
true);
170 BayesNet< GUM_SCALAR > learnParameters(
bool take_into_account_score =
true);
174 NodeProperty< Sequence< std::string > > _labelsFromBN_(
const std::string& filename,
175 const BayesNet< GUM_SCALAR >& src);
183 #include <agrum/BN/learning/BNLearner_tpl.h>