Skip to main content

Importance

Trait Importance 

Source
pub trait Importance: Send + Sync {
    // Required methods
    fn compute(
        &self,
        module: &dyn Module,
        context: Option<&CalibrationContext>,
    ) -> Result<ImportanceScores, PruningError>;
    fn name(&self) -> &'static str;
    fn requires_calibration(&self) -> bool;
}
Expand description

Core trait for importance estimation algorithms.

§Toyota Way: Jidoka

All implementations must validate numerical stability. NaN or Inf values trigger immediate failure (Andon cord).

§Object Safety

This trait is object-safe and can be used with dyn Importance.

Required Methods§

Source

fn compute( &self, module: &dyn Module, context: Option<&CalibrationContext>, ) -> Result<ImportanceScores, PruningError>

Compute importance scores for a module’s parameters.

§Arguments
  • module - Neural network module to analyze
  • context - Optional calibration context with activation stats
§Returns
  • Ok(ImportanceScores) - Computed importance values
  • Err(PruningError) - If computation fails or numerical issues detected
Source

fn name(&self) -> &'static str

Name of this importance method.

Used for logging and error messages.

Source

fn requires_calibration(&self) -> bool

Whether this method requires calibration data.

Methods like Wanda require activation statistics from calibration.

Implementors§