第20章 §03 · 神经形态计算 · 讲解稿¶
承接: Ch20 §02 量子 → §03 神经形态 篇幅: ~3500 字
一 · 一句话总览¶
神经形态 = 模拟生物神经元的硬件。事件驱动 + 低功耗 + 时序友好。SpiNNaker / Loihi / Akida 三大芯片 + SNN (脉冲神经网络), 让边缘 AI 功耗降低 10-100 倍。
二 · 为什么需要神经形态¶
2.1 传统瓶颈¶
- 冯诺依曼瓶颈: CPU/GPU 与内存分离
- 功耗: GPT-4 训练 1 GWh (≈ 1000 户家庭年用电)
- 实时性: 边缘 AI 需 < 1ms 响应
2.2 神经形态优势¶
| 维度 | 传统 | 神经形态 |
|---|---|---|
| 架构 | 数字 + 冯诺依曼 | 模拟 + 事件驱动 |
| 功耗 | 100-700W | 0.1-10W |
| 延迟 | 毫秒 | 微秒 |
| 稀疏 | 不友好 | 天然 |
| 学习 | 离线训练 | 在线 + STDP |
三 · 脉冲神经网络 (SNN)¶
3.1 第三代神经网络¶
| 代 | 模型 | 信息载体 |
|---|---|---|
| 1 | Perceptron | 二进制 |
| 2 | CNN/RNN | 连续值 |
| 3 | SNN | 脉冲 (spike) |
3.2 LIF 模型¶
Leaky Integrate-and-Fire:
import torch
import torch.nn as nn
class LIFNeuron(nn.Module):
def __init__(self, tau=20.0, v_threshold=1.0):
super().__init__()
self.tau = tau
self.v_threshold = v_threshold
self.v = None
def forward(self, I):
if self.v is None:
self.v = torch.zeros_like(I)
self.v = self.v + (I - self.v) / self.tau
spike = (self.v >= self.v_threshold).float()
self.v = self.v * (1 - spike)
return spike
3.3 STDP 学习¶
Spike-Timing-Dependent Plasticity: - 前突触脉冲先于后突触 → 权重增加 - 后突触先于前突触 → 权重减少 - 生物可信
3.4 SNN 编码¶
- 频率编码: 脉冲数 = 信息
- 时序编码: 脉冲时间 = 信息
- 群体编码: 多神经元组合
四 · 主要神经形态芯片¶
4.1 Intel Loihi¶
Loihi 2 (2021): - 128K neurons / chip - 120M synapses - 异步 + 事件驱动 - 编程: Lava / NxSDK
4.2 Manchester SpiNNaker¶
SpiNNaker 2: - 152 ARM cores - 1M 神经元 - 百万核级 BrainScaleS - 编程: PyNN / sPyNNaker
4.3 IBM TrueNorth¶
- 5.4 billion transistors
- 1M neurons / 256M synapses
- 70 mW 功耗
4.4 BrainChip Akida¶
- 边缘 NPU
- 1.2M neurons
- on-device learning
- 商业化最成熟
4.5 国内¶
- 清华天机 (Tianjic) (2019): 异构融合
- 浙大达尔文 (Darwin)
- 时识智能 (SynSense): DYNAP-CNN
五 · 软件栈¶
5.1 Nengo / NengoDL¶
- Python SNN 模拟
- 跨硬件后端 (Loihi / SpiNNaker / CPU)
5.2 Lava (Intel)¶
- Loihi 官方框架
- magma + lava
5.3 snnTorch / Norse¶
- PyTorch 风格
- 学术研究主流
5.4 编程示例 (snntorch)¶
import snntorch as snn
from snntorch import surrogate
beta = 0.5
lif = snn.Leaky(beta=beta, spike_grad=surrogate.fast_sigmoid())
六 · 应用场景¶
6.1 边缘 AI¶
- 智能摄像头 (事件触发)
- 智能音箱 (语音唤醒, < 1mW)
- 可穿戴设备 (心率 / 步态)
6.2 时序信号¶
- EEG / ECG 分析
- 音频事件检测
- 振动监测 (工业)
6.3 机器人感知¶
- 事件相机 (DVS)
- SLAM
- 触觉
七 · 与传统 ANN 桥接¶
7.1 ANN → SNN 转换¶
- 训练 ANN → 转 SNN (主流)
- 准确率损失 < 1%
- 代表: Spiking-YOLO
7.2 直接训练 SNN¶
- BPTT 改造
- surrogate gradient
- 代表: snnTorch
八 · 一句话总结¶
神经形态 = 生物启发 + 低功耗 + 时序。SNN + Loihi/SpiNNaker + Akida 让边缘 AI 功耗降 10-100×。未来 5 年: 智能音箱 / 可穿戴 / 工业传感 大规模商用。10-20 年: 通用 AI 协处理器。