The Moonshot Podcast Deep Dive: Jeff Dean on Google Brain’s Early Days
加载中...
点击任意话题卡片查看该时段的完整对话内容。
访谈一开始,Jeff Dean提出了一个非常鲜明的未来图景:让极少数能力很强的模型,持续接受大量人类的教学与纠正,从而把每个人提供的知识、技能和经验汇聚起来,再由更广泛的人群共同受益。这不是在讨论某个具体产品,而是在描述一种可能的学习与知识传播机制:模型像高可塑性的学生,人类则像大规模分布式教师系统,不断向模型灌注新知识。主持人随即回应说,他也认为这正是世界正在走向的方向。这个开场实际上为整场谈话定下基调:既关注技术史,也关注人工智能作为知识基础设施的未来形态。
Jeff 回顾自己的童年时强调,成长环境并不寻常,因为他在 12 年里读了 11 所学校,频繁迁移塑造了他的适应力。很小的时候他就喜欢用乐高搭东西,而真正决定性的技术启蒙,来自父亲购买的一台需要焊接组装的套件电脑。父亲是医生,也在思考计算机如何改善公共卫生;在当时,计算资源主要掌握在大型机手里,普通人很难直接使用。这台最初只有指示灯和拨码开关的机器,让 Jeff 通过 BASIC 游戏书开始输入程序、游玩并修改代码。他由此第一次体会到软件可以被创造、试用、改进并供他人使用。后来搬到明尼苏达后,当地面向中学系统的联网平台又让他接触到聊天室、互动游戏和远程社群,这成为他理解在线协作与多用户软件的更早土壤。
在主持人追问“最早写过的非平凡程序”时,Jeff 讲述了自己 13、14 岁时把一个大型多人游戏从主机环境移植到家用 UCSD Pascal 系统的经历。他通过获得的 400 页源代码,学习如何处理多终端输入、多端口中断、任务调度,以及不同 Pascal 方言之间的兼容问题。这次实践让他在没有系统课程指导的情况下,直观摸索了并发与多用户系统的核心概念。随后,话题转向编程语言偏好。Jeff 说自己最常用的是 C++,因为分布式系统工作常常强调底层性能,但他也坦言与 C++ 是“爱恨交织”的关系,尤其不满其内存不安全。他还回忆了研究生时期参与导师发明的 Cecil 语言及其编译器体系建设,说明自己对语言设计、模块化和大规模软件工程也有长期投入。
Jeff 表示,自己第一次真正被人工智能吸引,是在明尼苏达大学本科高年级学习分布式与并行编程时接触到神经网络。那是 1990 年前后,神经网络因为能解决一些传统方法做不到的小规模模式识别问题而重新受到关注。Jeff 认为它作为抽象是有吸引力的:人工神经元接收输入、做出激活判断,再层层堆叠形成更复杂的表征结构。尽管当时三层网络就算“深”,但他已经意识到更深结构的潜力。受课程教师影响,他进一步做了本科荣誉论文,尝试利用系里 32 处理器机器训练更大的网络,并分别实现了后来被称为数据并行和模型并行的两种策略。最终他发现,所需算力并不是 32 倍增长就够,而可能需要百万倍量级;但这段经历让他确信神经网络是值得长期关注的方向。
当主持人提到 1990 年代末神经网络在 AI 领域几乎“失宠”时,Jeff 解释说自己并未彻底失去信心,只是把这条兴趣线索暂时放到次要位置。他随后先去做了一年公共卫生软件,构建 HIV/AIDS 预测模型;进入研究生阶段后,又因对并行程序设计和性能问题的兴趣转向编译器研究。博士毕业后,他选择加入 Digital Equipment Corporation 在帕洛阿尔托的研究实验室,因为那里项目众多,从多核处理器到手持设备、性能剖析工具和界面研究都有涉猎。Jeff 强调,自己喜欢待在一个想法密集、跨方向交流充分的环境中,与懂自己不懂之事的人共事。这一阶段的叙述说明,他的职业路径并非线性押注 AI,而是长期在系统、工具链与实际应用之间往返,但对神经网络的判断并未消失。
主持人把 Jeff 在 Google 的职业方式概括为一再启动重大项目、把组织推上正轨后再回到个人贡献者角色,继续寻找下一个雪球。Jeff 认可自己确实喜欢规划一段“五年左右”的新旅程:进入陌生领域,和掌握不同知识的人合作,再把系统做到足够成熟。他提到自己先后投身信息检索与早期搜索算法、底层基础设施、大规模存储系统如 Bigtable 和 Spanner,以及医疗机器学习等方向。特别是 Spanner,作为面向全球数据中心的统一存储系统,已经逐步稳定并得到广泛采用。也正是在 Spanner 走向成熟之际,他开始思考下一个值得投入的技术主题。这一段既解释了他跨领域迁移的工作风格,也为后面转入 Google Brain 的诞生提供了直接背景。
Jeff 详细讲述了 Google Brain 的起源:当时他在公司微型厨房偶遇每周来 Google X 一天的 Andrew Ng,后者提到自己和学生已经在语音与视觉相关任务上观察到神经网络的有趣结果。Jeff 立刻产生共鸣,认为既然神经网络重新显现潜力,就应该尝试把它们训练到非常大的规模。于是,两人围绕“扩大模型、扩大训练基础设施”的设想展开合作,Google Brain 团队由此萌芽。借助过去二十年的算力提升,以及 Google 自身庞大的数据中心资源,他们开始构建分布式神经网络训练系统。尽管那时数据中心还没有 GPU,他们依然用 2000 台机器、16000 个 CPU 核心训练超大模型。项目随后不断扩张,从无监督视觉模型、监督语音模型,到与搜索、广告及 Google 其他业务线协作,最终演变成支撑数百团队使用神经网络的早期框架与能力基础。
在回顾 Google Brain 早期判断时,主持人提到 Andrew Ng 曾说,真正缺的不是想法,而是 Jeff 这种能把系统扩展到远超单机规模的人。Jeff 进一步解释,早期团队反复观察到一个简单但强大的经验规律:模型更大、训练数据更多、投入算力更多,结果就会更好。他们内部甚至形成一句口号——“更大的模型、更多的数据”。后来,这一现象被更系统地总结为 scaling laws,即算力、参数和数据规模增加,会以近似对数线性的方式带来性能提升。Jeff 也说明,为了支撑这种扩展,他们一开始就构建了同时支持模型并行和数据并行的训练框架。由于当时使用的是由以太网连接的数据中心 CPU 集群,速度并不理想,但把大模型切分到多台机器、把数据拆分给不同副本同时训练,依然是实现突破的关键工程手段。