pub struct StructuredPruner {
pub keep_fraction: f32,
}Expand description
Structured pruner: removes entire rows (neurons/channels) with the
smallest L2 norms, keeping keep_fraction of rows.
Fields§
§keep_fraction: f32Fraction of rows to retain (0.0 – 1.0)
Implementations§
Source§impl StructuredPruner
impl StructuredPruner
Sourcepub fn new(keep_fraction: f32) -> Self
pub fn new(keep_fraction: f32) -> Self
Create a new StructuredPruner that keeps keep_fraction of rows.
Sourcepub fn prune_rows(&self, w: &Array2<f32>) -> ModelResult<Vec<bool>>
pub fn prune_rows(&self, w: &Array2<f32>) -> ModelResult<Vec<bool>>
Compute a boolean mask over rows (true = keep).
The top ceil(keep_fraction * nrows) rows by L2 norm are kept.
Sourcepub fn compress_rows(&self, w: &Array2<f32>) -> ModelResult<Array2<f32>>
pub fn compress_rows(&self, w: &Array2<f32>) -> ModelResult<Array2<f32>>
Return a new matrix with pruned rows removed.
Trait Implementations§
Source§impl Clone for StructuredPruner
impl Clone for StructuredPruner
Source§fn clone(&self) -> StructuredPruner
fn clone(&self) -> StructuredPruner
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 moreAuto Trait Implementations§
impl Freeze for StructuredPruner
impl RefUnwindSafe for StructuredPruner
impl Send for StructuredPruner
impl Sync for StructuredPruner
impl Unpin for StructuredPruner
impl UnsafeUnpin for StructuredPruner
impl UnwindSafe for StructuredPruner
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> 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