June 15th lab meeting presentation

Equations Summary

E neurons (driven by feedforward input and inhibitory feedback):

(i)ge,t+1E=αge,tE+Winstinp,gi,t+1E=γ(gi,tE+Wiesti)[eqs. 6, 7](ii)gtotE=gL+geE+giE,τeffE=CmgtotE,VE=gLEL+geEEe+giEEigtotE[eqs. 2, 3, 4](iii)Vt+1E=VE+(VtEVE)exp ⁣(Δt/τeffE)membrane(iv)st+1e=1[Vt+1EVth],Vt+1EVreset if st+1e=1 or refractoryspike + reset\begin{aligned} \text{(i)} \quad & g^E_{e,t+1} = \alpha\, g^E_{e,t} + W_{\text{in}}\, s^{\text{inp}}_t, \qquad g^E_{i,t+1} = \gamma\, (g^E_{i,t} + W_{\text{ie}}\, s^i_t) & \text{[eqs.\ 6, 7]} \\[0.7em] \text{(ii)} \quad & g^E_{\text{tot}} = g_L + g^E_e + g^E_i,\quad \tau^E_{\text{eff}} = \frac{C_m}{g^E_{\text{tot}}},\quad V^E_\infty = \frac{g_L E_L + g^E_e E_e + g^E_i E_i}{g^E_{\text{tot}}} & \text{[eqs.\ 2, 3, 4]} \\[0.7em] \text{(iii)} \quad & V^E_{t+1} = V^E_\infty + (V^E_t - V^E_\infty)\, \exp\!\left(-\Delta t / \tau^E_{\text{eff}}\right) & \text{membrane} \\[0.7em] \text{(iv)} \quad & s^e_{t+1} = \mathbb{1}[V^E_{t+1} \geq V_{\text{th}}],\quad V^E_{t+1} \leftarrow V_{\text{reset}} \text{ if } s^e_{t+1}=1 \text{ or refractory} & \text{spike + reset} \end{aligned}

I neurons (driven by excitatory feedback only; no inhibitory input):

(i)ge,t+1I=α(ge,tI+Weiste)[eq. 8](ii)gtotI=gL+geI,τeffI=CmgtotI,VI=gLEL+geIEegtotI[eqs. 2, 3, 4](iii)Vt+1I=VI+(VtIVI)exp ⁣(Δt/τeffI)membrane(iv)st+1i=1[Vt+1IVth],Vt+1IVreset if st+1i=1 or refractoryspike + reset\begin{aligned} \text{(i)} \quad & g^I_{e,t+1} = \alpha\, (g^I_{e,t} + W_{\text{ei}}\, s^e_t) & \text{[eq.\ 8]} \\[0.7em] \text{(ii)} \quad & g^I_{\text{tot}} = g_L + g^I_e,\quad \tau^I_{\text{eff}} = \frac{C_m}{g^I_{\text{tot}}},\quad V^I_\infty = \frac{g_L E_L + g^I_e E_e}{g^I_{\text{tot}}} & \text{[eqs.\ 2, 3, 4]} \\[0.7em] \text{(iii)} \quad & V^I_{t+1} = V^I_\infty + (V^I_t - V^I_\infty)\, \exp\!\left(-\Delta t / \tau^I_{\text{eff}}\right) & \text{membrane} \\[0.7em] \text{(iv)} \quad & s^i_{t+1} = \mathbb{1}[V^I_{t+1} \geq V_{\text{th}}],\quad V^I_{t+1} \leftarrow V_{\text{reset}} \text{ if } s^i_{t+1}=1 \text{ or refractory} & \text{spike + reset} \end{aligned}
Symbols
  • VtE,VtIV^E_t, V^I_t — membrane potential of E and I populations at step tt (mV)
  • geE,giEg^E_e, g^E_i — excitatory / inhibitory conductances on E neurons (µS)
  • geIg^I_e — excitatory conductance on I neurons (µS); I receives no inhibition
  • gtot,τeff,Vg_{\text{tot}}, \tau_{\text{eff}}, V_\infty — per-step aggregate conductance, effective membrane time constant, steady-state voltage
  • CmC_m — membrane capacitance (1.0 nF on E, 0.5 nF on I)
  • gL,ELg_L, E_L — leak conductance (0.05 µS on E, 0.1 µS on I) and reversal potential (−65 mV)
  • Ee,EiE_e, E_i — synaptic reversal potentials (0 mV, −80 mV)
  • Vth,VresetV_{\text{th}}, V_{\text{reset}} — spike threshold (−50 mV) and reset voltage (−65 mV)
  • τrefe,τrefi\tau_{\text{ref}}^e, \tau_{\text{ref}}^i — refractory periods (3 ms, 1.5 ms)
  • α=eΔt/τAMPA\alpha = e^{-\Delta t / \tau_{\text{AMPA}}} — per-step AMPA decay factor (τAMPA=2\tau_\text{AMPA} = 2 ms)
  • γ=eΔt/τGABA\gamma = e^{-\Delta t / \tau_{\text{GABA}}} — per-step GABA decay factor (τGABA=9\tau_\text{GABA} = 9 ms)
  • Win,Wei,WieW_{\text{in}}, W_{\text{ei}}, W_{\text{ie}} — feedforward (trained), E→I, and I→E weight matrices (Wei1W_{\text{ei}} \approx 1 µS, Wie2W_{\text{ie}} \approx 2 µS at PING init s=1s = 1)
  • stinp,ste,stis^{\text{inp}}_t, s^e_t, s^i_t — input, excitatory, and inhibitory spike trains at step tt
  • Δt\Delta t — integration timestep (0.1 ms)

