Skip to main content

Module warm_start

Module warm_start 

Source
Expand description

Warm-starting and transfer learning for Bayesian Optimization.

Provides mechanisms to seed a new Bayesian optimization run with knowledge from previous runs, related tasks, or meta-learned initialization strategies.

§Strategies

  1. Direct warm-start: inject prior observations directly into the GP.
  2. Scaled transfer: align source observations to the target domain via min-max rescaling and inject them with a down-weighted noise level.
  3. Multi-task BO: maintain separate GPs per task and combine acquisition values using task-similarity weights.
  4. Meta-learning: estimate good GP hyperparameter initialization from observed task features (warm-starting the surrogate model itself).

§Example

use scirs2_optimize::bayesian::warm_start::{
    WarmStartBo, WarmStartConfig, PriorRun, MetaLearner,
};
use scirs2_core::ndarray::{Array1, Array2};

// A previous run on a related problem:
let prior = PriorRun {
    x: Array2::from_shape_vec((4, 1), vec![0.0, 1.0, 2.0, 3.0]).expect("shape"),
    y: Array1::from_vec(vec![1.0, 0.5, 0.1, 0.6]),
    bounds: vec![(0.0_f64, 4.0_f64)],
    weight: 0.8,
};

let config = WarmStartConfig {
    prior_runs: vec![prior],
    n_initial: 3,
    seed: Some(42),
    ..Default::default()
};

let mut bo = WarmStartBo::new(vec![(0.0_f64, 4.0_f64)], config).expect("create");
let result = bo.optimize(|x: &[f64]| (x[0] - 1.5_f64).powi(2), 10).expect("opt");
println!("Best x: {:?}  f: {:.4}", result.x_best, result.f_best);

Structs§

MetaLearner
Meta-learner that estimates good initial GP hyperparameters from prior tasks.
MultiTaskBo
Multi-task Bayesian optimizer.
MultiTaskBoConfig
Configuration for multi-task Bayesian optimization.
PriorRun
A record of a previous optimization run that can be used to warm-start a new run.
Task
A task descriptor for multi-task BO.
WarmStartBo
Bayesian optimizer with warm-starting from prior runs.
WarmStartConfig
Configuration for warm-start Bayesian optimization.
WarmStartObs
A single observation recorded during optimization.
WarmStartResult
Result of a warm-start Bayesian optimization run.

Enums§

BlendStrategy
Strategy for blending prior observations into the current run.

Functions§

warm_start_optimize
Run Bayesian optimization with warm-starting from prior runs.