pub struct GradientAccumulationConfig {
pub accumulation_steps: usize,
pub average_gradients: bool,
pub zero_gradients_after_update: bool,
pub clip_gradients: bool,
pub max_gradient_norm: Option<f64>,
pub log_gradient_stats: bool,
}
Expand description
Gradient accumulation configuration
Fields§
§accumulation_steps: usize
Number of batches to accumulate gradients over
average_gradients: bool
Whether to average gradients over accumulation steps If true, the gradients are divided by accumulation_steps If false, the gradients are summed over accumulation steps
zero_gradients_after_update: bool
Whether to zero gradients after each update
clip_gradients: bool
Whether to clip gradients
max_gradient_norm: Option<f64>
Maximum gradient norm for gradient clipping
log_gradient_stats: bool
Whether to log gradient statistics during training
Trait Implementations§
Source§impl Clone for GradientAccumulationConfig
impl Clone for GradientAccumulationConfig
Source§fn clone(&self) -> GradientAccumulationConfig
fn clone(&self) -> GradientAccumulationConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for GradientAccumulationConfig
impl Debug for GradientAccumulationConfig
Auto Trait Implementations§
impl Freeze for GradientAccumulationConfig
impl RefUnwindSafe for GradientAccumulationConfig
impl Send for GradientAccumulationConfig
impl Sync for GradientAccumulationConfig
impl Unpin for GradientAccumulationConfig
impl UnwindSafe for GradientAccumulationConfig
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
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 more