神经魔术:启动使深度学习成为可能,而不需要专门的硬件

2020-06-19 02:39:34

让尼尔·沙维特(Nir Shavit)创办公司的发现与大多数发现的方式一样:偶然。这位麻省理工学院教授正在进行一个重建老鼠大脑地图的项目,他需要一些深度学习的帮助。由于不知道如何对图形卡(GPU)进行编程,这是深度学习模型最常见的硬件选择,他转而选择了中央处理器(CPU),这是任何普通笔记本电脑中最通用的计算机芯片。

“你瞧,”沙维特回忆道,“我意识到CPU可以做GPU做的事情--如果编程正确的话。”

这种洞察力现在是他的初创公司Neural Magic的基础,该公司今天发布了第一套产品。其想法是允许任何公司在不需要专门硬件的情况下部署深度学习模型。它不仅将降低深度学习的成本,还将使人工智能更广泛地获得。

“这意味着你可以在更多的机器和更多的现有机器上使用神经网络,”麻省理工学院计算机科学和人工智能实验室的研究科学家尼尔·汤普森(Neil Thompson)说,他没有参与“神经魔术”。“你不需要升级到特别的东西。”

GPU成为深度学习的首选硬件在很大程度上是巧合。这些芯片最初是为了在视频游戏等应用程序中快速渲染图形而设计的。与CPU不同,CPU有四到八个复杂的内核来执行各种计算,而GPU有数百个简单的内核,只能执行特定的操作-但这些内核可以同时处理它们的操作,而不是一个接一个地处理,从而缩短了完成密集计算所需的时间。

没过多久,AI研究界就意识到,这种大规模并行化也让GPU成为深度学习的绝佳选择。与图形渲染一样,深度学习涉及执行数十万次的简单数学计算。2011年,谷歌与芯片制造商英伟达(Nvidia)合作,发现它在2000个CPU上训练的计算机视觉模型,以区分猫和人,当只在12个GPU上训练时,可以达到同样的性能。GPU成为了模型训练和推理的事实上的芯片-当训练的模型用于它所训练的任务时,发生的计算过程。

但是GPU对于深度学习也不是完美的。首先,它们不能作为独立的芯片发挥作用。因为它们可以执行的操作类型有限,所以它们必须连接到CPU才能处理其他所有事情。GPU也有有限数量的高速缓冲存储器,这是离芯片处理器最近的数据存储区。这意味着大部分数据存储在芯片外,必须在处理时检索。来回的数据流最终成为计算的瓶颈,限制了GPU运行深度学习算法的速度。

近年来,涌现出数十家公司设计绕过这些问题的人工智能芯片。问题是,硬件越专业,它就变得越昂贵。

因此,“神经魔术”打算与这一趋势背道而驰。该公司没有对硬件进行修修补补,而是修改了软件。它重新设计了深度学习算法,通过利用芯片的大量可用内存和复杂的内核,使其在CPU上更高效地运行。虽然这种方法失去了通过GPU并行化获得的速度,但据报道,它通过消除在芯片上和芯片之间传送数据的需要,获得了大约相同的时间。该公司表示,这些算法可以在CPU上“以GPU速度”运行,但成本只有GPU的一小部分。汤普森说:“听起来他们所做的似乎是想出了一种利用CPU内存的方法,这是人们以前没有过的。”

“神经魔术”认为,以前没有人采取这种方法可能有几个原因。首先,这是违反直觉的。深度学习需要专门硬件的想法是如此根深蒂固,以至于其他方法很容易被忽视。其次,将人工智能应用于行业还相对较新,公司才刚刚开始寻找更容易的方法来部署深度学习算法。但需求是否足够深,足以让NeuroMagic起飞,目前仍不清楚。该公司一直在与大约10家公司对其产品进行Beta测试-这只是更广泛的人工智能行业的一小部分。

NeuroMagic目前提供了计算机视觉中的推断任务的技术。客户仍然必须在专门的硬件上训练他们的模型,但然后可以使用NeualMagic的软件将训练过的模型转换成CPU兼容的格式。Shavit说,一家客户,一家大型显微镜设备制造商,现在正在试验这种方法,以便在其显微镜上添加设备上的人工智能功能。因为显微镜已经配备了CPU,所以它们不需要任何额外的硬件。相比之下,使用基于GPU的深度学习模型将要求设备更笨重、更耗电。

另一个客户想要使用“神经魔术”来处理安全摄像机的录像。这将使它能够使用现场已有的计算机监控进出大楼的流量;否则,它可能不得不将录像发送到云中,这可能会带来隐私问题,或者为它监控的每座建筑购买特殊硬件。

沙维特说,推断也只是个开始。NeuroMagic计划在未来扩大其产品范围,以帮助公司也在CPU上培训他们的人工智能模型。“我们相信10到20年后,CPU将成为运行机器学习算法的实际结构,”他说。

汤普森就不那么确定了。他说:“围绕芯片生产,经济真的发生了变化,这将导致更多的专业化。”此外,尽管NeualMagic的技术从现有硬件中获得了更高的性能,但基础硬件的进步仍将是继续推动计算向前发展的唯一途径。“这听起来是提高神经网络性能的一个很好的方法,”他说。“但我们不仅要改进神经网络,还要改进整体计算。”