Sphere-Jacobian Performative Optimizer
Implementation & benchmark of arXiv:2607.26562 — Adaptive Gradient-Based Methods for a Broader Class of Optimization Problems under Performative Prediction
Source paper: Adaptive Gradient-Based Methods for a Broader Class of Optimization Problems under Performative Prediction arXiv:2607.26562 ⓘ · analyzed Aug 31, 2026
AI-generated research hypothesis, automatically tested. Not peer-reviewed.
Idea description
Augment the ordinary gradient of a neural-network loss with the chain-rule term caused by the model changing the future data distribution. Estimate the unknown distribution-response Jacobian using paired rollouts at randomly perturbed parameters, averaged over a sphere-direction minibatch; this makes the method applicable when the environment is a black box and only samples from the induced distribution are observable.
Formulas
Mathematical statement
The performative objective is \(\mathcal{L}(\theta)=\mathbb{E}_{z\sim\mathcal{D}_{\beta(\theta)}}[\ell(z;\theta)]\), where \(\theta\in\mathbb{R}^{n}\) is the neural-network parameter vector, \(\beta(\theta)\in\mathbb{R}^{m}\) parameterizes the data distribution induced by deployment, \(z\) is an environment sample, and \(\ell\) is the per-sample loss. If \(g_\beta(\theta)=\nabla_\beta\mathbb{E}_{z\sim\mathcal{D}_{\beta}}[\ell(z;\theta)]\), the performative gradient has the chain-rule form \(\nabla\mathcal{L}(\theta)=\nabla_\theta\mathbb{E}_{z\sim\mathcal{D}_{\beta(\theta)}}[\ell(z;\theta)]+(\partial\beta/\partial\theta)(\theta)^\top g_\beta(\theta)\). The paper estimates the transpose Jacobian by drawing \(u_t^i\) uniformly on the unit sphere in \(\mathbb{R}^{n}\), deploying \(\theta_t+\delta u_t^i\) and \(\theta_t-\delta u_t^i\), and estimating the corresponding distribution parameters \(\hat\beta_{t,i}^{+},\hat\beta_{t,i}^{-}\) from \(b_{\min}\) samples each. For output coordinate \(j\in\{1,\ldots,m\}\), the estimator is \(\widehat{J_t^\top\bar e_j}=\frac{n}{b_{\mathrm{sp}}}\sum_{i=1}^{b_{\mathrm{sp}}}\frac{(\hat\beta_{t,i}^{+}-\hat\beta_{t,i}^{-})_j}{2\delta}u_t^i\), where \(J_t=\partial\beta/\partial\theta(\theta_t)\), \(\bar e_j\) is the \(j\)-th standard basis vector, \(b_{\mathrm{sp}}\) is the number of sphere directions, and \(\delta>0\) is the perturbation radius. Under the paper's smoothness and bounded-noise assumptions, its mean-square Frobenius error is bounded by \(\mathbb{E}\|J_t-\widehat J_t\|_F^2\leq\frac{3\sigma_{\max}^2n^2}{\delta^2b_{\mathrm{sp}}b_{\min}}+3(L_{\beta,\theta}^{\mathrm H})^2\delta^4+\frac{(L_{\beta,\theta}^{\mathrm H})^2\delta^4n^2}{6b_{\mathrm{sp}}}+\frac{18n^2}{b_{\mathrm{sp}}(n+2)}\|J_t\|_F^2\). Here \(\sigma_{\max}^2\) bounds the per-coordinate variance of the distribution-parameter estimator, \(L_{\beta,\theta}^{\mathrm H}\) bounds the relevant Hessian/Lipschitz remainder, and \(\|\cdot\|_F\) is the Frobenius norm. The first term decreases with rollout batch size and sphere directions, while the second and third increase with \(\delta\), giving an empirical bias-variance tuning rule.
Implementation notes
Integrate this at the optimizer step, not inside the network forward pass. The model has parameters \(\theta\); the environment must expose an observable low-dimensional distribution statistic \(\beta\), such as class frequencies, click-rate bins, demand moments, user-state proportions, or a learned environment embedding. First compute the ordinary gradient \(g_{\theta,t}\) on data generated by the current deployed model. Then estimate the response Jacobian using paired environment rollouts. Pseudocode: (1) sample \(u_i\sim\mathrm{Uniform}(S^{n-1})\), or sample Gaussian vectors and normalize them; (2) for every direction, temporarily deploy \(\theta_t+\delta u_i\), collect \(b_{\min}\) environment samples, and compute \(\hat\beta_i^+\); (3) deploy \(\theta_t-\delta u_i\), collect an independently seeded matched batch, and compute \(\hat\beta_i^-\); (4) for each coordinate \(j\), form \(v_j=\frac{n}{b_{\mathrm{sp}}}\sum_i((\hat\beta_i^+-\hat\beta_i^-)_j/(2\delta))u_i\), and stack \(v_j\) as \(\widehat J^\top\); (5) estimate \(g_{\beta,t}=\nabla_\beta\mathbb{E}_{z\sim\mathcal D_\beta}[\ell(z;\theta_t)]\), either analytically through a known simulator or by fitting a small differentiable surrogate \(r_\phi(\beta,\theta)\) to held-out rollout losses; (6) update \(\theta\leftarrow\Pi_\Theta(\theta-\alpha(g_\theta+\widehat J^\top g_\beta))\). Estimate \(\sigma_{\max}^2\) from repeated rollout batches and estimate \(\|\widehat J\|_F\) directly; tune \(\delta\) by minimizing the empirical proxy consisting of the decreasing noise term \(1/\delta^2\) and increasing finite-difference term \(\delta^4\). For a cheap first experiment, use a two-layer MNIST or CIFAR-10 classifier connected to a synthetic feedback environment in which predicted class probabilities alter the next-round class mixture, for example \(\beta(\theta)=\mathrm{softmax}(A\,\bar p_\theta)\) with noisy sampled labels. Compare SGD/Adam, an oracle full-Jacobian optimizer, and the proposed estimator at matched environment rollouts. Start with \(n\) reduced by optimizing a low-rank adapter rather than all weights, \(b_{\mathrm{sp}}\in\{4,8,16\}\), and several \(\delta\) values. Success means lower true post-deployment performative loss, reduced oscillation of the induced class distribution, and a smaller gap to the oracle at equal rollout budget; a useful target is at least 20% lower final performative loss or materially faster loss descent than standard SGD.
Verification
Stage 1 · Toy mechanism gate: Failed ✗
Stage 2 · Mechanism transferred to benchmark: Not tested
Stage 2 · Practical benchmark result: Not run
Methodology: Toy-system gate first; the benchmark stage runs only after a pass. How verification works
Stage 1 — Mechanism check agent confidence 9/10
Built a self-contained NumPy implementation of sphere-direction paired-rollout Jacobian estimation and a toy performative optimizer comparison in experiment.py. The predicted 1/b_sp scaling was strongly confirmed (log-log slope -1.003), and rollout-noise scaling was approximately confirmed (slope -0.901 versus -1). However, the finite-difference delta sweep did not show the required delta^4 MSE scaling (observed slope -0.015), and the proposed optimizer did not beat SGD in the toy comparison, so the strict mechanism-success criterion is not met.
- Agent confidence
- 9/10
- Baseline
- SGD final performative loss 0.0000420; loss at step 20 0.03284
- Idea
- Sphere-Jacobian final performative loss 0.02279; loss at step 20 0.15432; Jacobian MSE slopes: -1.003 versus b_sp and -0.901 versus b_min; delta slope -0.015 versus predicted +4
Limitations: Only a low-dimensional synthetic NumPy environment was tested; no neural network, black-box learned surrogate for g_beta, real dataset, projection constraint, CUDA path, or matched wall-clock/FLOP evaluation was tested. The delta-bias experiment remained dominated by sphere-sampling or model-scale effects despite increasing the direction batch, so the stated delta^4 prediction was not cleanly isolated.
How to run: python3 experiment.py
Verdict computed by deterministic test code from paired-seed statistics — not by the language model.
Artifacts
- experiment.py 4.8 KB View Raw
- report.md 1.5 KB View
- results.json 2.2 KB View Raw