△ Mechanism confirmed, baseline not beaten 2026

Mean-Square Stable Neural Recurrence

Implementation & benchmark of arXiv:2608.07028 — Linear Stochastic Systems with i.i.d. uncertainties: Exact Covariance Characterization, Stability Analysis and State-feedback Design

Usefulness8/10
Difficulty6/10
Novelty7/10

Source paper: Linear Stochastic Systems with i.i.d. uncertainties: Exact Covariance Characterization, Stability Analysis and State-feedback Design arXiv:2608.07028 ⓘ · analyzed Aug 31, 2026

AI-generated research hypothesis, automatically tested. Not peer-reviewed.

Idea description

Treat multiplicative weight noise, quantization error, or structured parameter uncertainty in a recurrent or state-space layer as an i.i.d. random linear operator and explicitly control its second-moment growth. Add a differentiable penalty or projection based on the spectral radius of the Kronecker-lifted operator, so the network can tolerate stochastic perturbations without exploding hidden-state variance or collapsing useful memory.

Formulas

$$P_{t+1}=M_0P_tM_0^\top+\sum_{i,j=1}^{p}(\Sigma_\xi)_{ij}M_iP_tM_j^\top+Q,$$
$$\operatorname{vec}(P_{t+1})=\mathcal{K}\operatorname{vec}(P_t)+\operatorname{vec}(Q),\qquad \mathcal{K}=M_0\otimes M_0+\sum_{i,j=1}^{p}(\Sigma_\xi)_{ij}M_i\otimes M_j,$$
$$\rho(\mathcal{K})<1\ \Longrightarrow\ \|P_t-P_\star\|\lesssim \rho(\mathcal{K})^t,\qquad \operatorname{vec}(P_\star)=(I-\mathcal{K})^{-1}\operatorname{vec}(Q).$$

Mathematical statement

For a linear neural recurrence h_{t+1}=M_t h_t, let M_t=M_0+sum_i xi_{i,t}M_i, where xi_{i,t} are zero-mean i.i.d. random variables with covariance E[xi_t xi_t^T]=Sigma_xi, independent of h_t. Define P_t=E[h_t h_t^T]. Independence and zero mean give P_{t+1}=T(P_t), with T(P)=M_0 P M_0^T+sum_{i,j}(Sigma_xi)_{ij}M_i P M_j^T. Under vectorization, vec(P_{t+1})=K vec(P_t), where K=M_0 tensor M_0+sum_{i,j}(Sigma_xi)_{ij}M_i tensor M_j. With no additive noise, mean-square stability holds when rho(K)<1; with additive covariance Q, the fixed covariance satisfies vec(P_star)=(I-K)^{-1}vec(Q) whenever rho(K)<1. For nonlinear layers, estimate M_0 and M_i as local Jacobian or tangent operators.

Implementation notes

Integrate this into a small GRU-free linear RNN or diagonal state-space layer first, then extend it to a nonlinear RNN using the Jacobian with respect to the hidden state. Represent stochasticity as M_t=M_0+sum_i xi_{i,t}M_i. For dropout-like channel noise, M_i is the contribution of one perturbation channel; for multiplicative parameter noise, obtain M_i by differentiating the recurrent matrix with respect to selected parameter groups. At each training interval, sample a minibatch of hidden states, compute M_0 and M_i with automatic differentiation, form K implicitly, and estimate its largest eigenvalue using 10-30 power iterations. Add lambda max(0,rho_hat(K)-(1-epsilon))^2 to the task loss. Initially stop gradients through the power-iteration vector; later use a differentiable eigensolver for small hidden dimensions. The covariance recursion and spectral condition come from the paper; local Jacobians, noise covariance, and rho are estimated empirically. Avoid explicit d^2-by-d^2 matrices using randomized Kronecker-vector products. First experiment: train a 32-unit linear RNN and tanh RNN on adding-two-numbers or sequential MNIST with Gaussian multiplicative recurrent-weight noise. Sweep noise variance and record hidden covariance for 1,000 inference steps. The predicted signature is a divergence boundary when rho_hat(K) crosses 1: below it covariance approaches a finite plateau with geometric decay rate approximately rho_hat(K), while above it trace covariance grows exponentially. The measured transition should agree within 20%.

Verification

Mechanism confirmed, baseline not beaten

Stage 1 · Toy mechanism gate: Passed ✓

Stage 2 · Mechanism transferred to benchmark: Confirmed ✓

Stage 2 · Practical benchmark result: Inconclusive

Methodology: 8 paired seeds, permutation test (p<0.05) against a learning-rate-tuned baseline. How verification works

