Shrinkage

shrinkage::DiagonalHessianDatafit

Shrinkage for Rust · rust · 0.3.0

pub trait DiagonalHessianDatafit: DifferentiableDatafit

A twice-differentiable loss whose predictor Hessian is diagonal.

Off-diagonal Hessian entries must be zero. Entries use exactly the same normalization as DifferentiableDatafit::gradient, including row averaging. Entries may be negative; this capability does not imply convexity or provide the positive working curvature required by crate::Irls.

Methods

hessian_diagonal

fn hessian_diagonal(
    &self,
    predictor: &[f64],
    output: &mut [f64]
) -> Result<(), FitError>

Write finite, signed predictor Hessian entries into reusable storage.

Errors

Reject invalid data, predictor values, dimensions, or arithmetic. Output is unspecified after an error.

Implementation of DiagonalHessianDatafit

impl DiagonalHessianDatafit for Binomial<'_>

Implementation of DiagonalHessianDatafit

impl DiagonalHessianDatafit for Gaussian<'_>

Implementation of DiagonalHessianDatafit

impl<L: TwiceDifferentiableLink> DiagonalHessianDatafit for LinkedDatafit<shrinkage::Binomial<'_>, L>

Implementation of DiagonalHessianDatafit

impl<L: TwiceDifferentiableLink> DiagonalHessianDatafit for LinkedDatafit<shrinkage::Gaussian<'_>, L>