Skip to main content

entrenar/optim/hpo/
mod.rs

1//! Hyperparameter Optimization Module (MLOPS-011)
2//!
3//! Bayesian optimization with TPE and Hyperband schedulers.
4//!
5//! # Toyota Way: Kaizen
6//!
7//! Continuous improvement through intelligent search. Each trial informs the next,
8//! building knowledge iteratively rather than wasteful exhaustive search.
9//!
10//! # Example
11//!
12//! ```ignore
13//! use entrenar::optim::hpo::{HyperparameterSpace, ParameterDomain, TPEOptimizer};
14//!
15//! let mut space = HyperparameterSpace::new();
16//! space.add("learning_rate", ParameterDomain::Continuous {
17//!     low: 1e-5, high: 1e-1, log_scale: true
18//! });
19//! space.add("batch_size", ParameterDomain::Discrete { low: 8, high: 128 });
20//!
21//! let optimizer = TPEOptimizer::new(space);
22//! let config = optimizer.suggest(&trials);
23//! ```
24//!
25//! # References
26//!
27//! \[1\] Bergstra et al. (2011) - Algorithms for Hyper-Parameter Optimization (TPE)
28//! \[2\] Li et al. (2018) - Hyperband: A Novel Bandit-Based Approach
29
30mod error;
31mod grid;
32mod hyperband;
33mod tpe;
34mod types;
35
36pub use error::{HPOError, Result};
37pub use grid::GridSearch;
38pub use hyperband::HyperbandScheduler;
39pub use tpe::TPEOptimizer;
40pub use types::{
41    AcquisitionFunction, HyperparameterSpace, ParameterDomain, ParameterValue, SearchStrategy,
42    SurrogateModel, Trial, TrialStatus,
43};