选自arXiv
作者:Sara Hooker
机器之心编译
编辑:魔王
研究想法能否成功要看是否具备合适的软硬件,而不是这个想法是否比其他研究方向优秀。
天时、地利、人和,三者不得,虽胜有殃。 ——《孙子兵法》
一件事的成败总会牵涉多个因素,例如兵法中的「天时」、「地利」、「人和」。在计算机科学历史上,也有类似的现象,如「硬件」、「软件」、「算法」三要素对研究想法成败的影响。
近日,谷歌大脑研究员 Sara Hooker 写了一篇论文,她用「硬件彩票」(hardware lottery)来描述:一个研究想法的成功是因为具备了合适的软硬件,而不是这个想法比其他研究方向更加优秀。早期计算机科学史的许多例子表明,硬件彩票通过把成功的研究想法看作失败,而拖慢了研究进度。而领域专用硬件的出现使研究想法偏离惯常路径的成本增加,这就让这一现象更加显著。
论文地址:
https://arxiv.org/pdf/2009.06489v1.pdf
这篇论文指出,算力进步带来的收获可能更加不均匀,某些研究方向走上了快车道,而有的则困难重重。
人工智能领域,硬件决定 idea 的成败
历史告诉我们,科学进展并非是一帆风顺的。知识传统和可用工具会使科学家对特定想法形成不同的认知,这为判断研究想法是否有潜力增加了噪声。这篇论文指出,在人工智能研究领域中,工具对于判断研究想法的成败起到了绝大部分的作用。
这篇论文用「硬件彩票」来描述这一现象:一个研究想法的成功是因为它可以与当时的软硬件兼容,而不是因为这个想法比其他研究方向优秀。在早期计算机科学史上,软硬件选择常常对决定研究想法的成败起到决定性作用。
随着我们进入软件、硬件和机器学习研究社区更加紧密合作的新时代,这些经验愈发凸显。过去几十年,人们将硬件、软件和算法看作割裂的选项,但促使近期三者更加紧密协作的催化剂就包括正在改变的硬件、深度学习架构「规模越大性能越好」的理念,以及将机器学习部署到边缘设备的需求。
软硬件和机器学习算法之间更紧密合作的核心是新一代领域专用硬件,它们针对深度神经网络的商用进行了优化。尽管领域专用硬件为主流深度神经网络研究带来了重要的效率提升,但这也使得研究想法偏离既有路径的成本增加。更加碎片化的硬件市场意味着基于算力进展获得的收益将变得更加不均衡。尽管深度神经网络已经有了明确的商用场景,但目前已经出现了早期信号,提醒我们要实现 AI 的下一个突破可能需要完全不同的算法、硬件和软件组合。
硬件、软件、算法:三个独立的部落
对于首批计算机的创造者而言,程序是机器。早期的机器是单独使用的,且不会适应新的任务,原因在于电子器件成本高且缺乏跨任务的软件。
查尔斯 · 巴贝奇的差分机仅用于计算多项式函数 (1817)。美国第一部大尺度自动数位电脑马克一号(Mark I)是可编程计算器(1944)。Rosenblatt 的感知器用来计算 step-wise 单层网络(1958)。甚至常被认为是首批可编程机器的雅卡尔织布机重新穿孔的成本也很高,因此它通常只穿孔一次 (1804)。
早期计算机马克一号(Mark I)
这些早期计算机的专用性是出于当时的需要,而不是计算机设计师认为一次性的定制硬件更好。但是,需要指出的是,人类智能本身就是算法和机器的结合。我们一生中不会长出多个大脑。而人类智能的概念本质上与 1400g 脑组织和大脑中 850 亿神经元之间的连接密切相关。当我们谈论人类智能时,你脑海中浮现出的图像可能是粉色带褶皱的一团(?)。也就是说,在想到认知智能的时候,我们无法不联想到支持它运行的硬件。
与早期计算硬件不得已的专用化不同,今天的机器学习研究者倾向于将硬件、软件和算法看作三个独立的选择。这很大程度上是由于计算机科学史上那段彻底改变硬件类型的时期,促进了硬件、软件和机器学习研究社区独立发展。
通用计算机时代
1969 年,通用计算机时代进入蓬勃发展时期,当时年轻的工程师戈登 · 摩尔(Gordan Moore)已在 Electronics 期刊上发表文章《Cramming more components onto circuit boards》(Moore, 1965)。摩尔预测集成电路上可容纳的晶体管数目,约每两年便会增加一倍。最初,这篇文章及其后续动向都起源于一个简单的心愿——摩尔想卖出更多芯片。然而,这一预测却在接下来的 50 年中推动将能源转换为信息的成本显著下降。
摩尔定律和登纳德缩放比例定律的结合使得,1980-2010 年间微处理器的性能增长了三个数量级。每两年算力和内存增加一倍意味着硬件设计能够趋避风险。即使对于需要更高性能的任务而言,转向专用硬件的收益也会很快被下一代通用硬件超越。
于是,硬件社区的重心转向能够处理大量不同任务的通用处理器。当摩尔定律能使芯片制造商获得可预计的利润时,为什么还要为了不确定的奖励去试验专用硬件设计呢?于是,为研究目的生产专用计算机的尝试逐渐在资金上捉襟见肘,无法持续。不过也有例外,譬如国际象棋这类极少数任务,它们因为打败人类对手这一名头而吸引了大量企业赞助。
割裂地看待硬件、软件和算法的态度一直持续到最近。不管是从时间还是资金的角度来看,探索新型硬件的成本都是很高的。生产下一代芯片通常需要 3000-8000 万美元和 2-3 年的开发时间。这些过高的进入门槛带来了一种奇怪的硬件研究文化,或者对于一般机器学习研究者而言硬件进化过于慢了。在过去 30 年中,机器学习论文数量出现指数级增长,而硬件论文仍然维持着原有的节奏。对于硬件公司而言,知识产权的泄露可以让它生让它死。而这导致了更加闭塞的研究文化。
在没有任何杠杆能够影响硬件发展时,机器学习研究者理性地将硬件看作沉没成本,而不是可塑造的事物。但是,不关注硬件不意味着它不存在。早期计算机科学史告诉我们硬件彩票的存在,即硬件和软件的选择决定了研究想法的成败。
硬件彩票
如果你只有一把锤子,那么你看什么都像钉子。 ——亚伯拉罕 · 马斯洛,1966
《安娜 · 卡列尼娜》的第一句话是:「幸福的家庭都是相似的,不幸的家庭各有各的不幸。」托尔斯泰用这句话表达,幸福的婚姻需要很多要素:财务稳定、两性吸引力、共同的价值观,健康的后代,而只要其中一项出现问题,家庭就会被毁掉。这后来以「安娜 · 卡列尼娜原则」的名义流行开来:「只要一个因素出现问题,则注定失败。」(Moore, 2001)。
尽管我们倾向于相信算法的成败是孤立的,但历史告诉我们,大部分计算机科学突破都遵循了安娜 · 卡列尼娜原则。成功与失败往往可以通过是否从多个因素中受益来进行判断。对于 AI 研究而言,这往往取决于「硬件彩票」,避免下游软硬件选择出现失误。
硬件彩票的早期例证是英国数学家查尔斯 · 巴贝奇 1837 年设计的分析机,(理论上)经过编程后它可以解决任意类型的计算。然而分析机并未被真正制造出来,因为巴贝奇难以制造出具备足够精度的组件。能够将查尔斯 · 巴贝奇所构建的理论基础变为现实的电磁技术在二战期间才出现。
20 世纪上半叶,电子真空管广泛用于无线电通信和雷达。二战期间,这些真空管被用来为破解德国英格玛密码提供算力。
在美剧《硅谷》中,常常会出现「捷足未必先登」的情况。直到巴贝奇 1871 年逝世时,他的想法和现代计算之间仍然没有建立起连续的路径。一个世纪后,随着合适的工具出现并证明这一想法 work,其存储程序、条件分支等概念才被重新发现。
失落的几十年
因为硬件彩票而导致损失的最显著例子或许就是深度神经网络了。使深度神经网络 work 的大多数算法组件已经存在数十年:反向传播(1963 年提出 (K & Piske, 1963),1976 年被重新发现 (Linnainmaa, 1976),1988 年再次被重新发现 (Rumelhart et al., 1988))、深度卷积神经网络((Fukushima & Miyake, 1982),1989 年卷积神经网络随反向传播一起被提出 (LeCun et al., 1989))。但是,三十年后,深度神经网络被广泛接受,成为前途无量的研究方向。
算法发展和实证成功的差距很大一部分来源于硬件不兼容。在通用计算机时代,CPU 等硬件得到广泛支持和应用。CPU 擅长执行复杂指令集,但会带来较高的内存成本,因为它需要缓存中间结果,且一次处理一条指令。这被叫做冯诺依曼瓶颈:可用算力受限于「CPU 和内存之间的数据传输带宽,而数据需要沿着这个通道顺序传递」(Time, 1985)。
冯诺依曼瓶颈尤其不适合矩阵相乘,而这正是深度神经网络架构的核心组件。因此,在 CPU 上执行训练会很快穷尽内存带宽,因而无法训练多层神经网络。1980 年代的《Parallel Models of Associative Memory》系列文章指出了对支持大量并行化的硬件的需求。这些文章认为,生物证据表明需要大量并行化才能使深度神经网络方法运行。
1980/90 年代末,神经网络专用硬件的概念过了新奇的阶段。但是,相关的尝试仍然受到缺乏共享软件和硬件开发成本的阻碍。大多数真正可用的尝试,如 1985 年的连接机、1992 年的 Space、1989 年的 Ring Array Processor 和日本第五代计算机项目,旨在支持逻辑编程,如 PROLOG 和 LISP,而它们并不适合联结主义深度神经网络。后续的迭代(如 HipNet-1 和 1991 年的模拟神经网络芯片)很有前景但存续时间并不长,因为它们迭代成本高昂且需要 custom silicon。没有消费者市场,自然也就没有能使之财政状况良好的终端用户临界规模了。
21 世纪初距离第一篇反向传播论文的发表已经过去了四十年,人们意识到要运行联结主义深度神经网络,硬件必须支持大量并行化,因此硬件方面需要出现突破。
很多发明后来的用途都背离了设计者的初衷。爱迪生发明的留声机本意并非演奏音乐,他的最初设想是用它保留将死之人的遗言或者教别人拼读。事实上他对留声机用来演奏流行音乐感到失望。类似地,深度神经网络也只在现有技术的用途得到重新定位后才开始 work。
GPU 最初作为视频游戏专用加速器于 1970 年代出现,可用于为电影和动画做图。21 世纪初,像爱迪生发明的留声机一样,GPU 被用于完全想象不到的使用场景:训练深度神经网络。GPU 比 CPU 具备一个核心优势,它们更擅长并行化处理一组简单的可分解指令,如矩阵相乘。更大的每秒浮点数(FLOPS)加以在多个 GPU 之间进行分布式训练,为深度网络的训练开启了大门。
这时,网络层数成为关键。ImageNet 数据集上的性能随着网络深度的增加而不断提升,如 2011 (Ciresan et al., 2011)、2012 (Krizhevsky et al., 2012) 和 2015 (Szegedy et al., 2015b)。2012 年谷歌发表论文,使用 16,000 个 CPU core 来识别猫 (Le et al., 2012),一年后谷歌仅用两个 CPU core 和 4 块 GPU 就解决了相同的问题 (Coates et al., 2013),这个例子证明了效率的跃升。
软件彩票
软件在研究想法成败中也发挥一定作用。在 20 世纪 90 年代中期之前,Prolog 和 LISP 语言广受 AI 社区支持。当时,人们希望 AI 学生积极掌握其中一门或两门语言。Prolog 和 LISP 尤其适合处理逻辑表达式,而这正是推理和专家系统的核心部分。
对于想要研究联结主义 idea(如深度神经网络)的研究人员,当时并没有适合的语言,直到 1992 年 Matlab 出现。用 LISP 或 Prolog 实现联结主义网络很难,大多数研究者使用的是低级语言,如 C++。到了 21 世纪初,随着 LUSH、TORCH 的出现,才开始形成支持适合深度神经网络的软件开发的更健康生态系统。
有得也有失。从 1960 年代至 1980 年代中期,大部分主流研究聚焦于符号方法。深度神经网络自行学习充足的表示,而符号方法旨在构建知识库,使用决策规则复制人类解决问题的方式。这通常被编码为逻辑序列,其中的语句非常适合 LISP 和 PROLOG 语言。
符号方法并未结出丰硕的果实,但这一研究方向在二十世纪下半叶广泛而持续的流行离不开它与当时编程和硬件框架的适配度。
未来之路
机器编码系统很大程度上应从算子获取结果的容易程度进行判断。
当存在多个因素促使科学家克服现有范式的「黏性」时,科学进步就会发生。AI 领域中范式转变的速度主要由硬件、软件和算法的匹配程度决定。因此,任何避免硬件彩票的尝试,都需要探索不同的「硬件 - 软件 - 算法」组合,以降低成本和时间。
然而,说来容易做来难。扩展硬件 - 软件 - 算法组合的搜索空间是一项棘手的任务。从时间和资金的角度来看,探索新的硬件类型成本高昂。生产下一代芯片通常需要 3000-8000 万美元和 2-3 年的开发时间。仅建一家制造厂的成本就很高,2017 年这一成本约为 70 亿美元。
使用强化学习来优化芯片布局的实验可能有助于降低成本。这也使大家对现场可编程门阵列(FPGA)和粗粒度可重构阵列(CGRA)等可重构硬件重新产生了兴趣。这些设备允许重构芯片逻辑,从而避免单一应用。但是,换取灵活性的代价是更高的 FLOPS 和定制化的软件开发。在 FPGA 上即使编码简单的算法也非常麻烦和耗时。
中短期来看,硬件开发可能仍然成本高昂且周期较长。生产硬件的成本很重要,因为这决定了硬件开发者愿意忍受的风险程度和试验数量。对适合深度神经网络的硬件的投资已经有所保障,因为神经网络是许多商业用例的基础。深度学习下游用例的盈利能力刺激了硬件创业公司的健康生态系统,以进一步加速深度神经网络,鼓励大企业内部开发定制硬件。
瓶颈仍然是针对无法立即商用案例的硬件投资。这些高风险的方向包括生物学硬件、内存内计算的模拟硬件、神经形态计算、光学计算和量子计算。使用新材料开发晶体管也存在较高风险。
从之前的硬件彩票示例中我们可以学到一些经验,投资应当持续地来自私人和公共资助项目。公共部门对提供此类专门资源的兴趣正在缓慢地觉醒,如 2018 DARPA Electronics Resurgence Initiative 承诺向微电子技术研究投入 15 亿美元,中国宣布投资 470 亿美元支持半导体研究。但是,如此大规模的投资仍然可能是杯水车薪,因为基于新材料的硬件需要 10-20 年的时间,公共投资目前仍远远低于行业研发水平。