Selective Alignment Knowledge Distillation (SeAl-KD) methodology for Spiking Neural Networks. Addresses the limitation of uniform timestep alignment in existing KD methods by selectively aligning class-level and temporal knowledge. Equalizes competing logits at erroneous timesteps, reweights temporal alignment based on confidence and inter-timestep similarity. Consistently improves over existing distillation methods on static image and neuromorphic event datasets. Activation: sealkd, selectiv...
Scanned 9/11/2026
Install to Claude Code
npx -y skills add hiyenwong/ai_collection --skill sealkd-snn-knowledge-distillation --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Sealkd Snn Knowledge Distillation?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/hiyenwong-sealkd-snn-knowledge-distillation)More formats (shields.io, HTML) on the badges page.
---
name: sealkd-snn-knowledge-distillation
description: >
Selective Alignment Knowledge Distillation (SeAl-KD) methodology for Spiking
Neural Networks. Addresses the limitation of uniform timestep alignment in
existing KD methods by selectively aligning class-level and temporal knowledge.
Equalizes competing logits at erroneous timesteps, reweights temporal alignment
based on confidence and inter-timestep similarity. Consistently improves over
existing distillation methods on static image and neuromorphic event datasets.
Activation: sealkd, selective alignment, knowledge distillation SNN, timestep
alignment, spiking neural network distillation, temporal knowledge distillation,
SNN training, inter-temporal self-distillation, neuromorphic KD.
---
# SeAl-KD: Selective Alignment Knowledge Distillation for SNNs
**Paper:** Not All Timesteps Matter Equally: Selective Alignment Knowledge Distillation for Spiking Neural Networks
**arXiv:** 2605.14252 [cs.LG, cs.AI]
**Authors:** Kai Sun, Peibo Duan, Yongsheng Huang, Guowei Zhang, Benjamin Smith, Nanxu Gong, Levin Kuhlmann
## Problem
SNN knowledge distillation typically enforces **uniform alignment across all
timesteps**, treating every timestep equally. This is suboptimal because:
- SNN predictions vary and evolve over time
- Intermediate timesteps need not all be individually correct
- The final aggregated output can be correct even if some timesteps are wrong
- Forcing every timestep toward the same target distorts useful temporal dynamics
## Key Insight
Effective distillation should:
- Provide **corrective guidance** to erroneous timesteps
- **Preserve** useful temporal dynamics in correct timesteps
- Not force uniform supervision across time
## SeAl-KD Methodology
### 1. Confidence-Based Timestep Selection
- Identify erroneous timesteps where predictions deviate from target
- Only apply corrective distillation to timesteps that need guidance
- Preserve correct timesteps' natural dynamics
### 2. Logit Equalization at Erroneous Timesteps
- At erroneous timesteps, equalize competing logits
- Reduces overconfident wrong predictions
- Provides gentle correction signal
### 3. Temporal Alignment Reweighting
- Reweight temporal alignment based on:
- **Prediction confidence**: Higher confidence → less correction needed
- **Inter-timestep similarity**: Similar timesteps → consistent treatment
- Dynamically adjusts distillation strength per timestep
## Implementation
```python
# Pseudocode for SeAl-KD
def seal_kd_loss(snn_logits, teacher_logits, timestep, num_timesteps):
"""Selective alignment KD loss for a single timestep."""
# Compute confidence for this timestep
confidence = compute_confidence(snn_logits[timestep])
# Identify if timestep is erroneous
is_erroneous = snn_preds[timestep] != teacher_preds[timestep]
if is_erroneous:
# Equalize competing logits
corrected_logits = equalize_competing_logits(snn_logits[timestep])
# Apply corrective supervision
loss = ce_loss(corrected_logits, teacher_targets[timestep])
else:
# Preserve natural dynamics with soft alignment
similarity = compute_inter_timestep_similarity(
snn_logits[timestep], snn_logits
)
weight = confidence_weight(confidence) * similarity_weight(similarity)
loss = weight * kl_divergence(snn_logits[timestep], teacher_logits[timestep])
return loss
# Total loss: sum over all timesteps
total_loss = sum(seal_kd_loss(logits, teacher_logits, t, T) for t in range(T))
```
## When to Use
- Training SNNs with knowledge distillation from ANNs
- Improving SNN performance on image classification tasks
- Neuromorphic event-based dataset training
- Reducing the SNN-ANN performance gap
- Inter-temporal self-distillation scenarios
## Comparison with Related Methods
| Method | Alignment Strategy | Timestep Treatment |
|--------|-------------------|-------------------|
| Standard KD | Uniform | All timesteps equal |
| Inter-temporal SD | Uniform self-distillation | All timesteps equal |
| **SeAl-KD** | **Selective** | **Confidence-based correction** |
| **SpAD** (BiSpikCLM) | Multi-level (4-level) | Cross-modal ANN→SNN |
## Datasets Validated
- Static image datasets (CIFAR-10, ImageNet variants)
- Neuromorphic event-based datasets (DVS Gesture, N-MNIST variants)
## Code
Available at: https://github.com/KaiSUN1/SeAl
## Related Skills
- **bispikclm-binary-spiking-llm**: SpAD uses complementary multi-level alignment
- **snn-learning-survey**: Comprehensive SNN learning patterns
- **spikingjelly-framework**: SNN implementation framework
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!