pub struct L1Regularization {
pub alpha: Float,
}Expand description
L1 (Lasso) regularization: α * ||w||₁
Fields§
§alpha: FloatRegularization strength
Implementations§
Trait Implementations§
Source§impl Clone for L1Regularization
impl Clone for L1Regularization
Source§fn clone(&self) -> L1Regularization
fn clone(&self) -> L1Regularization
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 moreSource§impl Debug for L1Regularization
impl Debug for L1Regularization
Source§impl Regularization for L1Regularization
impl Regularization for L1Regularization
Source§fn penalty(&self, coefficients: &Array1<Float>) -> Result<Float>
fn penalty(&self, coefficients: &Array1<Float>) -> Result<Float>
Compute the regularization penalty value
Source§fn penalty_gradient(
&self,
coefficients: &Array1<Float>,
) -> Result<Array1<Float>>
fn penalty_gradient( &self, coefficients: &Array1<Float>, ) -> Result<Array1<Float>>
Compute the regularization gradient (subgradient for non-smooth penalties)
Source§fn proximal_operator(
&self,
coefficients: &Array1<Float>,
step_size: Float,
) -> Result<Array1<Float>>
fn proximal_operator( &self, coefficients: &Array1<Float>, step_size: Float, ) -> Result<Array1<Float>>
Apply the proximal operator (for proximal gradient methods)
Source§fn is_non_smooth(&self) -> bool
fn is_non_smooth(&self) -> bool
Check if this regularization is non-smooth (requires proximal methods)
Auto Trait Implementations§
impl Freeze for L1Regularization
impl RefUnwindSafe for L1Regularization
impl Send for L1Regularization
impl Sync for L1Regularization
impl Unpin for L1Regularization
impl UnwindSafe for L1Regularization
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