Architectures

Figure 1. PING network architecture
Schematic of the PING network: an input layer projects through W_in to the excitatory (E) population; E projects to the inhibitory (I) population through W_ei, and I projects back to E through W_ie, forming the recurrent E→I→E loop. There is no I→I synapse.

The PING architecture. An input layer drives the excitatory population through WinW_\text{in}; the E→I→E loop is formed by WeiW_\text{ei} (E to I) and WieW_\text{ie} (I back to E), with no I→I synapse. Disabling the I→E loop (ei-strength 0) recovers the COBA reference; engaging it (ei-strength 1.5) produces the gamma rhythm.


COBA Fundamentals

Figure 2. COBA — ei-strength 0 (no recurrent inhibition)
Two-panel figure. Top: E spike raster across 400 ms, asynchronous firing across the population, no I-population activity (loop disabled). Bottom: Welch PSD on the population-mean E spike trace over 5–150 Hz. No isolated gamma peak — the spectrum has scattered weak peaks driven by the feedforward input structure, not by a recurrent cycle.

Baseline: recurrent inhibitory loop silent (—ei-strength 0). The E raster fires asynchronously across the full 400 ms; the I population is silent. The Welch PSD on the population-mean E trace shows no isolated gamma peak — only the broadband structure of input-driven asynchronous firing. This is the “PING off” reference.

Figure 3. COBA — E-neuron membrane voltage
V_E (black) for one E neuron over 400 ms with the recurrent loop off (COBA). V_E charges toward threshold V_th = −50 mV (faint dashed) and hard-resets to V_reset = −65 mV at each spike, with no rhythmic envelope.

Membrane voltage VEV_E (black) of the most active E cell, recurrent loop off (COBA, ei-strength 0). Driven only by feedforward input, the cell charges toward threshold (Vth=50V_\text{th} = -50 mV, faint dashed) and hard-resets to Vreset=65V_\text{reset} = -65 mV each spike — irregular, input-paced firing with no rhythmic structure.

Figure 4. COBA — E-neuron conductances
Conductances on the E neuron in COBA mode: g_E (black) and g_L (faint dotted), both non-negative. No g_I trace because the I→E loop is disabled.

Synaptic and leak conductances on the same E cell, COBA mode. Only the excitatory conductance gEg_E (black) is active — it steps up with each input spike and decays with τAMPA\tau_\text{AMPA} — while the leak gLg_L (faint dotted) is fixed. There is no inhibitory gIg_I because the I→E loop is off. All conductances are non-negative: they count open channels, not current direction or sign.

Figure 5. COBA — E-neuron signed currents
Signed currents into the E neuron in COBA mode: I_E in (black, positive = depolarising), I_L (faint dotted, near zero). No I_I trace because the loop is off.

Signed synaptic currents into the E cell, COBA mode, with IXin=gX(VEX)I_X^\text{in} = -g_X (V - E_X) (positive = depolarising). With no inhibition, the only synaptic current is the depolarising excitatory current IEinI_E^\text{in} (black); the leak current (faint) hovers near zero.


