29 explicit Boost(
bool predict_voting =
false);
30 virtual ~Boost()
override =
default;
31 void setHyperparameters(
const nlohmann::json& hyperparameters_)
override;
33 std::vector<int> featureSelection(torch::Tensor& weights_);
34 void buildModel(
const torch::Tensor& weights)
override;
35 std::tuple<torch::Tensor&, double, bool> update_weights(torch::Tensor& ytrain, torch::Tensor& ypred, torch::Tensor& weights);
36 std::tuple<torch::Tensor&, double, bool> update_weights_block(
int k, torch::Tensor& ytrain, torch::Tensor& weights);
37 void add_model(std::unique_ptr<Classifier> model,
double significance);
38 void remove_last_model();
42 torch::Tensor X_train, y_train, X_test, y_test;
44 bool bisection =
true;
46 std::string order_algorithm = Orders.DESC;
47 bool convergence =
true;
48 bool convergence_best =
false;
49 bool selectFeatures =
false;
50 std::string select_features_algorithm;
51 FeatureSelect* featureSelector =
nullptr;
52 double threshold = -1;
53 bool block_update =
false;
54 bool alpha_block =
false;