pub struct WorkingModelPirlsResult {Show 14 fields
pub beta: Coefficients,
pub state: WorkingState,
pub status: PirlsStatus,
pub iterations: usize,
pub lastgradient_norm: f64,
pub last_deviance_change: f64,
pub last_step_size: f64,
pub last_step_halving: usize,
pub max_abs_eta: f64,
pub constraint_kkt: Option<ConstraintKktDiagnostics>,
pub final_lm_lambda: f64,
pub final_accept_rho: Option<f64>,
pub min_penalized_deviance: f64,
pub exported_laplace_curvature: ExportedLaplaceCurvature,
}Expand description
Result of the inner runworking_model_pirls loop.
Fields§
§beta: Coefficients§state: WorkingState§status: PirlsStatus§iterations: usize§lastgradient_norm: f64§last_deviance_change: f64§last_step_size: f64§last_step_halving: usize§max_abs_eta: f64§constraint_kkt: Option<ConstraintKktDiagnostics>§final_lm_lambda: f64Levenberg-Marquardt damping coefficient at the last accepted
inner iter. Used by the REML runtime to seed the next PIRLS call
at the same outer fit, avoiding 4-6 iters of damping rediscovery
when the geometry calls for λ_LM > 1e-6.
final_accept_rho: Option<f64>Gain ratio (actual_reduction / predicted_reduction) at the
last accepted inner iter. None when no step was accepted
(rejection-exhausted, MaxIterationsReached without acceptance).
Programmatic counterpart to the per-iter [PIRLS lm-trajectory]
log line’s accept_rho field — the log is grep-only, this
field is queryable by the outer schedule and convergence guard.
Values near 1.0 indicate the quadratic model is faithful;
values much smaller indicate the LM model is over-stating
predicted reduction and the inner Newton may benefit from
shorter steps.
min_penalized_deviance: f64Minimum penalized deviance (state.deviance + state.penalty_term)
observed across all iterations whose state was computed during the
inner P-IRLS loop. Penalized deviance is monotonically decreasing
along any descent path the inner solver takes, so this minimum is a
principled seed-screening proxy that remains meaningful even when the
solver hit its iteration cap before reaching the mode. f64::INFINITY
when no state was ever computed (paths that synthesize a result
without iterating, e.g. zero-iteration warm-only paths).
exported_laplace_curvature: ExportedLaplaceCurvatureTrait Implementations§
Source§impl Clone for WorkingModelPirlsResult
impl Clone for WorkingModelPirlsResult
Source§fn clone(&self) -> WorkingModelPirlsResult
fn clone(&self) -> WorkingModelPirlsResult
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for WorkingModelPirlsResult
impl RefUnwindSafe for WorkingModelPirlsResult
impl Send for WorkingModelPirlsResult
impl Sync for WorkingModelPirlsResult
impl Unpin for WorkingModelPirlsResult
impl UnsafeUnpin for WorkingModelPirlsResult
impl UnwindSafe for WorkingModelPirlsResult
Blanket Implementations§
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T, U> Imply<T> for U
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>
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>
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.