pub struct Tpe {
pub goal: Goal,
pub startup: usize,
pub candidates: usize,
pub quantile: f64,
pub seed: u64,
}Expand description
Tree-structured Parzen Estimator: model what the good trials did, model what the bad ones did, and propose where the first is likely and the second is not.
The one that looks at what already happened, which is also its one honest cost: it cannot derive trial 7 from the seed and the index alone, so a study spread over a folder gets a different search than one in a single process. That is what being guided means, not a bug to fix.
Fields§
§goal: GoalWhich way is better.
startup: usizeDraw at random until this many trials have finished. Below two there is nothing to split into good and bad, so two is the floor whatever is said.
candidates: usizeHow many places to consider before proposing one. More is a better proposal and costs nothing but arithmetic — no trial is run for it.
quantile: f64What share of the finished trials counts as good. 0.25 keeps the best
quarter as the thing to imitate.
seed: u64The seed of the draws.