BayesNet 1.0.5
Bayesian Network Classifiers using libtorch from scratch
Loading...
Searching...
No Matches
bayesnet::Ensemble Class Reference
Inheritance diagram for bayesnet::Ensemble:
Collaboration diagram for bayesnet::Ensemble:

Public Member Functions

 Ensemble (bool predict_voting=true)
 
torch::Tensor predict (torch::Tensor &X) override
 
std::vector< int > predict (std::vector< std::vector< int > > &X) override
 
torch::Tensor predict_proba (torch::Tensor &X) override
 
std::vector< std::vector< double > > predict_proba (std::vector< std::vector< int > > &X) override
 
float score (torch::Tensor &X, torch::Tensor &y) override
 
float score (std::vector< std::vector< int > > &X, std::vector< int > &y) override
 
int getNumberOfNodes () const override
 
int getNumberOfEdges () const override
 
int getNumberOfStates () const override
 
std::vector< std::string > show () const override
 
std::vector< std::string > graph (const std::string &title) const override
 
std::vector< std::string > topological_order () override
 
std::string dump_cpt () const override
 
- Public Member Functions inherited from bayesnet::Classifier
 Classifier (Network model)
 
Classifierfit (std::vector< std::vector< int > > &X, std::vector< int > &y, const std::vector< std::string > &features, const std::string &className, std::map< std::string, std::vector< int > > &states) override
 
Classifierfit (torch::Tensor &X, torch::Tensor &y, const std::vector< std::string > &features, const std::string &className, std::map< std::string, std::vector< int > > &states) override
 
Classifierfit (torch::Tensor &dataset, const std::vector< std::string > &features, const std::string &className, std::map< std::string, std::vector< int > > &states) override
 
Classifierfit (torch::Tensor &dataset, const std::vector< std::string > &features, const std::string &className, std::map< std::string, std::vector< int > > &states, const torch::Tensor &weights) override
 
void addNodes ()
 
int getClassNumStates () const override
 
status_t getStatus () const override
 
std::string getVersion () override
 
std::vector< std::string > getNotes () const override
 
void setHyperparameters (const nlohmann::json &hyperparameters) override
 
- Public Member Functions inherited from bayesnet::BaseClassifier
std::vector< std::string > & getValidHyperparameters ()
 

Protected Member Functions

torch::Tensor predict_average_voting (torch::Tensor &X)
 
std::vector< std::vector< double > > predict_average_voting (std::vector< std::vector< int > > &X)
 
torch::Tensor predict_average_proba (torch::Tensor &X)
 
std::vector< std::vector< double > > predict_average_proba (std::vector< std::vector< int > > &X)
 
torch::Tensor compute_arg_max (torch::Tensor &X)
 
std::vector< int > compute_arg_max (std::vector< std::vector< double > > &X)
 
torch::Tensor voting (torch::Tensor &votes)
 
void trainModel (const torch::Tensor &weights) override
 
- Protected Member Functions inherited from bayesnet::Classifier
void checkFitParameters ()
 
virtual void buildModel (const torch::Tensor &weights)=0
 
void buildDataset (torch::Tensor &y)
 

Protected Attributes

unsigned n_models
 
std::vector< std::unique_ptr< Classifier > > models
 
std::vector< double > significanceModels
 
bool predict_voting
 
- Protected Attributes inherited from bayesnet::Classifier
bool fitted
 
unsigned int m
 
unsigned int n
 
Network model
 
Metrics metrics
 
std::vector< std::string > features
 
std::string className
 
std::map< std::string, std::vector< int > > states
 
torch::Tensor dataset
 
status_t status = NORMAL
 
std::vector< std::string > notes
 
- Protected Attributes inherited from bayesnet::BaseClassifier
std::vector< std::string > validHyperparameters
 

Detailed Description

Definition at line 15 of file Ensemble.h.

Constructor & Destructor Documentation

◆ Ensemble()

bayesnet::Ensemble::Ensemble ( bool predict_voting = true)

Definition at line 11 of file Ensemble.cc.

Member Function Documentation

◆ compute_arg_max() [1/2]

std::vector< int > bayesnet::Ensemble::compute_arg_max ( std::vector< std::vector< double > > & X)
protected

Definition at line 24 of file Ensemble.cc.

◆ compute_arg_max() [2/2]

torch::Tensor bayesnet::Ensemble::compute_arg_max ( torch::Tensor & X)
protected

Definition at line 33 of file Ensemble.cc.

◆ dump_cpt()

std::string bayesnet::Ensemble::dump_cpt ( ) const
inlineoverridevirtual

Reimplemented from bayesnet::Classifier.

Definition at line 34 of file Ensemble.h.