PING Fundamentals

Figure 6. PING — E-neuron membrane voltage
V_E (black) for one E neuron with the recurrent loop on (PING). Rhythmic inhibitory bursts hold V_E below threshold, dragging it toward −80 mV each cycle; it recovers and may fire only as g_i decays between bursts.

Membrane voltage VEV_E (black) of the most active E cell, recurrent loop on (PING, ei-strength 1.5), same input as the COBA panel. Rhythmic inhibitory bursts hold the cell below threshold most of the time: each I-burst drags VEV_E toward Ei=80E_i = -80 mV, and the membrane recovers — and can fire — only as inhibition decays between bursts. The loop turns the irregular firing of Figure 3 into cycle-gated firing.

Figure 7. PING — E-neuron conductances
Conductances on the E neuron in PING mode: g_I (red) in large rhythmic bursts, g_E (black, small), g_L (faint dotted). All non-negative; g_I dominates and oscillates at the gamma cadence.

Conductances on the same E cell, PING mode. The inhibitory conductance gIg_I (red) now dominates — it spikes once per gamma cycle as the synchronous I-burst arrives through WieW_\text{ie}, then decays with τGABA\tau_\text{GABA} — while gEg_E (black) carries the smaller feedforward input and gLg_L (faint) is fixed. All three traces are non-negative: gIg_I is large and positive, and that is what shunts the cell — it carries no sign of its own.

Figure 8. PING — E-neuron signed currents (the load-bearing panel)
Signed currents into the E neuron in PING mode: I_E in (black, positive = depolarising), I_I in (red, negative = hyperpolarising) with sharp downward pulses at each I-burst, I_L (faint dotted, near zero). I_I is negative even though g_I is positive — the sign is from (V − E_i) > 0.

The load-bearing panel. The excitatory current IEin=gE(VEE)I_E^\text{in} = -g_E(V - E_E) (black) is depolarising. The inhibitory current IIin=gI(VEI)I_I^\text{in} = -g_I(V - E_I) (red) is negative (hyperpolarising) even though gIg_I is positive (Figure 7) — the minus sign comes entirely from the driving force (VEI)>0(V - E_I) > 0 whenever VV sits above Ei=80E_i = -80 mV. The COBA principle made literal: the sign lives in the driving force, never in the conductance.

Figure 9. PING — I-neuron membrane voltage
V_I (red) for one I neuron in PING mode. V_I ramps up with the E-burst volley, crosses threshold V_th = −50 mV, resets, and fires once per gamma cycle.

Membrane voltage VIV_I (red) of the most active I cell, PING mode. The I cell integrates the excitatory volley from the E population and fires once per gamma cycle, so VIV_I tracks the E-burst envelope — ramping up as E cells fire, crossing threshold, resetting, and waiting for the next volley. This single I-spike per cycle delivers the inhibitory burst seen on the E cell in Figures 7–8.

Figure 10. PING — I-neuron conductances
Conductances on the I neuron: g_E (black) tracking the E-spike envelope, g_L (faint dotted) fixed. No g_I because the I neuron receives no inhibition.

Conductances on the I cell, PING mode. The I cell receives only excitation: gEg_E (black) is the arriving E-spike envelope (via WeiW_\text{ei}) and gLg_L (faint) is the fixed leak. There is no inhibitory conductance — the architecture has no I→I synapse — which is exactly why the I population can synchronise into the sharp once-per-cycle bursts that clock the loop.

Figure 11. PING — I-neuron signed currents
Signed currents into the I neuron in PING mode: only I_E in (black, positive = depolarising) and a small leak current. No I_I trace because the I neuron receives no inhibition.

Signed currents into the I cell, PING mode. With no inhibitory input, only the depolarising excitatory current IEinI_E^\text{in} (black) and a small leak current contribute. Read Figures 6–11 together and the loop is in cross-section: E spikes ramp gEg_E on I (Figures 10–11) → I fires once per cycle (Figure 9) → that spike delivers the inhibitory burst gIg_I on E (Figure 7) → its negative current shuts E down (Figures 8, 6) → gIg_I decays → E refires. That delayed E→I→E loop is PING.

