042 — Perturbations: gamma gates rates not just mean inhibition

Abstract

nb025’s rate gap admits a cheap reading: PING fires less because the I-loop delivers more inhibition. This entry forecloses that reading and identifies what about the I-stream is doing the suppressing — qualitatively (rhythm vs mean), and quantitatively (which temporal precision is required). Scaffolded by ar009 §Leg 1 item 2.

Methods

Pure inference on the trained nb025 PING baseline (seed 42, θu=\theta_u = off). For each batch the I-population spike tensor sbaseI{0,1}T×B×NI\mathbf{s}^I_\text{base} \in \{0,1\}^{T \times B \times N_I} is recorded from a baseline forward pass, then an override tensor replaces it in a second pass via the nb037 hidden-perturbation hook. The E-population experiences only the override I-stream through WIEW^{IE}; the readout consumes the perturbed E spikes. Mean per-cell I rate is matched to the baseline to four decimals across every perturbation.

Four perturbation families:

  1. Baseline — no override; trained PING dynamics.
  2. Cycle-coherent jitter — partition the trial into blocks of length 1/fγ1/f_\gamma (28\approx 28 ms at the trained operating point from nb041). For each (trial, block), draw a single Gaussian offset ΔN(0,σ2)\Delta \sim \mathcal{N}(0, \sigma^2) and shift every I-spike in that block by Δ\Delta. Within-burst cross-cell synchrony preserved exactly; only the placement of each burst is perturbed. Sweep σ{0,1,3,7,14,21,28,42,60,100}\sigma \in \{0, 1, 3, 7, 14, 21, 28, 42, 60, 100\} ms.
  3. Phase-shuffle — per-trial permutation πb\pi_b of the time axis applied to all I-cells together: sshufI[t,b,n]=sbaseI[πb(t),b,n]\mathbf{s}^I_\text{shuf}[t, b, n] = \mathbf{s}^I_\text{base}[\pi_b(t), b, n]. Preserves cross-cell co-firing within a timestep; destroys all phase structure.
  4. Rate-matched Poisson — per-(trial, cell) Bernoulli with p=countb,n/Tp = \text{count}_{b,n} / T. Destroys both temporal and cross-cell structure; tests the gig_i variance limit.

Test split from nb025 at medium tier (400 samples, T=200T = 200 ms, Δt=0.1\Delta t = 0.1 ms, batch 64).

Results

The argument is built in two stages, each identifying a separate architectural variable that holds the rate floor. (1) Cycle-coherent jitter sweeps the burst placement axis and finds the operative timescale is 1/fγ1/f_\gamma. (2) Per-I-cell jitter sweeps the within-burst synchrony axis and finds destroying synchrony silences E (rather than releasing it), with a much sharper sub-millisecond transition. Each sweep absorbs the corresponding categorical endpoint: full phase-shuffle is the σ\sigma \to \infty limit of cycle-coherent jitter; rate-matched Poisson is the σ\sigma \to \infty limit of per-cell jitter.

1. Cycle-coherent jitter — the sweep identifies the operative timescale

Take the trained PING network and apply cycle-coherent jitter to the I-stream at inference: partition the trial into blocks of one gamma cycle, draw a single Gaussian offset ΔN(0,σ2)\Delta \sim \mathcal{N}(0, \sigma^2) per block, and shift every I-spike in that block by Δ\Delta. Within-burst synchrony is preserved exactly — bursts move bodily, they do not smear — and the mean I rate is unchanged. At σ=0\sigma = 0 this is the baseline; as σ\sigma grows, bursts are displaced from their phase-locked slots until their placement is decoupled from the gamma cycle. If the operative variable is temporal phase relative to the gamma cycle, the relevant timescale is the cycle period 1/fγ1/f_\gamma. At the trained operating point (τGABA=9\tau_\text{GABA} = 9 ms), nb041 gives fγ36f_\gamma \approx 36 Hz, predicting the transition at σ28\sigma \approx 28 ms.

Figure 1. Cycle-coherent jitter sweep — E rate vs σ
E rate (black) and accuracy (red) as Gaussian jitter σ is swept from 0 to 100 ms. E rate sits at the ≈ 8 Hz baseline for σ ≤ 1 ms, transitions through 16 Hz at σ = 7 ms and 26 Hz at σ = 14 ms, crosses the full-phase-shuffle reference line of ≈ 29 Hz between σ = 14 and 21 ms, and rises to ≈ 49 Hz at σ = 100 ms. Accuracy stays at 79–86% throughout. A vertical dotted line at σ ≈ 28 ms marks the predicted inflection 1/f_γ at the trained operating point.

E rate (black) and accuracy (red) vs cycle-coherent jitter σ\sigma, seed 42. Horizontal dashed lines mark the baseline rate (8\approx 8 Hz) and the full phase-shuffle ceiling (29\approx 29 Hz, the σ\sigma \to \infty asymptote with within-burst structure destroyed). Vertical dotted line at σ=1/fγ28\sigma = 1/f_\gamma \approx 28 ms — the predicted transition timescale.

