从“捞一笔就跑”到AI先驱:谷歌Transformer作者与Jeff Dean的深度对话

谷歌首席科学家Jeff Dean与Transformer论文的共同作者Noam Shazeer,近期接受了知名播客Dwarkesh Patel的专访。这场长达两小时的对话,不仅回顾了谷歌从PageRank到通用人工智能(AGI)的25年历程,也深入探讨了AI领域的诸多前沿议题。

算力“钞”能力:AI对话比读书便宜百倍?

当人们还在惊叹于AI的“烧钱”属性时,Jeff Dean却给出了一个令人耳目一新的观点:AI推理的成本远比想象中低廉。

他以阅读和与AI讨论书籍为例,进行了对比:

当前最尖端的语言模型,每次运算的成本约为10^-18美元,这意味着1美元可以处理100万个token。相比之下,购买一本平装书的成本,大约相当于每1美元购买1万个token(将单词数换算为token)。

因此,与大模型对话的成本,实际上比阅读书籍便宜了约100倍。

这一巨大的成本优势,为通过增加推理算力来进一步提升AI智能,打开了广阔的想象空间。

从基础设施的角度看,推理计算的重要性日益凸显,这可能会对数据中心的规划产生深远影响。

未来,我们或许需要专门为推理任务定制硬件。正如谷歌初代TPU,最初就是为推理而设计,后来才被改造为同时支持训练。

推理需求的增长,可能意味着不同的数据中心无需持续通信,从而催生更分布式、异步的计算模式。

在训练层面,Gemini 1.5已经率先迈出了这一步,开始利用多个大城市的计算资源,通过高速网络连接不同数据中心的计算结果,实现了超大规模的训练。

对于大模型而言,训练每一步的时间可能长达数秒,因此,即使网络延迟达到50毫秒,也不会对训练产生显著影响。

到了推理层面,则需要考虑任务对延迟的敏感程度。如果用户期待即时响应,系统就需要针对低延迟性能进行优化。然而,也有一些非紧急的推理任务,例如复杂的上下文分析,可以承受更长的处理时间。

一个更灵活、高效的系统,或许能够异步处理多个任务,在提升整体性能的同时,最大限度地减少用户等待时间。

此外,算法效率的提升,例如使用较小的草稿(Draft)模型,可以有效缓解推理过程中的瓶颈。这种方法采用较小的模型生成潜在的token,然后交由较大的模型进行验证。这种并行化可以显著加快推理速度,打破一次一个token的限制。

Noam Shazeer补充道,在进行异步训练时,每个模型副本会独立计算,并将梯度更新发送到中央系统进行异步应用。尽管这种方式会导致模型参数出现细微波动,理论上可能产生影响,但实践证明它是成功的。

相比之下,同步训练模式能够提供更稳定、可重复的结果,这也是许多研究者更倾向的选择。

在谈到如何确保训练的可重复性时,Jeff Dean提到了一种方法:记录操作日志,特别是梯度更新和数据批次的同步记录。通过回放这些操作日志,即使在异步训练的情况下,也能够保证结果的可重复性。这种方法让调试变得更可控,避免了因环境中的其他因素导致结果不一致。

Bug的意外之喜:噪声中的突破

Noam Shazeer提出了一个颇具启发性的观点:

训练模型时,我们可能会遭遇各种各样的bug。然而,由于模型对噪声的容忍度,它可能会自我调整,从而产生意想不到的效果。

甚至,有些bug会带来正面影响。随着规模的扩大,某些bug可能在实验中表现出异常,让研究人员发现新的改进机会。

当被问及如何在实践中调试bug时,Noam Shazeer介绍说,他们通常会在小规模下进行大量实验,以便快速验证不同的假设。在小规模实验中,代码库保持简单,实验周期缩短至一到两个小时,而非数周,研究人员可以迅速获得反馈并做出调整。

Jeff Dean补充说,许多实验的初期结果未必理想,因此,一些“看似失败”的实验,在后期仍可能为研究提供重要的洞见。

