BayesNet 1.0.7.
Bayesian Network and basic classifiers Library.
Loading...
Searching...
No Matches
AODE.cc
1// ***************************************************************
2// SPDX-FileCopyrightText: Copyright 2024 Ricardo Montañana Gómez
3// SPDX-FileType: SOURCE
4// SPDX-License-Identifier: MIT
5// ***************************************************************
6
7#include "AODE.h"
8
9namespace bayesnet {
10 AODE::AODE(bool predict_voting) : Ensemble(predict_voting)
11 {
12 validHyperparameters = { "predict_voting" };
13
14 }
15 void AODE::setHyperparameters(const nlohmann::json& hyperparameters_)
16 {
17 auto hyperparameters = hyperparameters_;
18 if (hyperparameters.contains("predict_voting")) {
19 predict_voting = hyperparameters["predict_voting"];
20 hyperparameters.erase("predict_voting");
21 }
22 Classifier::setHyperparameters(hyperparameters);
23 }
24 void AODE::buildModel(const torch::Tensor& weights)
25 {
26 models.clear();
27 significanceModels.clear();
28 for (int i = 0; i < features.size(); ++i) {
29 models.push_back(std::make_unique<SPODE>(i));
30 }
31 n_models = models.size();
32 significanceModels = std::vector<double>(n_models, 1.0);
33 }
34 std::vector<std::string> AODE::graph(const std::string& title) const
35 {
36 return Ensemble::graph(title);
37 }
38}