Note the harmonics: the Fourier transform of a comb is another comb.


Frequency–current (f-I) curves

Figure 12. Population f-I curves under uniform Poisson input
Two-panel figure, both panels on the same y-axis (0 to ≈ 320 Hz). Left (COBA, no I-loop): E rate (black, circles) climbs steeply and saturates toward ≈ 310 Hz at 100 Hz input; I rate (red) flat at zero. Right (PING, I-loop active): E rate (black) held low, reaching only ≈ 30 Hz at 100 Hz input, while I rate (red, squares) and the E+I total (amber dashed) climb to ≈ 155 and ≈ 185 Hz — far below COBA's E. On the shared scale the PING curves sit in the lower fifth of the axis.

Population f-I curves — mean per-cell firing rate vs input Poisson rate — for trained COBA (left) and trained PING (right) under spatially uniform input (all 784 channels at the same rate, no digit structure), both panels on a shared y-axis. COBA: E (black) climbs steeply and saturates toward its refractory ceiling (≈ 310 Hz at 100 Hz input), I (red) flat at zero. PING: a recruitment cliff at low input, after which E is held ≈ 10× lower than COBA across the range — only ≈ 30 Hz at 100 Hz input. The I curve and E+I total ride above the E curve: I fires harder than E to suppress it. The function of PING — dynamic-range compression, folding drive that would saturate E into a bounded gamma cadence.


Training

Figure 13. Trained-baseline single-trial rasters: COBA (top) vs PING (bottom)
Two-panel raster figure with shared x-axis (time, 0 to 400 ms). Top panel: trained COBA (recurrent inhibitory loop disabled, ei-strength = 0). Dense asynchronous E firing across all 1024 cells over the entire 400 ms trial; I population labelled silent because W^ei and W^ie are both zero. Bottom panel: trained PING (recurrent inhibitory loop active, ei-strength = 1). E population (1024 cells, black) shows vertical bands at ≈ 28 ms gamma cadence — most cells silent between bursts. I population (256 cells, red, shown above E) shows synchronous bursts trailing each E-burst by a short AMPA delay.

Trained COBA (top, —ei-strength 0) and trained PING (bottom, —ei-strength 1) replayed on the same MNIST digit 0 over 400 ms. Same architecture, same trainable-parameter count, same recipe. Only difference: PING’s recurrent E ↔ I matrices are non-zero. COBA fires asynchronously at ≈ 96 Hz; PING fires in gamma bands at ≈ 28 ms cadence with ≈ 10 Hz mean per E cell, the I population firing synchronous bursts trailing each E-burst.

Figure 14. Accuracy vs mean firing rate
Bar chart: per-model final test accuracy and mean hidden-E firing rate at θ_u = off.

Final test accuracy (solid) and mean hidden-E firing rate (hatched), per model, at the unregularised baseline. PING: 89.33% at 10.20 Hz E rate. COBA: 90.17% at 96.56 Hz E rate — comparable accuracy, ≈ 9.5× fewer E spikes per cell.

Figure 15. Learning curves
Train loss and test accuracy per epoch, one curve per model at θ_u = off.

Per-epoch train loss and test accuracy for each baseline model, averaged over three seeds. Both models descend at similar pace and finish within ≈ 0.5 pp.

Figure 16. Accuracy / rate frontier
Test accuracy vs hidden-E firing rate, one curve per model; each point one (model, θ_u).

Test accuracy vs achieved hidden-E rate; one point per spike-budget level. COBA traces a curve from ≈ 96 Hz down to ≈ 0 Hz, costing ≈ 28 pp accuracy. PING spans only 3.7–9.9 Hz across every θu\theta_u — the penalty has bounded leverage and never pushes the network into COBA’s territory.

Figure 17. Decomposing the rate floor: θ_u acts on f_γ, p is architecturally protected
Four-panel decomposition vs θ_u (Hz, x-axis inverted so tightest penalty sits at the right). Top-left: per-cycle participation p stays in the 0.19–0.24 band across the entire θ_u sweep for PING. Top-right: gamma frequency f_γ drops smoothly from ≈ 37 Hz at the loosest penalty to ≈ 15 Hz at the tightest. Bottom-left: PING measured E rate (black) overlays p × f_γ predicted (amber dashed); COBA E rate (red) climbs from ≈ 1 Hz at the tightest penalty to ≈ 23 Hz at the loosest. Bottom-right: PING accuracy holds at 83–87% across the entire sweep; COBA accuracy falls from 83% to 61%.