Stage 1 — Mechanism check agent confidence 9/10

Built an exact Kronecker-lift covariance verifier and a small noisy scalar-RNN training comparison in experiment.py. The predicted stability boundary was sigma*=0.600; the sweep transitioned between sigma=0.59 (decay) and 0.61 (growth), agreeing within 3.3%. Additive-noise plateaus matched q/(1-rho) with at most 0.25% error, and covariance scaling was exact to 4.4e-16. The penalty reduced learned rho from 0.9778 to 0.9719 and the long-run second-moment proxy by 45.5%, at a small task-loss increase, so the mechanism manifested although this is not a broad accuracy win.

Agent confidence
9/10
Baseline
rho_K=0.977812; task_loss=2.26477; step-100 second-moment proxy=0.09211
Idea
rho_K=0.971890; task_loss=2.26745; step-100 second-moment proxy=0.05018; predicted boundary sigma*=0.600, observed bracket [0.59,0.61]; plateau max relative error=0.25%; scaling max absolute error=4.4e-16

Limitations: Only a scalar recurrence and tiny synthetic sequence-sum task were tested; no 32-unit nonlinear RNN, sequential MNIST, structured parameter groups, implicit Kronecker power iteration, or large-scale accuracy/generalization study was performed. Monte Carlo estimates near the instability boundary are heavy-tailed and noisier than the exact recursion.

How to run: python3 experiment.py

Stage 2 — Benchmark vs. tuned baseline (arXiv:2608.07028)

No significant difference vs. the tuned baseline (+6.9%, p=0.6993, wins 4 / 8 paired seeds).

Benchmark
Dynamics forecasting
Model
rnn_small
Paired seeds
8
Baseline mean
0.0022
Idea mean
0.0024
Effect (Δ)
0.0002 (+6.9%; negative = idea better)
Wins
4 / 8 paired seeds
p-value
0.6993 (permutation test, 20 000 shuffles)
Smallest detectable effect
±44.6%
Mechanism
Confirmed ✓
Practical effect
Inconclusive
Baseline tuning
swept over 3 configs
Limitations:

Only the built-in dynamics track and 32-unit GRU recurrence were tested; the intervention used a spectral-norm proxy for the full GRU local Jacobian rather than an explicit dense Kronecker lift. The run used 12 epochs and 400 training/test examples per seed, did not test other tracks, structured multi-parameter uncertainty, quantization, longer rollouts, or broader model sizes.

How to run: python3 stage2_bench.py

Verdict computed by deterministic test code from paired-seed statistics — not by the language model.

Stage 2 — Benchmark latest Failed ✗

Agent confidence: 9/10

Implemented the mean-square stability penalty as a local modification of the matched dynamics/rnn_small training system, with equal learning-rate sweep parity and eight paired seeds. The trained-model mechanism signature was confirmed: predicted lifted growth 1.0243 versus observed hidden second-moment ratio 1.0002 (2.35% relative error), but the idea slightly worsened test MSE (0.0023943 vs 0.0022403) and was not significant (paired delta +0.0001540, permutation p=0.69925).

Baseline
dynamics/rnn_small; best lr=0.01; full 8-seed test MSE mean=0.0022403220, std=0.0007111673
Idea
mean-square penalty, best cfg lr=0.01 penalty=1.0; full 8-seed test MSE mean=0.0023943047, std=0.0006552643; paired delta=+0.0001539826; p=0.69925; mechanism predicted rho=1.0242608, observed ratio=1.0002414, relative error=2.35%, confirmed=true

Benchmark result

No significant difference vs. the tuned baseline (+6.9%, p=0.6993, wins 4 / 8 paired seeds).

Benchmark
Dynamics forecasting
Model
rnn_small
Paired seeds
8
Baseline mean
0.0022
Idea mean
0.0024
Effect (Δ)
0.0002 (+6.9%; negative = idea better)
Wins
4 / 8 paired seeds
p-value
0.6993 (permutation test, 20 000 shuffles)
Smallest detectable effect
±44.6%
Mechanism
Confirmed ✓
Practical effect
Inconclusive
Baseline tuning
swept over 3 configs
Limitations:

Only the built-in dynamics track and 32-unit GRU recurrence were tested; the intervention used a spectral-norm proxy for the full GRU local Jacobian rather than an explicit dense Kronecker lift. The run used 12 epochs and 400 training/test examples per seed, did not test other tracks, structured multi-parameter uncertainty, quantization, longer rollouts, or broader model sizes.

How to run: python3 stage2_bench.py

Artifacts

Implementation overview ⬇ Download all as ZIP 6 files · code, reports and structured results