Parity-block curvature preconditioner / report.md
Mechanism confirmed, baseline not beaten
Эксперимент: Parity-block curvature preconditioner (#1217)
{ "worked": true, "confidence": 8, "verdict": "Built a readable parity-sector quadratic preconditioner experiment with orthogonal and non-orthogonal involutions. The orthogonal check observed numerical block decoupling (cross-block norm 7.4e-15), a 15x sector curvature ratio, and stability boundaries matching 2/lambda_max: 0.99x was stable while 1.01x was unstable in both sectors. Sector-specific steps reduced loss substantially faster than the conservative global step, but this is a toy quadratic result rather than evidence from a neural-network dataset.", "metrics": { "baseline": "Global step eta=0.04; loss at step 10=1.2138; final loss after 30 steps=0.1160.", "idea": "Sector steps eta_plus=0.6 and eta_minus=0.04; loss at step 10=0.3001; final loss after 30 steps=3.99e-05. Non-orthogonal generalized-pencil residuals were 4.8e-16 and 2.5e-14, while naive Euclidean sector eigenvalues differed from generalized-pencil values.", "how_to_run": "/home/maxwelhelp/main/bin/python3 parity_experiment.py" }, "files": [ "parity_experiment.py" ], "limitations": "No CIFAR-10 CNN, AdamW implementation, stochastic training, wall-clock/FLOP measurement, validation accuracy, or learned curvature estimator was tested. The observed win depends on an exactly known reflection symmetry and a deliberately constructed 15x sector-curvature mismatch." }