pp stays in 0.19–0.24 across the entire sweep — the architecture protects the participation gate. fγf_\gamma slides from ≈ 37 Hz to ≈ 15 Hz as the penalty tightens — the optimiser pushes on the oscillator, not on the gate. The pfγp \cdot f_\gamma predicted curve overlays the measured E rate within 4%. PING accuracy holds at 83–87%; COBA’s collapses from 83% to 61%.


Near-strict 1 spike per cycle in PING

Figure 18. P(spikes per E cell per cycle) — by τ_GABA
Six bar-chart panels, one per τ_GABA value. Each panel shows the fraction of (E cell, gamma cycle) pairs with 0, 1, 2, or ≥3 spikes within the cycle window. Across all six panels: P(0) ≈ 77%, P(1) ≈ 22%, P(2) ≈ 0.5%, P(≥3) ≈ 0.04%. The ≥2 fraction grows mildly with τ_GABA (longer cycles allow more multi-spike events) but stays below 3%.

Distribution of E spike count per gamma cycle per cell, by τGABA\tau_\text{GABA}, three seeds aggregated. Across 48 million (cell, cycle) pairs the architecture is overwhelmingly bimodal: each cell emits either zero spikes in a cycle (≈ 77%) or exactly one (≈ 22%). Two-or-more events occur in 0.55% of cycles; three-or-more in 0.04%. The ”≤ 1 spike per E cell per cycle” reading of the affine law is empirically supported — the slope pp is per-cycle Bernoulli participation, not a phenomenological fit parameter.


Frequency vs τGABA\tau_{\text{GABA}}

Figure 19. Trained-network population PSDs — peak marks f_γ
Six PSD curves on a linear y axis, one per τ_GABA value (4.5, 6, 9, 12, 18, 27 ms; viridis colormap), x-axis frequency 5–150 Hz. Each curve has a clear peak in the gamma band, marked with a dot at the parabolic-interpolated peak frequency.

Trial-mean Welch PSDs by τGABA\tau_\text{GABA}. Dots mark the parabolic-interpolated peak. Peak shifts cleanly from ≈ 14 Hz at τGABA=27\tau_\text{GABA} = 27 ms to ≈ 54 Hz at τGABA=4.5\tau_\text{GABA} = 4.5 ms; no overlap between adjacent conditions.

Figure 20. Retrained τ_GABA sweep — post-training E rate tracks measured f_γ
Top panel: scatter of mean post-training E rate (Hz) vs measured gamma frequency f_γ (Hz). Six clusters, one per τ_GABA value (annotated 4.5–27 ms), three seeds each. Error bars in both dimensions. An affine fit line r_E = 0.76 + 0.216 · f_γ passes through every error bar with R² = 0.997. Bottom panel: test accuracy vs same x-axis — flat at 81–89% across the entire f_γ range. f_γ on the x-axis is the per-trial PSD peak median.

Mean post-training E rate vs fγf_\gamma, six clusters × three seeds, error bars from seed variance. The affine fit rE=0.76+0.216fγr_E = 0.76 + 0.216 \cdot f_\gamma (R2=0.997R^2 = 0.997) passes through every error bar. The slope p0.216p \approx 0.216 is per-cycle participation; the intercept is a non-rhythmic baseline. Accuracy (bottom) stays flat at 81–89% — the rate change is not paid in classification.


Perturbations

Figure 21. 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 (each I-spike given an independent Gaussian offset; mean I rate preserved). At σ=1\sigma = 1 ms the bursts smear into a few-ms cluster and E firing collapses to 1.6 Hz; at σ5\sigma \ge 5 ms the I-stream is a continuous low-variance shunt and E is silenced. Destroying within-burst sharpness silences E.

Figure 22. 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. E rate (left) falls monotonically from baseline — 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 (right) holds at ≈ 85% up to σ=1\sigma = 1 ms then collapses to chance by σ=9\sigma = 9 ms. Within-burst synchrony is a separate axis from burst placement.

