机器学习中的硬件彩票理论.

本文的核心思想:

软硬件分流 Separate Tribes

作者回顾了软硬件的发展历史。

在早期,大部分“计算机器”并不区分软件硬件,因为当时的硬件都是为了某一特定用途制造的,例如巴比奇的差分机就是专门用来计算多项式函数的。此时软件和硬件都绑定在一起。

直到1969年,通用的计算机时代才慢慢到来,这股浪潮中的一个佼佼者叫做Gordan Moore,他也提出了著名的摩尔定律you could double the amount of transistors on an integrated circuit every two years. 虽然当时Moore是为了卖出更多芯片才出此言,但是这一定律至今都奏效。

从那时到现在,计算机的计算能力大幅提升,而且通用计算机的概念也深入人心。这也就带来了软硬件的分流。

硬件彩票 The Hardware Lottery

托尔斯泰在《安娜卡列尼娜》的开篇写到:幸福的家庭都是相似的,不幸的家庭各有各的不幸。 这句话也引申出了安娜卡列尼娜定律: 任何一个因素的缺陷都会导致最终的失败。在计算机系统中,任何成功都需要避开所有可能的软硬件问题。

作者举了几个例子:

  1. 巴比奇的分析机早在1837年就被提出来了,但是当时的工艺水平达不到设备所需的精度。建造他所设想的机器所需的条件,到二战后随着电磁技术的进步才开始具备,而这种用于计算机的电子真空管其实最早是被广泛应用于雷达上的。
  2. 现在流行的神经网络技术,其最重要的几个部件其实很早就提出了,反向传播最初诞生于1963年,CNN诞生于1979年。但是直到三十年后,神经网络才被广泛接受。从算法提出到实际的成功,其中巨大的差距是由缺乏合适的硬件造成的。而最终促成神经网络流行的硬件,也就是GPU,其建造的目的是为了进行图像渲染和视频游戏。
  3. 上述神经网络在上世纪的迷失,也有缺乏合适软件的原因。彼时,人工智能的标准语言是PrologLISP,但是它们更加适合用于逻辑表达。而适合开发神经网络的语言,要等到1992年的matlab出现才开始成长起来。

由此可以看出,每个研究的提出,都可以看作当时买了一张硬件彩票,如果当时具有合适的硬件,那么就可以发展起来,否则就往往要经历一段低潮期。

硬件对未来算法的影响

作者提出,算法研究者往往低估了硬件对算法研究方向的引导作用:

  1. 硬件的开发成本巨大,即使巨头也不敢轻易尝试新的方向,因此很容易造成路径依赖。
  2. 一些新算法的提出,如果计算需求和当前主流需求不同,那么往往没有特定的硬件来给这种算法带来足够的加速。这里作者举了胶囊神经网络的例子。由此而来,这种算法就无法得到更进一步的发展。
  3. 当前成功的算法,会推动硬件领域的“专门化”。例如神经网络的流行,使得TPU/NPU这类特制的用于加速神经网络计算的硬件得到极大发展,这类硬件也会反过来影响算法的开发和研究。

因此作者呼吁研究者要尽量摆脱路径依赖,避免硬件彩票效应,以免某项新技术再像神经网络一样经历失落的三十年。