Skip to content
Rainbow docs menu

Reference · Algorithm guarantees

rainbow.algorithms.proofs.levenberg-marquardt

Algorithm guaranteessrc/rainbow/algorithms/proofs/levenberg_marquardt.clj1 definitions, 1 theorems

Levenberg-Marquardt as the general descent skeleton with a damped Hessian-inverse step size. The step size at a point is `1 / (hessian(point) + lambda)`, interpolating between Newton's method (lambda = 0) and small gradient steps (large lambda). The damping parameter lambda keeps the step well-defined even when the Hessian is small, using exact rational division and addition (AHoF O31). Only the step-size function is new; the descent loop is the O13 skeleton. Scope (measured by the kernel): this module has 1 definitional unfoldings (true by unfolding a definition). None of its theorems is a guarantee about the algorithm for all inputs; `lein verify rainbow.algorithms.proofs.levenberg-marquardt` prints this classification.

optimization/levenberg-marquardt-rate

DefinitionSource, line 41

optimization/levenberg-marquardt-rate :
  (hessian : ℚ → ℚ≥0) (lambda : ℚ≥0) (point : ℚ)
  → ℚ≥0

ℚ = signed/SignedRationalℚ≥0 = nnrat/NonnegativeRational

optimization/levenberg-marquardt-rate-unfold

TheoremHolds by unfolding a definitionNo axiomsSource, line 55

optimization/levenberg-marquardt-rate-unfold :
  (hessian : ℚ → ℚ≥0) (lambda : ℚ≥0) (point : ℚ)
  → optimization/levenberg-marquardt-rate hessian lambda point = nnrat/reciprocal (hessian point + lambda)

+ = nnrat/add= = equality/Eqℚ = signed/SignedRationalℚ≥0 = nnrat/NonnegativeRational