pub struct RmsProp {
pub lr: Array,
pub alpha: Array,
pub epsilon: Array,
pub state: State,
}Expand description
The RMSprop optimizer [1].
[1]: Tieleman, T. and Hinton, G. 2012. Lecture 6.5-rmsprop, coursera: Neural networks for machine learning
Fields§
§lr: ArrayLearning rate
alpha: ArrayThe smoothing constant. Default to RmsProp::DEFAULT_ALPHA if not specified.
epsilon: ArrayThe epsilon added to the denominator to improve numerical stability. Default to
RmsProp::DEFAULT_EPSILON if not specified.
state: StateInner state
Implementations§
Source§impl RmsProp
impl RmsProp
Sourcepub const DEFAULT_ALPHA: f32 = 0.99
pub const DEFAULT_ALPHA: f32 = 0.99
Default alpha if not specified.
Sourcepub const DEFAULT_EPSILON: f32 = 1e-8
pub const DEFAULT_EPSILON: f32 = 1e-8
Default epsilon if not specified.
Trait Implementations§
Source§impl Buildable for RmsProp
impl Buildable for RmsProp
Source§type Builder = RmsPropBuilder
type Builder = RmsPropBuilder
The builder type for this buildable type
Source§impl Builder<RmsProp> for RmsPropBuilder
impl Builder<RmsProp> for RmsPropBuilder
Source§impl Optimizer for RmsProp
impl Optimizer for RmsProp
Source§fn update_single(
&mut self,
key: &Rc<str>,
gradient: &Array,
parameter: &mut Array,
) -> Result<()>
fn update_single( &mut self, key: &Rc<str>, gradient: &Array, parameter: &mut Array, ) -> Result<()>
Update a single parameter with the given gradient. Read more
Source§fn update<M>(
&mut self,
model: &mut M,
gradients: impl Borrow<FlattenedModuleParam>,
) -> Result<()>where
M: ModuleParameters,
fn update<M>(
&mut self,
model: &mut M,
gradients: impl Borrow<FlattenedModuleParam>,
) -> Result<()>where
M: ModuleParameters,
Apply the gradients to the parameters of the model and update the model with the new
parameters.
Source§impl Updatable for RmsProp
impl Updatable for RmsProp
Source§fn state_projection(
&mut self,
) -> Result<StateProjection<'_>, StateProjectionError>
fn state_projection( &mut self, ) -> Result<StateProjection<'_>, StateProjectionError>
Declare all required and optional state slots.
Source§impl Updatable for &mut RmsProp
impl Updatable for &mut RmsProp
Source§fn state_projection(
&mut self,
) -> Result<StateProjection<'_>, StateProjectionError>
fn state_projection( &mut self, ) -> Result<StateProjection<'_>, StateProjectionError>
Declare all required and optional state slots.
Auto Trait Implementations§
impl !Send for RmsProp
impl !Sync for RmsProp
impl Freeze for RmsProp
impl RefUnwindSafe for RmsProp
impl Unpin for RmsProp
impl UnsafeUnpin for RmsProp
impl UnwindSafe for RmsProp
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,
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 moreSource§impl<T> IntoOption<T> for T
impl<T> IntoOption<T> for T
Source§fn into_option(self) -> Option<T>
fn into_option(self) -> Option<T>
Convert into an
Option.