Figure 23. Single-trial rasters across the cycle-coherent 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 cycle-coherent jitter levels — whole bursts displaced bodily, within-burst synchrony preserved exactly. The I-bands stay vertical and crisp at every σ\sigma; what changes is where each burst lands. At larger σ\sigma the bursts decouple from the gamma cycle, opening gaps that E fires through.

Figure 24. 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. The rate is flat for σ1\sigma \le 1 ms then transitions, crossing the phase-shuffle ceiling (≈ 29 Hz) near the predicted inflection σ=1/fγ28\sigma = 1/f_\gamma \approx 28 ms (vertical dotted). The operative timescale is the gamma cycle period — destroying burst placement releases E toward COBA territory, while accuracy holds at 79–86%.

Figure 25. Hidden-spike perturbation — accuracy curves
Two-panel accuracy plot, both axes in percentage units. Left: accuracy vs % of emitted spikes dropped (0–100%). PING (black) holds ≈ 82% through 80% drop then collapses to chance by 100%; COBA (red) tracks slightly below, collapsing similarly. Right: accuracy vs added Poisson noise as % of each population's baseline rate (0–100%). PING falls off a sharp cliff between 15% and 50% relative noise, reaching chance by 65%. COBA holds 82–88% through 50% then drifts down to 75% at 100% noise.

Hidden-spike perturbation of trained PING and COBA at inference (nb037). Left (drop): PING tolerates up to ≈ 80% of emitted spikes dropped — the loop compensates because it weakens proportionally rather than phase-corrupting. Right (add): PING collapses on injected Poisson noise between 15% and 50% of baseline rate, while COBA stays at 75% even with 100% extra. Drops forgiven, adds break the gating — the gamma cycle made visible.


COBA → PING I-loop transfer at inference

Figure 26. COBA → PING I-loop transfer at inference
Stacked raster panels showing trained COBA replayed with increasing inference-time ei_strength.

Trained COBA replayed at six inference-time ei_strength values; same trial, same weights, fresh I-loop each row. At ei = 0 the asynchronous-dense COBA pattern persists; by ei ≈ 0.4 the same feedforward weights produce gamma cycles. The PING dynamics come from the inhibitory architecture, not from training.

Figure 27. ei_strength sweep — accuracy
Test accuracy vs inference-time ei_strength on COBA-trained weights, with horizontal lines at the trained COBA baseline and at 10% chance.

Test accuracy vs inference-time ei_strength on trained COBA weights. Accuracy stays within ≈ 12 pp of the COBA baseline across the full range.

Figure 28. ei_strength sweep — E and I rates
Mean E (hidden) and I (inhibitory) population firing rates per test pass versus ei_strength.

Mean E and I rates across the same ei_strength sweep. E rate falls monotonically from ≈ 52 Hz (ei = 0) to ≈ 5 Hz (ei = 1); I rate rises from zero to ≈ 23 Hz. Suppression is continuous in the loop strength — PING gating is a post-hoc sparsity knob.


Sequential MNIST

Figure 29. Streaming digit classification at τ = 50 ms
Four-panel column figure showing streaming digit classification on trained PING. Top: five MNIST digits (5, 6, 0, 7, 3) shown as thumbnails, each labelled with the true and predicted class — all 5/5 correct. Second panel: hidden E raster across 250 ms, showing gamma cycles at ≈ 28 ms cadence; vertical dotted lines mark the 5 segment boundaries. Third panel: hidden I raster, also at gamma cadence. Bottom panel: 10-class readout probability over time; the true-class trace is highlighted thick in its colour and reaches near 1.0 within each segment, with rapid transitions at each digit boundary.

Five sequential digits (5, 6, 0, 7, 3) at τ=50\tau = 50 ms each — ≈ 2 gamma cycles per digit, 250 ms total, no retraining. Gamma cadence (≈ 28 ms) is preserved across the stream. The readout flips to the new digit within one cycle of each transition and reaches near 1.0 by the segment’s end. 5/5 correct.

Figure 30. Varying (τ, input rate) within a single stream
Four-panel column figure. Top: five MNIST digits across 450 ms, each segment labelled with its own (τ, rate) and a class-prediction badge. Digit thumbnails are drawn with opacity scaled to input rate (log-mapped, low rate → faint, high rate → bold) so the drive magnitude is visually encoded. Segments from left to right: (200 ms, 10 Hz) → digit 5; (50 ms, 100 Hz) → digit 3; (100 ms, 25 Hz) → digit 4; (25 ms, 200 Hz) → digit 1; (75 ms, 15 Hz) → digit 7. All five predictions correct. Hidden E and I rasters show gamma cycles throughout, with sparser firing during the weak-drive segments and denser firing during the strong-drive ones. Readout probability traces show clean class identification per segment.

