一场朋友间的晚宴上,有人抛出一个问题:如果你只能向超级智能的外星人提一个问题,你会问什么?Francois Chaubard 想到的不是"怎么解决能源问题"——戴森球、核聚变,这些答案他觉得已经不新鲜了。他更想知道的是,外星人如何计算他们的浮点运算,也就是 flops。这个问题成了他在 YC Paper Club 这场"另类算力"分享的开场白,也是整场讨论的核心命题:如果深度学习不再绑定 GPU、反向传播和 transformer,AI 的计算方式会是什么样子。

Chaubard 不是旁观者。他从 2012 年就开始做深度学习,创立过计算机视觉公司 Focal Systems,拿过 NVIDIA 的 12.5 万美元竞赛奖金,也和 Jensen Huang 本人打过交道。过去十几年,他亲眼见证了硬件架构和优化算法如何相互绑架、共同进化,而这条路径,正在走到效率的尽头。

1. 英伟达关心的从来不是效率,只关心能不能堆出更多 flops

2012 年 AlexNet 出现,卷积神经网络(CNN)的时代持续到 2019、2020 年左右。Focal Systems 曾赢得 NVIDIA 举办的一场比赛,拿到 12.5 万美元奖金,Chaubard 也因此和 Jensen Huang 有过一些接触。他的判断是,Jensen 在 2020 年之前其实并不真正关心 AI——那几年硅谷更火的是加密货币,在 Sam Bankman-Fried 事发之前,这个赛道赚的钱比 AI 多得多。NVIDIA 当时的注意力主要放在"每焦耳能挤出多少 flops"上,因为 CNN 既不受内存容量限制,也不受带宽限制,挖以太坊同样如此。

2020 年前后,情况变了。GPT-2、GPT-3 让 NVIDIA 意识到,transformer 对内存容量和带宽的需求远超以往——"attention 是 n 的平方,这就是原因"。Ampere 架构是这个转向的第一代产物。从那之后,NVIDIA 不再那么在意计算效率,转而疯狂追逐内存容量和带宽,这两项指标此后一直呈指数增长。至于能效,只要能把 flops 堆出来,烧光全世界的海洋也在所不惜。Chaubard 给出一组数据:过去两年,每焦耳能完成的 G-flops 几乎没有提升——这条曲线已经走平了。

2. 人脑只用 20 瓦,却从来不做反向传播

人脑的功耗大约是 20 瓦,相当于一个灯泡,却能完成今晚几位分享者将要展示的那些复杂运算。Chaubard 的判断是,要让计算成本降到人类水平,每千兆浮点运算的成本必须大幅下降,而生物进化已经用四十五亿年时间给出过一份参考答案。

他花了整个博士阶段研究大脑如何计算,得出的结论是:大脑几乎肯定不会做反向传播。如果大脑真的用反向传播,某个神经元需要先正向激活,再反过来逆向传导信号去更新前面突触的权重——这意味着大脑得先"关机",再反着放电一遍,现实中不存在这种机制。即便是 Hebbian 学习这类前向模型,也会遇到"权重传输问题":信号要在一对突触里走一个正向通路,再在另一条通路里折返,而两条通路上的权重理论上必须完全相等,这在生物系统里几乎不可能实现。他提到,如果在这个过程中加入一个激活机制,让两条通路都能"看到"同样的信号,确实能让模型work,但这本质上只是一张有环的图,和反向传播是两回事,不需要保留大量激活值。

大脑里还有一个经常被忽略的结构:皮层柱。它们不是一团杂乱缠绕的连接,而是大量重复出现、彼此之间有强烈抑制作用的功能组件,这种大面积的抑制机制,让每一个组件都能相对独立地完成学习。

3. 光本该是答案,我们却把它换成电,再换回去

Chaubard 认为,光学计算很可能才是正确答案。数据中心里,信号本来就是以光的形式传输的——先通过光纤跑到交换机,转换成电信号去寻址,再转换回光,送进数模转换器,然后又变回光,经过一次模数转换后再变回光。在这个反复转换的过程里,99.99%的能量被白白烧掉。既然如此,为什么不干脆全程用光来完成计算?这样不仅几乎瞬时,也几乎不耗电。他说这更接近他想象中外星文明的计算方式,但也坦言这只是众多可能性之一——神经形态计算同样令人兴奋,它试图用模拟电路去模仿大脑的工作方式。不过无论光学还是神经形态,都绕不开同一个难题:用光或模拟信号来存储比特,成本极高、实现极难,这意味着无论哪条路,都很难直接套用现有的反向传播框架。

4. 他抱着一本零阶优化教科书,从头实现了每一种方法

在转向另类硬件之前,Chaubard 把博士生涯的大部分时间用在了另一件事上:另类的优化方法。博士头六个月,他找来一本零阶优化的教科书,把书里的每一种方法都亲手实现了一遍。设定很简单:训练一个 10 亿参数的 LSTM 做下一词预测,看哪种更新规则效果最好。

最后胜出的方法叫 SPSA(同步扰动随机逼近),几乎没什么人知道,除了发明者 James Spall 和他的学生。原理并不复杂:对模型参数做两次正向传播,分别沿一个随机方向加上和减去一个很小的扰动半径,得到一个有限差分,再按这个差分的大小去更新对应方向的参数——差分为零就不更新,差分很大就大幅更新。这套方法也被称为有限差分法或中心差分法,本质上是同一件事的不同叫法。它最大的优点是不需要梯度,因此在不连续的损失函景上也能照常优化。对比之下,反向传播在一些非利普希茨的函数上很容易陷入局部极小值,而零阶方法能更快地找到真正的谷底。

5. SOMA:把全世界的 GPU 都变成一个个独立的小专家

有了优化器,下一个问题是:用什么架构训练、在什么硬件上训练。Chaubard 发现 LSTM 和 transformer 其实都是为反向传播而生的——LSTM 的设计初衷就是让梯度能够顺利流动,而 transformer 的并行化训练方式,本质上是为 GPU 和反向传播量身定制的。既然现在已经不需要梯度,这两种架构也许都不是最优选择。

基于这个思路,他提出了一个名叫 SOMA(Sharded Optimization Mixture of Assemblies)的设想,灵感正来自前面提到的皮层柱结构:把 Common Crawl 这样的数据集先做聚类切分成许多小块,每一块打包分发给全球各地、分布在不同集群里的一块块 GPU,每块 GPU 只训练一个很小的 LSTM"专家",参数量大约 4 万左右。测试阶段再把这些小专家重新汇聚起来,用一个轻量的路由模块把输入分配给合适的专家,效果类似混合专家模型,区别在于这里混合的是一个个完整的小模型,而不是一层层的前馈网络。

但这套方法也有明显的天花板:零阶优化器估计出的梯度误差,会随着模型规模增大而变得越来越不准。换句话说,这套方法目前还撑不起一个百亿参数级别的模型。

Chaubard 没有把这当作一个已经解决的问题,更像是抛出一连串正在进行中的实验:零阶优化不需要反向传播,SOMA 不需要巨型集中式模型,光和神经形态硬件也不需要传统的 GPU。回到那场晚宴上的提问——外星人怎么计算他们的浮点运算——答案或许根本不在于造出更快的芯片,而在于重新想象计算本身可以长什么样子。

Y Combinator 作者:智顶顶