从计算的早期开始,人们就一直认为AI有朝一日会改变这个世界。几十年来,我们已经看到无数对未来的描述,但技术本身仍然难以捉摸。这一切都在五年前发生了变化。随着现代深度学习的出现,AI第一次触手可及。
今天的AI开发主要围绕深度学习算法。这些算法都有一个共同点,就是需要大量的计算能力。为了在通用智能上取得实际进展,我们需要好好看看为这项技术提供动力的计算系统。
2009年GPU的发明被视为一个关键点,引发了围绕深度学习的寒武纪爆发。从那时起,对并行计算架构的投资爆炸式增长。CB Insights表示,仅在2017年,新的专用AI芯片创业公司就筹集了15亿美元。这太惊人了。
新的创业公司纷纷入场,挑战英特尔、AMD、Nvidia、微软、高通,谷歌和IBM等老牌企业。像Graphcore、Nervana、Cerebras、Groq、Vathys、Cambricon、SambaNova Systems和Wave Computing这样的新兴公司正在成为为深度学习的未来铺平道路的新星。虽然这些初创公司肯定资金充足,但它们都处于早期阶段,我们还猜不出谁会成为赢家,老牌企业又会做到什么。
Nvidia将GPU作为人工智能和深度学习的替代品引入主流。该公司从消费者游戏领导者到AI芯片公司的转变很不错。对Volta的30亿美元投资以及像CUDA / cuDNN这样的深度学习软件库把Nvidia推向市场主导地位。去年,其首席执行官Jensen Huang被《财富》杂志评为年度最佳商人,公司也获得了“新英特尔”的美誉。
从表面上看,Nvidia已经彻底变了,但实际上它几十年来一直在制造相同的显卡。GPU是不是AI技术的未来尚不确定。批评者认为,GPU不适用于深度学习。 GPU是通用设备,可支持各种应用,包括从物理模拟到电影渲染的所有应用。而且不要忘记,在2009年深度学习中首次使用GPU实质上是一次黑客行为。
ASIC则正在兴起。向芯片市场发起进攻的公司正在证明AI将在专用芯片上速度要快得多。最有希望的候选者是ASIC,它可以高度优化以执行特定任务。如果将芯片从通用到专用分级,那么一头是通用的CPU,一头是专用的ASIC,中间的是GPU和FPGA。
CPU在执行高度复杂的操作方面非常有效——这基本上与支持深度学习训练和推理的特定数学类型相反。新进入者正在押注ASIC,因为它们可以在芯片级设计,以处理大量简单的任务。主板可以专用于一组窄函数——在这种情况下,稀疏矩阵乘法具有高度并行性。即使是设计为可编程且因此稍微更通用化的FPGA,其可能的多功能性也受到阻碍。
专用AI芯片的性能提升是显而易见的。这对更广泛的技术领域意味着未来是去商品化的。
相对于CPU而言,GPU已经去商品化了,而我们所看到的AI芯片投资的巨大增长意味着GPU最终会被更专业的东西取代。Nvidia的兴起就是因为英特尔的x86 CPU技术太通用,无法满足对图形密集型应用不断增长的需求。而这一次,英特尔和Nvidia都不会袖手旁观,让创业公司吞噬这个新市场,因为机会太大了。
可能的情况是,我们会看到Nvidia和英特尔继续大力投资Volta和Nervana(以及后续产品)。由于互操作性问题,AMD一直在苦苦挣扎,但很可能会有可用的东西。微软和谷歌正在Brainwave和TPU等项目上取得进展。然后是所有创业公司——这份名单似乎一直在增长,你很难找到一个风险投资基金没有对至少一个参与者投下重注。
芯片领域的另一个问题是边缘计算,其中推理是直接在设备上计算的,而不是云中或公司内部的数据中心。模型可以直接部署在边缘,以满足低延迟要求或对低功耗、间歇连接设备(嵌入式、物联网)进行预测。最近有数个关于基于边缘的AI加速器发布,例如谷歌的Edge TPU。
芯片领域的任何新人面临的最大挑战不是硬件,而是软件。Nvidia凭借CUDA / cuDNN在市场上占有一席之地——CUDA / cuDNN是软件库,构成了位于芯片顶部的必要抽象层,使TensorFlow和PyTorch等框架无需编写复杂的低级指令即可运行。如果没有这些高级库,通常很难从代码的角度来定位芯片。
问题是,CUDA和cuDNN不是开源的。它们是专有包,只能在Nvidia硬件上运行。在开发人员可以利用ASIC之前,提供商需要首先找到一种新方法,使框架可以轻松访问其芯片。如果做不到这一点,开发人员将不会大规模采用,开发人员只会坚持使用Nvidia。需要有一个等同于CUDA / cuDNN的开源或需要移植到特定ASIC的框架,就像Google对TPU和TensorFlow所做的那样。如果没有明确的解决方案,这是一个巨大的障碍。
这是什么意思呢?
至少在短期内,我们会看到太多的芯片,一些直接相互竞争,另一些则专注于训练和推理的特定方面。这意味着开发人员会有很多选择。与大规模商品化的CPU市场不同,这样一个市场看起来更朝着一个更加多样化、异构化和特定于应用程序的未来前进。
虽然我们不知道具体结果是什么,但有一点是肯定的:AI的未来在于专用ASIC而不是商品化硬件。
微信扫描二维码,关注公众号。