与此同时,研究人员也面临着代码复杂性的挑战:虽然不断叠加新的改进和创新是必要的,但代码的复杂性也会带来性能和维护上的难题。我们需要在系统的整洁性和创新的推进之间,找到一个平衡点。

模型架构的未来:有机生长,模块协同

Jeff Dean和Noam Shazeer一致认为,AI模型正经历着从单一结构向模块化架构的重大转变。

如Gemini 1.5 Pro等模型,已经采用了专家混合(Mixture of Expert)架构,允许模型根据不同的任务激活不同的组件。例如,在处理数学问题时,模型会激活擅长数学的部分;而在处理图像时,则会激活专门处理图像的模块。

然而,现有的模型结构仍然相对僵化,各个专家模块大小相同,缺乏足够的灵活性。

Jeff Dean提出了一个更具前瞻性的设想:未来的模型应当采用更“有机”的结构,允许不同的团队独立开发或改进模型的不同部分。

例如,一个专注于东南亚语言的团队,可以专门改进该领域的模块;而另一个团队,则可以专注于提升代码理解能力。

这种模块化的方法,不仅能提高开发效率,还能让全球各地的团队都能为模型的进步贡献力量。

在技术实现方面,模型可以通过蒸馏(Distillation)技术来不断优化各个模块。这个过程包括将大型、高性能的模块蒸馏为小型、高效的版本,然后在此基础上继续学习新知识。

路由器可以根据任务的复杂程度,选择调用合适规模的模块版本,从而在性能和效率之间取得平衡。这正是谷歌Pathway架构的初衷。

这种新型架构对基础设施提出了更高的要求。它需要强大的TPU集群和充足的高带宽内存(HBM)支持。尽管每次调用可能只使用模型的一小部分参数,但整个系统仍需要将完整的模型保持在内存中,以服务于并行的不同请求。

现在的模型能够将一个任务分解成10个子任务,并达到80%的成功率;而未来的模型,或许能够将一个任务分解成100个甚至1000个子任务,成功率达到90%甚至更高。

“Holy Shit时刻”:让机器“看见”猫

回首过往,2007年对于大语言模型(LLMs)而言,无疑是一个重要的里程碑。

当时,谷歌使用2万亿个token训练了一个N-gram模型,用于机器翻译。

然而,由于依赖磁盘存储N-gram数据,导致每次查询需要大量的磁盘I/O(例如,每单词10万次搜索),延迟极高,翻译一个句子需要耗费12小时。

为了解决这一难题,谷歌团队想到了内存压缩、分布式架构以及批处理API优化等多种应对策略:

  • 内存压缩:将N-gram数据完全加载到内存,避免磁盘I/O;
  • 分布式架构:将数据分片存储到多台机器(如200台),实现并行查询;
  • 批处理API优化:减少单次请求开销,提升吞吐量。

在这个过程中,计算能力开始遵循摩尔定律,并在之后逐渐呈现出爆发式增长。

从2008年末开始,得益于摩尔定律,神经网络真正开始发挥作用。

那么,有没有哪一个时刻,属于那种让人惊呼“Holy shit”(难以置信某项研究竟然奏效了)的瞬间呢?

不出所料,Jeff Dean提到了谷歌早期团队的一项研究:他们让模型从YouTube视频帧中自动学习高级特征(例如识别猫、行人),通过分布式训练(2000台机器,16000个核心)实现了大规模无监督学习。

在无监督预训练后,模型在监督任务(ImageNet)中的性能提升了60%,这充分证明了规模化训练无监督学习的巨大潜力。

当被问及如今的谷歌是否仍然只是一家信息检索公司时,Jeff Dean用了一大段话来阐述一个核心观点:

AI实现了谷歌的原始使命。

简而言之,AI不仅能够检索信息,还能够理解和生成复杂内容,而且未来的想象空间无限广阔。

至于谷歌的未来将走向何方,“我不知道”。

不过,我们可以期待的是,未来将谷歌和一些开源代码整合到每个开发者的上下文中。

换句话说,通过让模型处理更多的token,在搜索中进行搜索,来进一步增强模型的能力和实用性。

当然,这一设想已经在谷歌内部启动了实验。

