#[derive(Clone, Copy, Debug, PartialEq)]
pub enum LrSchedule {
Constant,
StepDecay { step_size: u32, gamma: f32 },
Cosine { total_steps: u32, min_lr_ratio: f32 },
LinearWarmup { warmup_steps: u32 },
}
pub enum LrScheduleF64 {
Constant,
StepDecay { step_size: u32, gamma: f64 },
Cosine { total_steps: u32, min_lr_ratio: f64 },
LinearWarmup { warmup_steps: u32 },
}
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
pub enum ScheduleError {
InvalidConfig,
}