pub struct LionConfig { /* private fields */ }Expand description
Configuration for the Lion optimizer.
Implementations§
Source§impl LionConfig
impl LionConfig
Sourcepub fn new() -> Self
pub fn new() -> Self
Create a new instance of the config.
§Arguments
§Optional Arguments
§grad_clipping
Gradient clipping configuration.
- Defaults to
None
§Default Arguments
§beta_1
Interpolation factor used to compute the update direction.
- Defaults to
0.9
§beta_2
Decay factor for the momentum state.
- Defaults to
0.99
§weight_decay
Decoupled weight decay factor.
- Defaults to
0.0
Source§impl LionConfig
impl LionConfig
Sourcepub fn with_beta_1(self, beta_1: f32) -> Self
pub fn with_beta_1(self, beta_1: f32) -> Self
Sets the value for the field beta_1.
Interpolation factor used to compute the update direction.
- Defaults to
0.9
Sourcepub fn with_beta_2(self, beta_2: f32) -> Self
pub fn with_beta_2(self, beta_2: f32) -> Self
Sourcepub fn with_weight_decay(self, weight_decay: f32) -> Self
pub fn with_weight_decay(self, weight_decay: f32) -> Self
Sourcepub fn with_grad_clipping(
self,
grad_clipping: Option<GradientClippingConfig>,
) -> Self
pub fn with_grad_clipping( self, grad_clipping: Option<GradientClippingConfig>, ) -> Self
Source§impl LionConfig
impl LionConfig
Sourcepub fn build(&self) -> Lion
pub fn build(&self) -> Lion
Build a Lion from the config.
The bare optimizer, which
ModuleOptimizer::with_group takes to
optimize one parameter group. init is the whole-module
counterpart, and the only one that applies the configured gradient clipping.
Sourcepub fn init(&self) -> ModuleOptimizer
pub fn init(&self) -> ModuleOptimizer
Initialize a Lion optimizer for a module.
Trait Implementations§
Source§impl Clone for LionConfig
impl Clone for LionConfig
Source§impl Config for LionConfig
impl Config for LionConfig
Source§fn save<P>(&self, file: P) -> Result<(), Error>
fn save<P>(&self, file: P) -> Result<(), Error>
Available on crate feature
std only.Saves the configuration to a file. Read more
Source§fn load<P>(file: P) -> Result<Self, ConfigError>
fn load<P>(file: P) -> Result<Self, ConfigError>
Available on crate feature
std only.Loads the configuration from a file. Read more
Source§fn load_binary(data: &[u8]) -> Result<Self, ConfigError>
fn load_binary(data: &[u8]) -> Result<Self, ConfigError>
Loads the configuration from a binary buffer. Read more
Source§impl Debug for LionConfig
impl Debug for LionConfig
Source§impl<'de> Deserialize<'de> for LionConfig
impl<'de> Deserialize<'de> for LionConfig
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for LionConfig
impl Display for LionConfig
Auto Trait Implementations§
impl Freeze for LionConfig
impl RefUnwindSafe for LionConfig
impl Send for LionConfig
impl Sync for LionConfig
impl Unpin for LionConfig
impl UnsafeUnpin for LionConfig
impl UnwindSafe for LionConfig
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> CloneExpand for Twhere
T: Clone,
impl<T> CloneExpand for Twhere
T: Clone,
fn __expand_clone_method(&self, _: &Scope) -> T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§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