nlsq.diagnostics.GradientHealthReport¶
- class nlsq.diagnostics.GradientHealthReport(available=True, error_message=None, computation_time_ms=0.0, n_iterations=0, health_score=1.0, mean_gradient_norm=0.0, final_gradient_norm=0.0, mean_gradient_magnitudes=<factory>, variance_gradient_magnitudes=<factory>, max_imbalance_ratio=1.0, has_numerical_issues=False, vanishing_detected=False, imbalance_detected=False, stagnation_detected=False, issues=<factory>, health_status=HealthStatus.HEALTHY)[source]¶
Bases:
AnalysisResultReport from gradient health monitoring during optimization.
Contains results from monitoring gradient behavior across iterations, including detection of vanishing gradients, gradient imbalance, and gradient stagnation.
This dataclass extends AnalysisResult to include gradient-specific metrics tracked during optimization using memory-efficient algorithms (sliding window for norms, Welford’s algorithm for running statistics).
Memory usage is bounded at <1KB regardless of iteration count.
- mean_gradient_magnitudes¶
Mean gradient magnitude per parameter (from Welford’s algorithm).
- Type:
np.ndarray
- variance_gradient_magnitudes¶
Variance of gradient magnitude per parameter (from Welford’s algorithm).
- Type:
np.ndarray
- issues¶
List of detected gradient issues (GRAD-001, GRAD-002, GRAD-003).
- Type:
- health_status¶
Overall health status based on detected issues.
- Type:
Examples
>>> report = GradientHealthReport( ... n_iterations=100, ... health_score=0.95, ... mean_gradient_norm=0.1, ... final_gradient_norm=0.001, ... mean_gradient_magnitudes=np.array([0.1, 0.08, 0.12]), ... variance_gradient_magnitudes=np.array([0.01, 0.01, 0.01]), ... max_imbalance_ratio=1.5, ... has_numerical_issues=False, ... vanishing_detected=False, ... imbalance_detected=False, ... stagnation_detected=False, ... issues=[], ... health_status=HealthStatus.HEALTHY, ... ) >>> report.available True >>> report.health_score 0.95
- issues: list[ModelHealthIssue]¶
- health_status: HealthStatus¶
- summary()[source]¶
Return a summary string of the report.
- Returns:
Human-readable summary of the gradient health analysis.
- Return type:
- __init__(available=True, error_message=None, computation_time_ms=0.0, n_iterations=0, health_score=1.0, mean_gradient_norm=0.0, final_gradient_norm=0.0, mean_gradient_magnitudes=<factory>, variance_gradient_magnitudes=<factory>, max_imbalance_ratio=1.0, has_numerical_issues=False, vanishing_detected=False, imbalance_detected=False, stagnation_detected=False, issues=<factory>, health_status=HealthStatus.HEALTHY)¶