pub struct LearningRateScheduler { /* private fields */ }Expand description
Learning rate scheduler for GNN training
Implements various scheduling strategies to control learning rate during training, helping prevent catastrophic forgetting and improve convergence.
Implementations§
Source§impl LearningRateScheduler
impl LearningRateScheduler
Sourcepub fn new(scheduler_type: SchedulerType, base_lr: f32) -> Self
pub fn new(scheduler_type: SchedulerType, base_lr: f32) -> Self
Creates a new learning rate scheduler
§Arguments
scheduler_type- The scheduling strategy to usebase_lr- The initial/base learning rate
§Example
use ruvector_gnn::scheduler::{LearningRateScheduler, SchedulerType};
let scheduler = LearningRateScheduler::new(
SchedulerType::StepDecay { step_size: 10, gamma: 0.9 },
0.001
);Sourcepub fn step(&mut self) -> f32
pub fn step(&mut self) -> f32
Advances the scheduler by one step and returns the new learning rate
For most schedulers, this should be called once per epoch.
For ReduceOnPlateau, use step_with_metric instead.
§Returns
The updated learning rate
Sourcepub fn step_with_metric(&mut self, metric: f32) -> f32
pub fn step_with_metric(&mut self, metric: f32) -> f32
Trait Implementations§
Source§impl Clone for LearningRateScheduler
impl Clone for LearningRateScheduler
Source§fn clone(&self) -> LearningRateScheduler
fn clone(&self) -> LearningRateScheduler
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for LearningRateScheduler
impl RefUnwindSafe for LearningRateScheduler
impl Send for LearningRateScheduler
impl Sync for LearningRateScheduler
impl Unpin for LearningRateScheduler
impl UnsafeUnpin for LearningRateScheduler
impl UnwindSafe for LearningRateScheduler
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more