Figure 2. Single-trial rasters across the jitter sweep
Five stacked single-trial raster panels for cycle-coherent jitter σ values 0, 7, 14, 28, 100 ms. Each panel shows E spikes (black) and I spikes (red) over the 200 ms trial. At σ = 0 the gamma bands are clean with bursts every ≈ 28 ms. The I-bursts remain crisp vertical bands at every σ — their within-burst synchrony is preserved — but the bands are bodily displaced from their phase-locked positions. At σ = 7 ms bursts are visibly shifted by a few ms. At σ = 14 ms shifts of tens of ms decouple bursts from the cycle and open long gaps in the I-stream, through which E fires densely. At σ = 28 and 100 ms the bursts land at essentially random times across the trial and adjacent bursts can overlap.

Single trial replayed at five jitter levels (seed 42, MNIST digit 0 sample 0). Per-trial E rate annotated on each panel. The I-bands stay vertical and crisp at every σ\sigma — within-burst synchrony is preserved exactly. What changes is where each burst lands: at larger σ\sigma the bursts get displaced bodily from their phase-locked positions, opening longer gaps in the I-stream that E fires through.

The curve matches the prediction. The rate is flat for σ1\sigma \le 1 ms (8\approx 8 Hz, baseline). The transition is centred between σ=7\sigma = 7 ms and σ=28\sigma = 28 ms, crossing the phase-shuffle ceiling (29\approx 29 Hz) between σ=14\sigma = 14 and σ=21\sigma = 21 ms — just below the predicted inflection. At σ=100\sigma = 100 ms the rate has reached 49\approx 49 Hz, above the phase-shuffle level because cycle-coherent jitter at very large σ\sigma opens gaps in the I-stream wide enough for E to fire densely with no inhibition at all. Accuracy holds at 79–86% throughout — the rate release is not paid in classification.

What this gets us, beyond the binary “rhythm matters”:

  1. Identifies the operative timescale. If a different process — refractory dynamics (3\sim 3 ms), membrane time constant (20\sim 20 ms), AMPA decay (2\sim 2 ms) — were the operative clock, the inflection would be elsewhere. It is at 1/fγ1/f_\gamma.
  2. The dependence is graded, not knife-edge. The I-loop tolerates sub-cycle jitter and degrades smoothly past it.
  3. Full phase-shuffle is the σ\sigma \to \infty asymptote of the jitter sweep, modulo within-burst structure (which is why the σ=100\sigma = 100 ms jitter rate slightly exceeds the phase-shuffle ceiling line — at very large σ\sigma cycle-coherent jitter opens gaps in the I-stream wide enough for E to fire densely with no inhibition at all).
  4. The transition timescale is a quantitative prediction. 1/fγ1/f_\gamma is set by nb041’s law. The same architecture trained at a different τGABA\tau_\text{GABA} would give a different fγf_\gamma, and the jitter inflection should track it accordingly.

2. Per-I-cell jitter — within-burst synchrony is a separate axis

The cycle-coherent sweep moves bursts as whole units, preserving within-burst synchrony exactly. The complementary perturbation is per-spike (per-I-cell) jitter: draw an independent Gaussian offset ΔsN(0,σ2)\Delta_s \sim \mathcal{N}(0, \sigma^2) for every I-spike. Mean per-cell I rate is preserved exactly, burst placement is preserved on average, but the burst itself smears across a window of width ≈ σ\sigma. This tests whether the sharpness of each inhibitory pulse matters, separately from where it lands.

Prediction: if synchrony also matters, the transition should be at στGABA9\sigma \approx \tau_\text{GABA} \approx 9 ms — the smearing width at which the integrated gig_i profile starts looking continuous, the same way a rate-matched Poisson I-stream keeps E silent because gig_i never drops low enough for VV to recover.

Figure 3. Per-I-cell jitter sweep — E rate and accuracy vs σ
Twin-axis plot of per-I-cell jitter sweep, linear x-axis 0 to 50 ms. Black diamonds (left y-axis, Hz): E rate falls from ≈ 7 Hz at σ=0 to 3.5 Hz at σ=0.5, 1.5 Hz at σ=1, 0.5 Hz at σ=2, and effectively zero from σ=5 ms onward. Red squares (right y-axis, %): test accuracy holds at ≈ 85% up to σ=1 ms, then drops sharply through σ=2 ms (71%) and σ=5 ms (26%), reaching chance (≈ 10%) by σ=9 ms. Horizontal dashed lines mark the baseline rate (≈ 8 Hz) and the rate-matched Poisson asymptote (≈ 0 Hz). Vertical dotted line at τ_GABA = 9 ms marks the predicted transition timescale.