事实上,我们已经在内部代码库上,为内部开发人员进行了关于Gemini模型的进一步培训。

更确切地说,谷歌内部已经实现了25%的代码由AI完成的目标。

谷歌往事:从“捞一笔就跑”到长相厮守

在这场对话中,两位嘉宾还分享了许多与谷歌相关的趣闻轶事

对于1999年的Noam Shazeer而言,他原本并未打算加入谷歌这样的大公司,因为凭直觉认为去了也可能无用武之地。然而,当他看到谷歌制作的每日搜索量指数图表后,立刻改变了主意:

这些人一定会成功,看起来他们还有很多亟待解决的难题。

于是,他带着自己的“小算盘”加入了谷歌(主动投递了简历):

挣一笔钱,然后另起炉灶,开开心心地去搞自己感兴趣的AI研究。

加入谷歌后,Noam Shazeer结识了导师Jeff Dean(新员工都会有一位导师),后来两人在多个项目中展开了合作。

谈到这里,Jeff Dean也分享了他对谷歌的认同感:

我喜欢谷歌对RM愿景(响应式和多模态,Responsive and Multimodal)的广泛授权,即使是一个方向,也能开展许多小项目。

这也为Noam Shazeer提供了充分的自由空间,以至于这位原本打算“干一票就跑”的人,最终长期留在了谷歌。

当话题转向Jeff Dean时,他的一篇关于并行反向传播的本科论文被再次提及。

这篇论文只有8页,却成为了1990年的最优等本科论文,被明尼苏达大学图书馆珍藏至今。

在这篇论文中,Jeff Dean探讨了两种基于反向传播来并行训练神经网络的方法:

  • 模式分割法(pattern-partitioned approach):将整个神经网络表示在每一个处理器上,把各种输入模式划分到可用的处理器上;
  • 网络分割法(network-partitioned approach)流水线法(pipelined approach):将神经网络的神经元分布到可用的处理器上,所有处理器构成一个相互通信的环。然后,特征通过这个pipeline传递的过程中,由每个处理器上的神经元来处理。

他还构建了不同大小的神经网络,用几种不同的输入数据,对这两种方法进行了测试。

结果表明,对于模式分割法,网络规模大、输入模式多的情况下,加速效果较为显著。

当然,最值得关注的莫过于,我们能从这篇论文中看到1990年的“大”神经网络是什么样子:

3层、每层分别有10个、21个、10个神经元的神经网络,就已经算很大了。

Jeff Dean回忆说,他当时测试用的处理器,最多达到了32个。

(此时的他,应该还想象不到,12年后,他会和吴恩达、Quoc Le等人一起,用16000个CPU核心,从海量数据中找出猫。)

不过,Jeff Dean坦言,如果要让这些研究成果真正发挥作用,“我们需要大约100万倍的计算能力”

后来,他们又谈到了AI的潜在风险,特别是当AI变得极其强大时,可能出现的反馈循环问题。

换句话说,AI通过编写代码或改进自身算法,可能进入一个不可控的加速改进循环(即“智能爆炸”)。

这将导致AI迅速超越人类的控制,甚至产生恶意版本。正如主持人打的比方,有100万个像Jeff Dean这样的顶尖程序员,最终变成了“100万个邪恶的Jeff”。

(网友):新的噩梦解锁了,哈哈!

最后,谈及在谷歌最快乐的时光,两人也分别陷入了回忆。

对于Jeff Dean而言,在谷歌早期的四五年时光里,最快乐的莫过于见证谷歌搜索流量的爆炸式增长。

建造一个如今有20亿人都在使用的产品,这简直不可思议。

至于最近,则很开心能和Gemini团队一起,构建出一些即使在5年前人们都不敢相信的东西,并且可以预见,模型的影响力还将持续扩大。

Noam Shazeer也表达了类似的经历和使命感,甚至还兴致勃勃地提到了谷歌的“微型厨房区域”。

据介绍,这是一个大约有50张桌子的特殊空间,提供咖啡和小吃,人们可以在这里自由自在地闲聊,碰撞出思想的火花。

一说到这里,连Jeff Dean也情不自禁地手舞足蹈起来(doge)。