◆ getNumberOfEdges()

int bayesnet::Ensemble::getNumberOfEdges ( ) const
overridevirtual

Reimplemented from bayesnet::Classifier.

Definition at line 206 of file Ensemble.cc.

◆ getNumberOfNodes()

int bayesnet::Ensemble::getNumberOfNodes ( ) const
overridevirtual

Reimplemented from bayesnet::Classifier.

Definition at line 198 of file Ensemble.cc.

◆ getNumberOfStates()

int bayesnet::Ensemble::getNumberOfStates ( ) const
overridevirtual

Reimplemented from bayesnet::Classifier.

Definition at line 214 of file Ensemble.cc.

◆ graph()

std::vector< std::string > bayesnet::Ensemble::graph ( const std::string & title) const
overridevirtual

Implements bayesnet::BaseClassifier.

Definition at line 189 of file Ensemble.cc.

◆ predict() [1/2]

std::vector< int > bayesnet::Ensemble::predict ( std::vector< std::vector< int > > & X)
overridevirtual

Reimplemented from bayesnet::Classifier.

Definition at line 74 of file Ensemble.cc.

◆ predict() [2/2]

torch::Tensor bayesnet::Ensemble::predict ( torch::Tensor & X)
overridevirtual

Reimplemented from bayesnet::Classifier.

Definition at line 79 of file Ensemble.cc.

◆ predict_average_proba() [1/2]

std::vector< std::vector< double > > bayesnet::Ensemble::predict_average_proba ( std::vector< std::vector< int > > & X)
protected

Definition at line 104 of file Ensemble.cc.

◆ predict_average_proba() [2/2]

torch::Tensor bayesnet::Ensemble::predict_average_proba ( torch::Tensor & X)
protected

Definition at line 84 of file Ensemble.cc.

◆ predict_average_voting() [1/2]

std::vector< std::vector< double > > bayesnet::Ensemble::predict_average_voting ( std::vector< std::vector< int > > & X)
protected

Definition at line 133 of file Ensemble.cc.

◆ predict_average_voting() [2/2]

torch::Tensor bayesnet::Ensemble::predict_average_voting ( torch::Tensor & X)
protected

Definition at line 140 of file Ensemble.cc.

◆ predict_proba() [1/2]

std::vector< std::vector< double > > bayesnet::Ensemble::predict_proba ( std::vector< std::vector< int > > & X)
overridevirtual

Reimplemented from bayesnet::Classifier.

Definition at line 60 of file Ensemble.cc.

◆ predict_proba() [2/2]

torch::Tensor bayesnet::Ensemble::predict_proba ( torch::Tensor & X)
overridevirtual

Reimplemented from bayesnet::Classifier.

Definition at line 67 of file Ensemble.cc.

◆ score() [1/2]

float bayesnet::Ensemble::score ( std::vector< std::vector< int > > & X,
std::vector< int > & y )
overridevirtual

Reimplemented from bayesnet::Classifier.

Definition at line 169 of file Ensemble.cc.

◆ score() [2/2]

float bayesnet::Ensemble::score ( torch::Tensor & X,
torch::Tensor & y )
overridevirtual

Reimplemented from bayesnet::Classifier.

Definition at line 158 of file Ensemble.cc.

◆ show()

std::vector< std::string > bayesnet::Ensemble::show ( ) const
overridevirtual

Reimplemented from bayesnet::Classifier.

Definition at line 180 of file Ensemble.cc.

◆ topological_order()

std::vector< std::string > bayesnet::Ensemble::topological_order ( )
inlineoverridevirtual

Reimplemented from bayesnet::Classifier.

Definition at line 30 of file Ensemble.h.

◆ trainModel()

void bayesnet::Ensemble::trainModel ( const torch::Tensor & weights)
overrideprotectedvirtual

Reimplemented from bayesnet::Classifier.

Definition at line 16 of file Ensemble.cc.

◆ voting()

torch::Tensor bayesnet::Ensemble::voting ( torch::Tensor & votes)
protected

Definition at line 38 of file Ensemble.cc.

Member Data Documentation

◆ models

std::vector<std::unique_ptr<Classifier> > bayesnet::Ensemble::models
protected

Definition at line 47 of file Ensemble.h.

◆ n_models

unsigned bayesnet::Ensemble::n_models
protected

Definition at line 46 of file Ensemble.h.

◆ predict_voting

bool bayesnet::Ensemble::predict_voting
protected

Definition at line 50 of file Ensemble.h.

◆ significanceModels

std::vector<double> bayesnet::Ensemble::significanceModels
protected

Definition at line 48 of file Ensemble.h.


The documentation for this class was generated from the following files: