{
 "artifacts": [
  {
   "name": "bench_report.json",
   "url": "https://synthcore.org/code/1082/bench_report.json"
  },
  {
   "name": "extra_check.py",
   "url": "https://synthcore.org/code/1082/extra_check.py"
  },
  {
   "name": "fisher_annealing_toy.py",
   "url": "https://synthcore.org/code/1082/fisher_annealing_toy.py"
  },
  {
   "name": "fisher_bench_track.py",
   "url": "https://synthcore.org/code/1082/fisher_bench_track.py"
  },
  {
   "name": "report.md",
   "url": "https://synthcore.org/code/1082/report.md"
  },
  {
   "name": "report_bench_2026-09-02T000156.md",
   "url": "https://synthcore.org/code/1082/report_bench_2026-09-02T000156.md"
  },
  {
   "name": "run_bench.py",
   "url": "https://synthcore.org/code/1082/run_bench.py"
  },
  {
   "name": "toy_results.json",
   "url": "https://synthcore.org/code/1082/toy_results.json"
  }
 ],
 "category": "sampling",
 "description": "Replace uniformly spaced diffusion or energy annealing schedules by a finite sequence of quench-relax stages whose intermediary distributions are approximately equally spaced in Fisher-Rao distance. Each stage abruptly changes the model energy or noise level and then runs a short relaxation phase; the schedule concentrates stages where the distribution changes most sharply. This should reduce nonequilibrium mismatch at a fixed number of sampler evaluations and avoid large distributional jumps that destabilize Langevin or reverse-diffusion integration.",
 "download_zip": "https://synthcore.org/download/1082",
 "formulas_latex": [
  "$$\\pi^{H}(x)=\\frac{e^{-\\beta H(x)}}{Z_H},\\qquad Z_H=\\sum_x e^{-\\beta H(x)},\\qquad F_H(\\rho)-F_H(\\pi^H)=\\beta^{-1}D_{\\mathrm{KL}}(\\rho\\|\\pi^H).$$",
  "$$ds^2=d\\theta^{\\mathsf T}I(\\theta)d\\theta,\\qquad I(\\theta)=\\mathbb E_{x\\sim p_\\theta}\\left[\\nabla_\\theta\\log p_\\theta(x)\\nabla_\\theta\\log p_\\theta(x)^{\\mathsf T}\\right].$$",
  "$$\\theta_k:\\quad s(\\theta_k)\\approx \\frac{k}{N}L,\\qquad L=\\int_0^1\\sqrt{\\dot\\theta(u)^{\\mathsf T}I(\\theta(u))\\dot\\theta(u)}\\,du.$$",
  "$$\\sum_{k=0}^{N-1}D_{\\mathrm{KL}}(p_{\\theta_k}\\|p_{\\theta_{k+1}})=\\frac{1}{2}\\sum_{k=0}^{N-1}(\\Delta s_k)^2+O(N^{-2})\\approx\\frac{L^2}{2N}.$$"
 ],
 "id": 2733,
 "implementation": "1. Integration point: use this as a scheduler for a diffusion sampler, annealed Langevin sampler, or energy-based model. Let p_theta denote the model distribution along a one-dimensional annealing path theta in [0,1], where theta can be log-SNR, inverse temperature, noise scale, or an interpolation coefficient between a base Gaussian and the data distribution. Keep the neural score or energy network unchanged and replace only the usual linear or cosine schedule with an adaptive list of N schedule values.\n\n2. Pseudocode: construct a dense pilot grid theta[0:M]. At every grid point estimate the scalar Fisher speed v_j=sqrt(E[(d/dtheta log p_theta(x))^2]) using minibatch samples and automatic differentiation through the energy, score, or denoising parameterization. Form cumulative lengths s_j=s_{j-1}+v_j(theta_j-theta_{j-1}), then select N+1 schedule points by inverse interpolation at s=k*s_M/N. During sampling, quench to theta_k and apply r_k relaxation updates, such as x\u003c-x+epsilon*s_theta_k(x)+sqrt(2epsilon)xi for Langevin. Initially use constant r_k; later test r_k proportional to the local estimated KL or Fisher speed.\n\n3. Computed from the paper are the Fisher metric, equal-arc-length rule, and inverse-N leading-order dissipation scaling. Estimated empirically are Fisher speeds, one-step KL proxies, and relaxation errors. A scalar or diagonal Fisher estimate is sufficient for the first implementation.\n\n4. First cheap experiment: compare linear, cosine, and Fisher-geodesic schedules using a small pretrained CIFAR-10 diffusion score model at N=10, 20, 40 function evaluations. Measure FID, reverse-process KL proxies, and cumulative one-step KL. The quantitative prediction is cumulative KL approximately C/N for the geodesic schedule, while each local KL should be nearly equal across stages. The measured local-KL coefficient of variation should be lower than for parameter-uniform schedules, and the fitted exponent in cumulative KL versus N should approach -1 over the discretization-dominated regime.",
 "math_summary": "For Hamiltonian H(x), inverse temperature beta, and state x, the equilibrium distribution is pi^H(x)=exp(-beta H(x))/Z_H, where Z_H=sum_x exp(-beta H(x)). For an arbitrary distribution rho, the excess free energy satisfies F_H(rho)-F_H(pi^H)=beta^{-1}D_KL(rho||pi^H), so nonequilibrium error is measured by KL divergence. For a differentiable path p_theta(x), the Fisher-Rao line element is ds^2=dtheta^T I(theta)dtheta, where I(theta)=E_{x~p_theta}[grad_theta log p_theta(x) grad_theta log p_theta(x)^T] is the Fisher information matrix. The paper's finite-protocol result states that optimal intermediary equilibria converge to a Fisher-Rao geodesic as the number N of intermediary states increases. Thus choose theta_k so that the arc lengths Delta s_k are approximately equal, with Delta s_k approximately L/N and L=int_0^1 sqrt(theta'(u)^T I(theta(u))theta'(u))du. Locally, KL(p_{theta_k}||p_{theta_{k+1}})=1/2 Delta s_k^2+O(Delta s_k^3), so equal arc-length spacing gives cumulative leading-order mismatch approximately L^2/(2N), whereas a nonuniform parameter schedule wastes steps in low-curvature regions.",
 "math_tags": [
  "statistical-mechanics",
  "information-theory",
  "geometry",
  "stochastic-processes",
  "dynamical-systems"
 ],
 "ml_areas": [
  "diffusion-sampling",
  "scheduler",
  "training-dynamics"
 ],
 "paper": {
  "arxiv_id": "2608.25207",
  "arxiv_url": "https://arxiv.org/abs/2608.25207",
  "summary_what_math_gives_to_ml": "The paper provides a constructive finite-protocol mechanism: when a system can only perform a finite number of quench-relax steps, intermediary distributions should be chosen to minimize total dissipated work rather than spaced uniformly in the control parameter. In the large-step limit, the optimal protocol approaches a Fisher-Rao geodesic, while finite-step corrections are characterized by a Lambert-function recurrence. A transferable neural-network version is an adaptive annealing or diffusion-sampling schedule that places intermediary distributions at approximately equal Fisher-Rao distance and allocates more relaxation computation where the distribution changes rapidly, predicting inverse-square local discretization error and approximately inverse-linear cumulative dissipation.",
  "title": "Finite relaxation protocols with minimal dissipation",
  "year": "2026"
 },
 "ratings": {
  "difficulty": 5,
  "novelty": 7,
  "usefulness": 7
 },
 "solves": [
  "speedup",
  "stability",
  "sample-efficiency"
 ],
 "title": "Fisher-Geodesic Finite-Step Annealing",
 "url": "https://synthcore.org/idea/2733/fisher-geodesic-finite-step-annealing",
 "verification": {
  "benchmark": {
   "track": "fisher_multitoken_denoising",
   "model": "custom_denoiser",
   "n_seeds": 8,
   "metric_direction": "lower is better",
   "comparison": {
    "baseline_mean": 0.3756636306643486,
    "idea_mean": 0.38846133276820183,
    "delta_mean": 0.012797702103853226,
    "per_seed_diffs": [
     -0.01199185848236084,
     0.01753261685371399,
     0.018043488264083862,
     0.01166832447052002,
     0.01596081256866455,
     0.02332329750061035,
     0.001748502254486084,
     0.026096433401107788
    ],
    "idea_wins": 1,
    "n_pairs": 8,
    "p_value": 0.03075,
    "mde": 0,
    "mde_rel_pct": null,
    "verdict": "idea worse (significant)",
    "system_worked": false
   },
   "baseline": {
    "best_cfg": {
     "lr": 0.003,
     "smax": 1
    },
    "sweep": null,
    "full": {
     "mean": 0.3756636306643486,
     "std": 0.0827197936263635,
     "per_seed": [
      0.29077786207199097,
      0.32696259021759033,
      0.3145223557949066,
      0.2919705808162689,
      0.4482685327529907,
      0.4811434745788574,
      0.5064208507537842,
      0.34524279832839966
     ],
     "n": 0
    }
   },
   "idea": {
    "mean": 0.38846133276820183,
    "std": 0.08522182674569097,
    "per_seed": [
     0.2787860035896301,
     0.3444952070713043,
     0.3325658440589905,
     0.30363890528678894,
     0.4642293453216553,
     0.5044667720794678,
     0.5081693530082703,
     0.37133923172950745
    ],
    "n": 0
   },
   "mechanism_signature": {
    "confirmed": true,
    "observed_parameter_path_linear_kl_cv": 0.6206565234045026,
    "predicted_equal_arc_local_kl_cv": 0.0000017439286709141664,
    "trained_model_stage_behavior": {
     "fisher_stage_error_cv": 0.4789595501048241,
     "linear_stage_error_cv": 0.610444495224178
    }
   },
   "custom_track": {
    "domain": "diffusion-sampling",
    "file": "fisher_bench_track.py",
    "name": "fisher_multitoken_denoising"
   }
  },
  "mechanism_confirmed": true,
  "peer_reviewed": false,
  "practical_verdict": "harms",
  "stage1_mechanism_check": {
   "worked": true,
   "confidence": 9,
   "verdict": "The Fisher identity matched Monte Carlo within 0.066%. Equal-Fisher spacing reduced local-KL coefficient of variation to approximately zero, versus 0.406 to 4.531 for linear spacing, and the widest-range cumulative KL approached the predicted L^2/(2N) scaling.",
   "metrics": {
    "baseline": "Linear variance schedule: widest-range N=32 cumulative KL was 3.90 times the geodesic result; fitted cumulative-KL exponent was -0.478 over N=16..128.",
    "idea": "Equal-Fisher-arc geometric-variance schedule: local-KL CV below 4e-15; fitted exponent -0.950 over N=16..128; N*KL=8.966 at N=2048 versus predicted 8.974."
   },
   "how_to_run": "python3 fisher_annealing_toy.py \u0026\u0026 python3 extra_check.py",
   "files": [
    "fisher_annealing_toy.py",
    "toy_results.json",
    "toy_results.csv",
    "extra_check.py"
   ],
   "limitations": "Only a one-dimensional exact Gaussian path was tested. No neural diffusion model, Langevin relaxation, FID, runtime, noisy Fisher estimation, or multidimensional learned-energy experiment was tested."
  },
  "status": "mech_ok_no_baseline",
  "status_label": "Mechanism confirmed, baseline not beaten",
  "updated_at": "2026-09-02T12:30:10",
  "verdict_source": "deterministic test code (paired-seed permutation statistics)",
  "verification_axes": {
   "benchmark_mechanism": {
    "confirmed": true,
    "tested": true
   },
   "practical_benchmark": {
    "beats_baseline": false,
    "tested": true,
    "verdict": "harms"
   },
   "toy_mechanism_gate": {
    "confirmed": true,
    "tested": true
   }
  }
 }
}
