entrenar/optim/hpo/types/
strategy.rs1use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, Serialize, Deserialize)]
7pub enum SearchStrategy {
8 Grid,
10 Random { n_samples: usize },
12 Bayesian { n_initial: usize, acquisition: AcquisitionFunction, surrogate: SurrogateModel },
14 Hyperband {
16 max_iter: usize,
17 eta: f64, },
19}
20
21#[derive(Debug, Clone, Copy, Serialize, Deserialize)]
23pub enum AcquisitionFunction {
24 ExpectedImprovement,
26 UpperConfidenceBound { kappa: f64 },
28 ProbabilityOfImprovement,
30}
31
32#[derive(Debug, Clone, Copy, Serialize, Deserialize)]
34pub enum SurrogateModel {
35 TPE,
37 GaussianProcess,
39 RandomForest { n_trees: usize },
41}