Per-I-cell jitter sweep, three seeds. Each spike receives an independent Gaussian offset; mean per-cell I rate is preserved exactly. E rate (cyan, left axis) falls monotonically from baseline — already halved by σ=0.5\sigma = 0.5 ms — and is essentially zero by σ5\sigma \approx 5 ms, well below τGABA=9\tau_\text{GABA} = 9 ms. Accuracy (red, right axis) holds at ≈ 85% up to σ=1\sigma = 1 ms, then collapses through 71% (σ = 2) and 26% (σ = 5), bottoming at chance (≈ 10%) by σ=9\sigma = 9 ms. The σ\sigma \to \infty asymptote is the rate-matched Poisson regime: E silent, accuracy at chance.

Figure 4. Per-I-cell jitter rasters — bursts smearing into a continuous shunt
Five stacked single-trial raster panels for per-I-cell jitter σ values 0, 1, 5, 9, 50 ms. Each panel shows E spikes (black) and I spikes (red) over 200 ms. At σ=0 the gamma bands are crisp with sharp vertical I-bursts and periodic E firing. At σ=1 ms the I-spikes within each burst spread to a few-ms-wide cluster and E firing drops. At σ=5 ms the I-spikes are scattered across the trial with no visible burst structure, and E is essentially silent. At σ=9 ms and σ=50 ms the I-stream looks continuous and uniform, and E fires zero spikes.

Single trial replayed at five per-cell jitter levels. At σ=0\sigma = 0 the I-bursts are crisp vertical bands. At σ=1\sigma = 1 ms the bursts visibly smear into a few-ms-wide cluster and E firing already collapses to 1.6 Hz. At σ5\sigma \ge 5 ms the I-stream looks indistinguishable from a continuous low-variance shunt, and E is silenced. Per-cell jitter doesn’t release E; it destroys the bursty structure that gave E recovery troughs in the first place.

The clean reading: the two jitter regimes test two different things, and the rate floor depends on both.

  • Burst placement (cycle-coherent jitter): bursts must land in phase with E activity, with precision ≈ 1/fγ1/f_\gamma. Destroying placement releases E toward COBA territory.
  • Burst sharpness (per-cell jitter): bursts must be sharp enough that gig_i has clear troughs between them, with smear width τGABA\ll \tau_\text{GABA}. Destroying sharpness silences E because gig_i never drops low enough.

Discussion

The rate floor is held by two independent properties of the I-stream, each tied to a separate transition timescale:

  • Burst placement on the gamma cycle, with precision σ1/fγ28\sigma \approx 1/f_\gamma \approx 28 ms. Destroying placement releases E toward COBA territory (cycle-coherent jitter sweep; full phase-shuffle is the σ\sigma \to \infty asymptote).
  • Within-burst synchrony / burst sharpness, with precision στGABA9\sigma \ll \tau_\text{GABA} \approx 9 ms — in practice the transition is at σ0.5\sigma \approx 0.5 ms. Destroying sharpness silences E because gig_i becomes a continuous shunt with no recovery troughs (per-I-cell jitter sweep; rate-matched Poisson is the σ\sigma \to \infty asymptote).

Mean inhibition is not the operative variable along either axis. Cycle-coherent jitter at σ=100\sigma = 100 ms releases E to ≈ 49 Hz; per-cell jitter at σ=50\sigma = 50 ms silences E entirely — at identical mean I rates. The “rhythm matters” claim resolves into two more precise claims: bursts must land on phase, and bursts must be sharp.

This integrates with nb041 in a clean way. nb041 retrains PING at different τGABA\tau_\text{GABA} and finds rE=a+pfγr_E = a + p \cdot f_\gamma. nb042 (jitter sweep) is the inference-time analogue: keep the trained network, degrade the temporal precision of its I-stream, and watch the rate rise. The transition timescale 1/fγ1/f_\gamma is set by the same architectural variable that sets the slope of the affine law. Two perturbations through different doors give the same answer: the gamma cycle is the operative clock.

Open question

The jitter sweep’s σ=100\sigma = 100 ms endpoint (49\approx 49 Hz) exceeds the phase-shuffle ceiling (29\approx 29 Hz) and approaches COBA-territory firing. The mechanism (gaps in the I-stream let E fire densely) is mechanistically clear, but the quantitative match between σ=\sigma = \infty jitter and trained-COBA rates would require comparing matched-rate operating points. Worth probing if the architecture-equivalence claim from nb038 is to be tightened.

Next steps

For ar010: the jitter sweep is now the load-bearing perturbation result. The categorical bar chart becomes a supporting endpoint comparison. A follow-up worth doing — but not on ar010’s critical path — is to retrain PING at a different τGABA\tau_\text{GABA} (say 4.5 ms, giving fγ54f_\gamma \approx 54 Hz) and re-run the jitter sweep; the predicted transition should now sit at σ18\sigma \approx 18 ms. If the inflection tracks 1/fγ1/f_\gamma as τGABA\tau_\text{GABA} varies, the quantitative law is independently confirmed by the inference-time experiment.