5/5 with (τ,rate)(\tau, \text{rate}) varying within a single stream — durations 25–200 ms, rates 10–200 Hz. Thumbnail opacity ∝ input rate. The sliding window uses each segment’s own τ\tau, so each digit’s prediction respects its presentation window.

Figure 31. Accuracy heatmap across (τ, input rate)
Heatmap of per-segment accuracy across τ ∈ {10, 15, 25, 40, 50, 75, 100, 200} ms (x-axis) and input rate ∈ {5, 10, 25, 50, 100, 200} Hz (y-axis), 48 cells total, averaged over 3 trained seeds × 1200 segments per cell. Magma colormap from 0 to 100%. Lower-left corner (very short τ, low rate): 14% at (10 ms, 5 Hz). Upper-right corner (long τ, high rate): 91% at (200 ms, 200 Hz). The high-accuracy region is broad and the contour is roughly hyperbolic in (τ × rate). The trained baseline cell at (200 ms, 25 Hz) sits at 88%. A sub-cycle failure regime is visible at τ ≤ 15 ms where even the strongest input fails to reach 80%.

48 (τ,input rate)(\tau, \text{input rate}) cells, 3 seeds × 1200 segments per cell. A sub-cycle failure floor appears below τ15\tau \approx 15 ms — the architecture cannot classify within less than one gamma cycle regardless of drive (the cycle is the temporal quantum). Above it, iso-accuracy contours run diagonal: τ\tau and input rate substitute for each other, and the trained (200 ms, 25 Hz) operating point sits interior to a broad plateau.


Videos

Figure 32. Stim-overdrive sweep (scan_overdrive.mp4)

Drive-threshold scan (nb003). Each frame is a fresh simulation on MNIST digit 0; the stim window multiplies the Poisson input rate by the overdrive factor shown on the frame. Three regimes emerge: async baseline (1–1.2×), unstable PING onset (1.2–6×), and stable PING (6× onwards).

Figure 33. Integration-step sweep (scan_dt.mp4)

Integration-step scan (nb005), stim-overdrive pinned firmly inside the stable-PING regime so dt is the only knob that can break the rhythm. Stable until about dt = 1.65 ms; beyond that the whole population saturates after PING onset — integrator instability rather than loss of the rhythm.

Figure 34. Input-rate sweep (scan_input_rate.mp4)

Constant-drive scan (nb004), companion to nb003 with no stim window — the Poisson input rate is flat across the whole run and the sweep walks that single rate from low to high, mapping PING onset as a function of constant input drive with no transient to confound it.

Figure 35. E→I coupling sweep (scan_ei.mp4)

E→I coupling scan (nb006): with drive held fixed, the E→I coupling strength sweeps from the async baseline through the emergence of gamma as the feedback loop closes. No PING until about E→I strength 1.6, then unstable onset from 1.6 onwards.

Figure 36. PING spike movie (spike_movie.mp4)

Spike movie (nb002): one continuous fixed-network run, no scan. Top: two spike grids — the E population (black) and I population (red), each cell filled if it spiked in that frame’s window. Middle: the raster over the whole run, E in black and I stacked above in red. Bottom: the per-channel input rate, a low → high → low square wave across three equal windows. In the low windows the grids twinkle sparsely and I is dark; in the high window both grids flash in synchronous gamma volleys and the raster locks into bands. The clock ignites when drive crosses threshold and extinguishes within a cycle when it falls — gamma is a property of the loop, gated by drive, not of any single cell.


Works in progress, not presented here.

  • When WeiW_{ei} and WieW_{ie} are trainable, network does not discover PING (nb049).
  • Rates dont stabilise across training (nb024).
  • Mean field approximation predictions (nb033).
  • Rate floor of PING under spike penalty under investigation (nb025).
  • Rates vs size of I pool (nb047).
  • Rates and accuracy vs WeiW_{ei} and WieW_{ie} (nb036).