你脑子里绝大多数神经元,此刻什么都没干——这不是偷懒,这是它敢用二十瓦的全部原因。
训练一个大模型要烧掉一座小镇的电,而你此刻一边读这段字一边听见楼下有人说话,用的是二十瓦——比一只灯泡还省。差距大到这个份上,多半不是"再优化优化"能补的,而是两台机器打一开始就不是同一种东西。这一期讲一群工程师认真去抄大脑作业:不抄知识,抄脾气——没事一动不动,有事才吭一声。这条路已经造出真芯片、真相机,也撞上了一堵挺硬的墙。
先说今天的 AI 里那个"神经元"是什么。它其实就是一小段算术:把上游来的一堆数各乘一个权重、加起来、过一道变换,吐出一个数,比如 0.73。一层几千个这样的单元算完,把几千个数交给下一层,整张网一层层往下推。注意一个细节:不管输入有没有变,每一轮每个单元都要算一遍、吐个数出来。
真神经元不这样。它不吐数,只会在某个时刻"啪"地放一下电——一个几毫秒的脉冲,大小固定,要么有要么没有,没有"放了 0.73 下"这回事(Topic 35 讲过这套全或无的字母表,神经元与动作电位)。它传出去的不是数值,是一串散落在时间上的点:什么时候放的、隔多久放一下、和旁边那个细胞是不是同时放的。信息全在这些点的时间里。
把这件事写成一个能跑的模型,最常用的那个叫漏电积分放电,名字唬人,其实就是一只底下有小孔的杯子:上游每来一个脉冲就往里滴一点水,同时杯子一直在漏;水攒到杯壁那道刻度线,就"啪"地整杯翻掉——那一翻就是它放的一下电——然后从空杯重新开始。
妙处在这只漏杯的默认状态:没有输入时,它什么都不做——不算、不发、不耗电。这叫事件驱动:整张网不按节拍空转,只被真正发生的事推着走。你脑子里八百多亿个神经元,此刻绝大多数一声不吭。
EN An artificial neuron outputs a number every cycle whether or not its input changed; a real neuron outputs nothing but all-or-none spikes, so its message lives in when they occur. The standard model, leaky integrate-and-fire, is a leaking cup: inputs add charge, leak drains it, and crossing threshold empties the cup as one spike. The key property is the default state — with no input, nothing is computed and no energy is spent. That is what event-driven means, and it is why most of your 86 billion neurons are silent right now.
那你可能会问:人工神经元吐的那个 0.73,对应真神经元的什么?答案是发放率——单位时间里放了几下,密一点就是 0.9,稀一点就是 0.1。也就是说,今天的深度网络其实是把神经元的时间维度压扁成了一个平均数。这个简化换来了巨大的好处(能用矩阵乘法一口气算一层,正好合 GPU 的胃口),代价是把"什么时候放"这一整个维度扔了——而脑子里恰恰有一批计算就住在那儿(Topic 38 的相位、Topic 35 的时序编码)。脉冲网络做的事,就是把时间捡回来。
为什么"没事就闭嘴"能省出几个数量级?这里有个反直觉的事实:今天的芯片,电基本不是花在算上的,是花在搬上的。
Horowitz 2014 年把这笔账摊开给业界看:在当时的工艺下,做一次三十二位浮点加法大约花 0.9 皮焦(皮焦是极小的能量单位,具体多少不重要,重要的是下面这个对比);而从内存里取一个数出来要花几百皮焦——差了大约七百倍。所以 GPU 跑模型时,绝大部分电是在把成百上千亿个权重从内存搬去计算单元的路上烧掉的。算几乎不要钱,来回搬才是账单。
这个毛病有个根源:现在的计算机把存东西的地方和算东西的地方分成了两处,中间靠一条通道来回运。大脑没这个毛病——它的"权重"就是突触本身,而算,也是在同一个突触上当场发生的。信号到了,突触当场按自己的强度放行,结果直接进下一个细胞。没有取、没有搬、没有写回。
省电的第二块来自稀疏,而这一块也不是设计上的优雅,是被电费硬逼的。Lennie 2003 年算过一笔扎实的账:皮层里放一下电,代价约二十四亿个 ATP 分子(ATP 是细胞里通用的能量货币)。拿这个单价去除大脑的总功率,结论是——任何时刻能显著活跃的神经元,可能还不到百分之一。你脑子不是"选择"了稀疏,是预算只买得起稀疏。
EN On today's chips, energy goes into moving data, not computing on it: Horowitz (2014) measured a 32-bit float add at about 0.9 pJ against several hundred pJ to fetch one operand from DRAM — a gap of roughly 700×. The brain has no such gap, because the synapse is the weight and the computation happens in place. Sparsity is the second saving, and it is not an elegance but a budget constraint: Lennie (2003) priced one cortical spike at ~2.4×10⁹ ATP molecules and concluded that under the brain's power budget, likely fewer than 1% of neurons can be substantially active at once.
知道了"贵的是搬不是算",AI 工程里一堆看着零碎的手艺立刻串成一条线。量化(把权重从三十二位压成八位甚至四位)省的不是算力,是每次搬运的字节数;KV cache 省的是把算过的东西重新搬一遍;混合专家(每次只唤醒一小部分参数)省的是搬那些这次根本用不上的权重。全在做同一件事:少搬点。而这正是大脑在结构上就免疫的那个问题。
把这套脾气刻进硅片,这一行叫神经形态——1990 年 Carver Mead 造的词。他的主张比"仿脑"更激进:别用晶体管去模拟方程,而是让晶体管自己的物理特性直接当计算用。他注意到,晶体管在很低电压下那条电流随电压变化的曲线,和离子穿过细胞膜上通道的规律形状惊人地像——那就别绕远路,让物理直接把这步算掉。
TrueNorth(IBM,2014 年发在《科学》上)第一次让人真瞪大了眼:一百万个神经元、两亿五千六百万个突触、五十四亿个晶体管,实时跑起来七十毫瓦——功率密度比常规处理器低了约四个数量级。代价是它只能跑推理,不会学。
Loihi(英特尔,2018)补上了这一刀:一百二十八个核、约十三万个神经元、一亿三千万个突触,而且芯片自己能学——可塑性规则可以编程,STDP 那类"谁先放谁后放决定加强还是削弱"的局部规则直接跑在片上(突触可塑性)。到 2024 年,英特尔把一千一百五十二块二代 Loihi 塞进一台微波炉大小的机箱,叫 Hala Point:十一亿五千万个神经元,满负荷两千六百瓦——神经元数量大致是一只猫头鹰的脑子那个量级。
SpiNNaker(曼彻斯特大学,Steve Furber 主持,他也是 ARM 芯片的设计者之一)走了第三条路:不做特殊的神经元电路,就用一百万个普通的小 ARM 核,心思全花在专为脉冲设计的路由网络上——脉冲这种消息极短、极多、去向极散,难的从来不是算,是送。
但这条路上真正已经在干活的,反而是一台相机。事件相机(2008 年那颗奠基的芯片来自苏黎世的 Lichtsteiner 和 Delbrück)把"没事就闭嘴"用在了成像上:它没有"帧"这个概念,每个像素各管各的,只在自己这一点的亮度变了的时候,自己报一次——报的是"我这儿变亮了"或"变暗了",附上一个微秒级的时间戳。画面静止时,它输出的数据是零。这套路子是从视网膜抄来的:视网膜送往大脑的本来就不是一幅幅照片,而主要是"哪里变了"(视觉通路)。
好处不只是省。不必等一帧凑齐,延迟从毫秒掉到微秒;每个像素独立管自己的明暗,于是同一画面里阳光下和阴影里的东西都看得清(这本事叫动态范围,它到 120 分贝,普通相机通常只有六十上下);快速运动还不会糊——糊本是"曝光一段时间取平均"的副产品,它压根不曝光。
EN Carver Mead coined "neuromorphic" in 1990, with a proposal sharper than mere imitation: let the transistor's own subthreshold physics, which resembles ion-channel behaviour, perform the computation directly. IBM's TrueNorth (2014) ran 1M neurons and 256M synapses on 5.4B transistors at 70 mW; Intel's Loihi (2018) added programmable on-chip plasticity, scaling by 2024 to Hala Point — 1,152 Loihi 2 chips, 1.15B neurons, 2,600 W. SpiNNaker took a third route: ordinary ARM cores plus a router built for spike traffic. The most deployed idea is the event camera (Lichtsteiner & Delbrück, 2008): no frames, each pixel reporting its own brightness changes with microsecond timestamps — hence ~15 µs latency, 120 dB dynamic range, no motion blur, and zero output from a static scene, exactly as the retina mostly reports change rather than pictures.
诚实的部分来了。第一堵墙:这种网络非常难训。今天所有能学的 AI 都靠反向传播(Topic 39),而它有个前提——每个零件都得能回答"我稍微改一点点,最后的差错会变多少"。可"放不放电"是个断崖:差一丁点没到阈值,什么都不发生;刚好越过,就整个放一下。这个跳变几乎处处没有斜率,回传的账全是零,学不动。
目前最主流的绕法叫代理梯度,办法有点无赖但很管用:往前跑的时候老老实实地放电、断崖照旧;往回算账的时候,假装那道断崖是一个平滑的小坡,用这个假的斜率去分配责任。它没有严格的理论保证,但训得出能用的网络。另一条更省事的路是先用普通网络训好,再转换成脉冲版去跑。两条路都有点讽刺:省电的芯片,仍然得靠费电的 GPU 来教。
第二堵墙:它的优势非常挑活。英特尔自己 2021 年那篇总结相当坦率:赢面集中在输入本来就稀疏、又要求马上出结果的活上——关键词唤醒(一直听着等你喊它,关键在于九成九的时间什么都没发生)、机器人的实时闭环控制、某些优化问题,还有气味识别(Imam 和 Cleland 2020 年照着嗅球的回路在 Loihi 上搭了一个,闻一次就记住,之后在很强的干扰下仍认得出)。可一旦任务是"一次把一大批数据推过一张稠密的网",GPU 流水线的效率就是碾压性的——那时候本来就没有稀疏可省。
第三堵墙最俗,也最致命:没有生态。深度学习能起飞,一半功劳在那套谁都能上手的工具链。神经形态这边每家芯片一套写法,能跑的模型库小得可怜,愿意学的人自然少。
所以把它当成"更好的 GPU"是误会。它是另一类机器,赌的是一件还没定的事:未来卡住我们的,究竟是算得不够快,还是耗电太多、反应太慢。若是前者,它没什么戏;若是后者——你手腕上、耳朵里、飞在天上那些必须一直醒着又充不起电的东西——它就是唯一走得通的方向。
EN Three walls. Training: the spike threshold is a step function with no usable derivative, so backprop stalls; the workaround is surrogate gradients — spike hard in the forward pass, pretend the step is a smooth slope in the backward pass (Neftci, Mostafa & Zenke 2019) — or train a conventional network and convert it. Either way, the low-power chip is still taught by power-hungry GPUs. Benchmarks: Intel's own 2021 survey concedes the wins are concentrated in sparse, streaming, latency-critical, small-batch workloads — keyword spotting, closed-loop robotic control, optimisation, one-shot odour recognition (Imam & Cleland 2020) — while dense large-batch matrix work still belongs to GPUs, since there is no sparsity there to exploit. Ecosystem: no CUDA-equivalent. Neuromorphic hardware is not a better GPU; it is a bet that the binding constraint ahead is energy and latency rather than throughput.
这一行还给 Topic 39 那场争论补了个意外的注脚。当年"突触只看得见自己两端、够不到全局信息"被当成生物学的缺陷;可到了硅片上,这条恰恰是最值钱的性质——局部规则不需要把误差搬遍全网,于是芯片可以一边干活一边学,不必把数据送回中心再等一张表发下来。Loihi 能把可塑性规则做进片上,靠的就是这个。生物学的将就,换个衬底就成了工程的优点。
"不变就别说话"这条规矩,看着像个省电技巧,其实几门很不一样的学问都从各自的方向撞到过它: