正文
微软的松鼠机器人不是这个故事的重点,重点是微软在一个ARM CPU上做起了卷积神经网络。这显示了大公司正在进一步推动硬件来支持AI算法。研究人员正在推动人工智能的能力,使其能够实现越来越多基本的任务,例如视觉和语音识别。
随着自主飞机、自动驾驶汽车等的技术越来越来越先进,硬件上的挑战也在增加。许多企业正在生产能够处理这些计算的定制芯片和计算节点。
分析公司 ABI Research 的研究主管 Jeff Orr 将AI硬件的进步分为三大领域:云服务,设备上(on-device),和混合(hybrid)。云服务的关注点在微软、亚马逊、谷歌等公司的超大型数据中心环境中运行的AI处理。
另一方面,设备上发生的处理更多,这是连接或延迟发送数据到云上的地方。Orr 说:“在智能手机或可穿戴设备,例如智能眼镜使用语音作为输入,这会继续增长。现在设备上只是没有大量的现实世界例子。”他认为增强现实是这方面的关键驱动力。
最后,hybrid方面的工作是的两个平台联合完成AI计算。这就是你的手机如何识别到你向它提问的内容,并使用基于云的人工智能去回答你的问题。
云的重要性源自AI学习的方式。AI模型越来越多地转向深度学习,即使用具有许多层的复杂神经网络来创建更准确的AI程序。
神经网络的使用有两个方面:第一个是训练,网络分析大量数据以生成一个统计模型。这实际上是“学习”阶段。第二个是推理,神经网络对数据进行解释以产生准确的结果。训练这些网络需要消耗大量的计算能力,但训练负载可以分为许多同时运行的任务。这就是为什么具有双精度浮点和核数很多的GPU表现如此好的原因。
然而,神经网络越大,挑战也越大。英伟达 Accelerate Computing Group 副总裁 Ian Buck 表示,神经网络的规模每年都在翻倍。英伟达正在创造计算能力更强大GPU架构来应对,但该公司也在改变其数学的处理方式。
Buck说:“通过减少一些精度可以做到。”最初,神经网络的训练全部发生在32位浮点,但英伟达今年5月发布的一个具有32位内部数学的16位输入的Volta结构,优化了这一点。
根据Buck的说法,将计算精度降低到16位有两个好处。他说:“一方面,你可以利用更快的计算能力,因为处理器在较低分辨率下往往有更大的吞吐量。”削减精度也能增加可用带宽的量,因为每个计算获取的数据量更少。
“问题是,你能降低到何种程度?”Buck说,“如果精度太低,就不能训练。你永远达不到生产所需的精确度,或者会变得不稳定。”