天天看点

机器学习第一次作业

嵌入式神经网络处理器的前沿技术介绍、展望、应用

目前而言,AI软件应用的算法已经到达一个效率瓶颈,在没有新的算法被提出之前人工智能领域的计算效率无法得到较大的提升,而此时人们将目光聚集到硬件方面,企图通过升级硬件的计算能力来进一步提高人工智能的计算效率,在这样的前提下NPU被人们所提出。嵌入式神经网络处理器(Neural-network Processing Units, NPU)是专门为物联网人工智能而设计的硬件部门,采用“数据驱动并行计算”的架构,特别擅长处理视频、图像类的海量多媒体数据,广泛应用于加速神经网络的运算,解决传统芯片在神经网络运算时效率低下的问题。

人工智能自1956年被提出后一直处于间歇性热门的状态,每当一个新的算法被提出解决了以往的问题时就会让这个学科火热起来,然后马上又遇到了新算法无法解决的问题而逐渐冷门。NPU、TPU等针对人工智能领域的计算芯片的研发能为人工智能算法在硬件层面上分担一部分工作压力,在一定程度上解决人工智能算法的性能瓶颈,促进人工智能的发展,也意味着人工智能在硬件领域也得到了发展。

应用方面,一般而言NPU更多的是作为AI软件的硬件协作部门,例如华为提出的达芬奇架构NPU,与CPU和GPU的不同之处在于其针对张量运算做了特化,非常擅长处理AI软件中涉及的大量向量运算,从而提高人工智能算法的效率。

NPU在国内的先进与不足

目前国内NPU领域有中科院团队发明的寒武纪构架NPU以及华为公司发明的达芬奇构架NPU,目前华为的达芬奇NPU已经广泛应用于华为旗下的手机中,大大提高了部分手机AI功能(例如人工智能相机)的运行效率,中科院也推出了用于服务器平台的寒武纪NPU芯片,NPU在国内的发展还是领先于世界的。但目前的软件应用与这两款NPU对接的难度不小,开发者很难针对NPU平台开发AI应用。简而言之还需要加强研发类似于CUDA这样契合软件与GPU的平台,如何让AI软件与NPU硬件更加契合工作,降低NPU软件的开发难度是目前需要解决的问题。