Struct CosineAnnealingLrSchedulerConfig
pub struct CosineAnnealingLrSchedulerConfig { /* private fields */ }Expand description
The configuration for creating a Cosine Annealing learning rate scheduler.
This scheduler uses a cosine annealing schedule without warm restarts,
where the learning rate follows a cosine curve from initial_lr down to
min_lr over num_iters steps. After num_iters steps, the learning rate
continues along the cosine curve without restarting.
This corresponds to PyTorch’s CosineAnnealingLR and is based on the
closed-form schedule proposed in SGDR: Stochastic Gradient Descent with Warm
Restarts.
Implementations§
§impl CosineAnnealingLrSchedulerConfig
impl CosineAnnealingLrSchedulerConfig
pub fn with_min_lr(self, min_lr: f64) -> CosineAnnealingLrSchedulerConfig
pub fn with_min_lr(self, min_lr: f64) -> CosineAnnealingLrSchedulerConfig
Sets the value for the field min_lr.
- Defaults to
0.0
§impl CosineAnnealingLrSchedulerConfig
impl CosineAnnealingLrSchedulerConfig
pub fn init(&self) -> Result<ModuleLrScheduler, String>
pub fn init(&self) -> Result<ModuleLrScheduler, String>
Initializes a module learning rate scheduler.
§Errors
An error will be returned if any of the following conditions is true:
initial_lris out of range (0.0, 1.0]min_lris out of range [0.0,initial_lr]num_itersis 0
Trait Implementations§
§impl Clone for CosineAnnealingLrSchedulerConfig
impl Clone for CosineAnnealingLrSchedulerConfig
§fn clone(&self) -> CosineAnnealingLrSchedulerConfig
fn clone(&self) -> CosineAnnealingLrSchedulerConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§impl Config for CosineAnnealingLrSchedulerConfig
impl Config for CosineAnnealingLrSchedulerConfig
§impl Debug for CosineAnnealingLrSchedulerConfig
impl Debug for CosineAnnealingLrSchedulerConfig
§impl<'de> Deserialize<'de> for CosineAnnealingLrSchedulerConfig
impl<'de> Deserialize<'de> for CosineAnnealingLrSchedulerConfig
§fn deserialize<D>(
deserializer: D,
) -> Result<CosineAnnealingLrSchedulerConfig, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D,
) -> Result<CosineAnnealingLrSchedulerConfig, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
§impl Display for CosineAnnealingLrSchedulerConfig
impl Display for CosineAnnealingLrSchedulerConfig
§impl From<CosineAnnealingLrSchedulerConfig> for LrSchedulerConfig
impl From<CosineAnnealingLrSchedulerConfig> for LrSchedulerConfig
§fn from(config: CosineAnnealingLrSchedulerConfig) -> LrSchedulerConfig
fn from(config: CosineAnnealingLrSchedulerConfig) -> LrSchedulerConfig
Converts to this type from the input type.
§impl Serialize for CosineAnnealingLrSchedulerConfig
impl Serialize for CosineAnnealingLrSchedulerConfig
§fn serialize<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations§
impl Freeze for CosineAnnealingLrSchedulerConfig
impl RefUnwindSafe for CosineAnnealingLrSchedulerConfig
impl Send for CosineAnnealingLrSchedulerConfig
impl Sync for CosineAnnealingLrSchedulerConfig
impl Unpin for CosineAnnealingLrSchedulerConfig
impl UnsafeUnpin for CosineAnnealingLrSchedulerConfig
impl UnwindSafe for CosineAnnealingLrSchedulerConfig
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<K, Q> Comparable<Q> for K
impl<K, Q> Comparable<Q> for K
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§impl<K, Q> Equivalent<Q> for K
impl<K, Q> Equivalent<Q> for K
§fn equivalent(&self, key: &Q) -> bool
fn equivalent(&self, key: &Q) -> bool
Compare self to
key and return true if they are equal.impl<T> ErasedDestructor for Twhere
T: 'static,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
§impl<T> ToCompactString for Twhere
T: Display,
impl<T> ToCompactString for Twhere
T: Display,
§fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
Fallible version of [
ToCompactString::to_compact_string()] Read more§fn to_compact_string(&self) -> CompactString
fn to_compact_string(&self) -> CompactString
Converts the given value to a [
CompactString]. Read more