| name | oscillatory-snn-time-delayed-coordination |
| description | Oscillatory Spiking Neural Network with time-delayed coordination inspired by cortical synchronous rhythms. Models cortical oscillations as coordination mechanism gating information flow between spiking populations, enabling structured representations through time-delayed STDP. Activation: oscillatory SNN, cortical rhythm learning, time-delayed spike coordination, brain-inspired SNN learning, synchronous rhythm SNN. |
Oscillatory Spiking Neural Network with Time-Delayed Coordination
Brain-inspired learning mechanism where cortical oscillations serve as a coordination mechanism that gates information flow between spiking neuron populations, enabling the emergence of structured representations through time-delayed spike-timing-dependent plasticity.
Metadata
- Source: arXiv:2605.01656v1
- Authors: Tingting Dan, Guorong Wu
- Published: 2026-05-03
- Categories: q-bio.NC, cs.AI, cs.LG
Core Problem
Human cognition emerges from coordinated spiking dynamics in distributed neural circuits, where information is encoded via both firing rates and precise spike timing determined by brain rhythms. Standard SNNs lack mechanisms to capture this multi-scale coordination between micro-scale spiking dynamics and macro-scale oscillatory synchronization.
Key Innovation
A brain-inspired learning primitive in which cognition-level neural synchrony emerges through iterative bottom-up and top-down interactions between:
- Micro-scale: Spiking neuron dynamics (individual neuron firing)
- Macro-scale: Oscillatory synchronization mechanism (population-level rhythms)
Cortical oscillations are modeled as a coordination mechanism that gates information flow between spiking neuron populations, enabling the emergence of structured representations through time-delayed spike-timing-dependent plasticity (STDP).
Architecture
โโโโโโโโโโโโโโโโโโโโโโโ
โ Oscillatory Layer โ
โ (macro-scale rhythm) โ
โ Phase ฯ(t), freq ฯ โ
โโโโโโโโฌโโโโโโโโโโโโโโโโ
โ gates
โโโโโโโโโโโโโโผโโโโโโโโโโโโโ
โ โ โ
โโโโโโโผโโโโโโ โโโโโโผโโโโโโ โโโโโโผโโโโโโ
โ Populationโ โPopulationโ โPopulationโ
โ A โ โ B โ โ C โ
โ (spiking) โ โ(spiking) โ โ(spiking) โ
โโโโโโโฌโโโโโโ โโโโโโฌโโโโโโ โโโโโโฌโโโโโโ
โ โ โ
โโโโโโโโโโโโโโผโโโโโโโโโโโโโ
โ
Time-delayed STDP
(bottom-up + top-down)
Core Methodology
1. Oscillatory Coordination Mechanism
- Each population is assigned an oscillatory phase ฯ(t) with frequency ฯ
- Phase determines gating window for information flow between populations
- Populations with aligned phases communicate effectively; misaligned phases block communication
- Oscillations emerge from population dynamics, not imposed externally
2. Time-Delayed STDP
- Standard STDP is extended with time-delay terms that account for oscillatory phase
- Synaptic updates depend on both spike timing AND oscillatory phase alignment
- Bottom-up and top-down pathways have different delay characteristics
- Enables learning of temporal sequences with multiple timescales
3. Bottom-Up / Top-Down Interaction
- Bottom-up: Feedforward spike propagation carries sensory/input information
- Top-down: Oscillatory feedback modulates population excitability
- Iterative refinement: Multiple bottom-up/top-down cycles converge to stable representation
- Phase coding: Information encoded in relative phase differences between populations
4. Emergent Synchrony
- Neural synchrony is not hardcoded but emerges through learning
- Populations that process related information naturally synchronize
- Unrelated populations desynchronize, enabling separation of representations
- Synchrony strength correlates with task-relevant information content
Implementation Guide
Prerequisites
- SpikingJelly or similar SNN framework
- PyTorch
Oscillatory SNN Layer
import torch
import torch.nn as nn
import numpy as np
class OscillatoryPopulation(nn.Module):
"""Spiking neuron population with oscillatory coordination."""
def __init__(self, n_neurons, frequency=10.0, dt=1e-3):
super().__init__()
self.n_neurons = n_neurons
self.frequency = frequency
self.dt = dt
self.phase = nn.Parameter(torch.zeros(1))
self.membrane = torch.zeros(n_neurons)
self.spike_threshold = 1.0
def oscillatory_gate(self, t):
"""Compute oscillatory gating signal."""
omega = 2 * np.pi * self.frequency
return torch.sigmoid(torch.cos(omega * t + self.phase))
def forward(self, input_spikes, t):
self.membrane = self.membrane + input_spikes - self.membrane * 0.1
gate = self.oscillatory_gate(t)
gated_membrane = self.membrane * gate
spikes = (gated_membrane > self.spike_threshold).float()
self.membrane = self.membrane * (1 - spikes)
return spikes, self.membrane
Time-Delayed STDP
def time_delayed_stdp(pre_spikes, post_spikes, pre_phase, post_phase,
weights, learning_rate=0.01, tau_stdp=20e-3):
"""STDP with oscillatory phase-dependent modulation."""
dt = post_spikes - pre_spikes
stdp_window = torch.exp(-torch.abs(dt) / tau_stdp) * torch.sign(dt)
phase_alignment = torch.cos(pre_phase - post_phase)
phase_alignment = torch.clamp(phase_alignment, min=0)
delta_w = learning_rate * stdp_window * phase_alignment
return delta_w
Multi-Population Network
class OscillatorySNN(nn.Module):
def __init__(self, layer_sizes, frequencies):
super().__init__()
self.populations = nn.ModuleList([
OscillatoryPopulation(size, freq)
for size, freq in zip(layer_sizes, frequencies)
])
self.weights = nn.ParameterList([
nn.Parameter(torch.randn(layer_sizes[i], layer_sizes[i+1]) * 0.1)
for i in range(len(layer_sizes) - 1)
])
def forward(self, input_spikes, n_timesteps=100):
outputs = []
for t in range(n_timesteps):
layer_spikes = input_spikes
for pop, weight in zip(self.populations, self.weights):
input_current = layer_spikes @ weight
spikes, membrane = pop(input_current, t)
layer_spikes = spikes
outputs.append(layer_spikes)
return torch.stack(outputs)
Applications
- Temporal sequence learning: Tasks requiring multi-timescale temporal processing
- Working memory: Oscillatory gating enables sustained activity patterns
- Attention mechanisms: Phase alignment as selective communication routing
- Multi-modal integration: Different modalities processed in phase-separated populations
- Sequence prediction: Learning temporal dependencies with oscillatory coordination
Advantages Over Standard SNNs
| Aspect | Standard SNN | Oscillatory SNN |
|---|
| Temporal coding | Spike timing only | Timing + phase |
| Population coordination | None | Oscillatory gating |
| Multi-timescale | Limited | Natural via frequencies |
| Representation structure | Implicit | Emergent through synchrony |
| Biological plausibility | Moderate | High |
Pitfalls
- Frequency selection: Choosing appropriate oscillation frequencies requires task-specific tuning
- Phase initialization: Random phase initialization may require many cycles to achieve useful coordination
- Computational overhead: Oscillatory gating adds computation per timestep
- Training stability: Time-delayed STDP can be unstable with inappropriate learning rates
- Scalability: Number of phase parameters grows with population count
Related Skills
- spiking-neural-network-analysis
- snn-learning-survey
- holobrain-holograph-oscillatory-gnn
- brain-inspired-snn-pattern-analysis
- spiking-oscillation-mapping
- kuramoto-brain-network