Qualcomm博客

我们让终端侧的人工智能无处不在

2017年8月30日

Qualcomm products mentioned within this post are offered by Qualcomm Technologies, Inc. and/or its subsidiaries.

在我们预想中的世界里,人工智能将使终端、机器、汽车和万物都变得更加智能,简化并丰富我们的日常生活。它们将能够基于场景认知,进行感知、推理并采取直观行动,改善目前我们提供给用户的所有体验,并解决我们目前更多交给常规算法所去处理的相关问题。

人工智能(AI)正是驱动这次革命的技术。你可能听说过这一愿景,或认为人工智能只和大数据、云端有关,但Qualcomm的解决方案已具备合适的功耗、散热和处理效率,让强大的人工智能算法在实际的终端上运行,而这将带来诸多优势。

得益于现代终端设备对大量数据的掌握,以及在算法和处理能力方面的提升,人工智能成为了快速增长的普遍趋势。新技术似乎总是出其不意地出现,但在时机成熟并取得关键进展之前,研究人员和工程师们通常需要辛苦钻研很多年。

在Qualcomm,创新是我们的企业文化。我们为研发出大规模改变世界的基础技术而深感自豪。在人工智能方面也不例外。我们于十年前就开始了基础研究,目前我们的现有产品支持了许多人工智能用例:从计算机视觉和自然语言处理,到各种终端,如智能手机和汽车上的恶意软件侦测。同时,我们正在研究更广泛的课题,例如面向无线连接、电源管理和摄影的人工智能。

我们在机器学习方面有着深厚积累

我们对机器学习的投入有着悠久的历史。自2007年,Qualcomm开始探索面向计算机视觉和运动控制应用的机器学习脉冲神经方法,随后还将其研究范围从仿生方法拓展到了人工神经网络——主要是深度学习领域(这是机器学习的一个子范畴)。我们多次见证了基于深度学习的网络在模式匹配任务中展现出一流的成果。一个令人瞩目的例子就是,2012年AlexNet利用深度学习技术(而非传统手作计算机视觉)赢得ImageNet比赛。我们自己也在ImageNet挑战赛中利用深度学习技术获得成功,在物体定位、物体侦测和场景分类比赛中名列前三名。

我们还将自主研究和与外界人工智能团体合作的领域扩展到诸如递归神经网络、物体跟踪、自然语言处理和手写识别等其他前景广阔的领域和机器学习应用等。2014年9月,我们在阿姆斯特丹开设了Qualcomm Research荷兰分支,作为机器学习研究的基地。我们通过Qualcomm创新奖学金计划与博士研究生紧密合作,开展前瞻性的理念研究。2015年9月,我们与阿姆斯特丹大学(QUVA)建立联合研究实验室,专注于推动面向移动计算机视觉的、最先进的机器学习技术发展。通过收购位于阿姆斯特丹的领先人工智能公司Scyfer,我们进一步深化与阿姆斯特丹人工智能业界的合作关系。Scyfer的创始人Max Welling是阿姆斯特丹大学知名教授,主攻机器学习、计算统计学和人工智能基础研究。Scyfer专注于应用广泛的机器学习方法以解决实际问题。Scyfer团队将加入Qualcomm Research机器学习团队。

支持终端侧机器学习的出色功耗和性能

为了实现我们的智能终端愿景,我们也意识到基于机器学习的解决方案需要在终端上运行,无论终端是智能手机、汽车、机器人、无人机、机器或是其他设备。与在云端运行的人工智能相比,在终端侧运行人工智能算法——亦称推理,具有诸多优势,例如即时响应、可靠性提升、隐私保护增强,以及高效利用网络带宽。

当然,云端仍然十分重要,并作为终端侧处理的补充而存在。云端对汇集大数据以及在终端上运行的许多人工智能推理算法的训练(现阶段)是必要的。但是,在很多情况下,完全基于云端运行的推理在自动驾驶等时延敏感和关键型任务的实时应用中会遇到问题。此类应用无法负担数据传输往返的时间,或在无线覆盖变化时依靠关键功能运行。进一步讲,终端侧推理从本质来说更加私密。

我们不想把自己仅仅局限在运行终端侧推理。我们也与云端协同合作,面向手势识别、连续认证、个性化用户界面和面向自动驾驶的精密地图构建等使用场景进行终端侧人工智能训练。实际上,得益于高速连接和高性能本地处理,我们有独特的能力去探索未来架构,实现最佳的总体系统性能。

高效运行终端侧人工智能需要异构计算

十多年来,Qualcomm一直专注于在移动终端的功耗、散热和尺寸限制之内,高效地处理多种计算工作负载。Qualcomm骁龙移动平台是最高性能移动终端的首选系统级芯片(SoC)。人工智能工作负载在这方面提出了另一个挑战。通过在适宜的计算引擎上运行各种机器学习任务(如CPU、GPU和DSP等),我们能提供最高效的解决方案。这已经集成在了我们的SoC中。Qualcomm Hexagon DSP就是一个典型范例,它最初是面向其他向量数学密集型工作而设计,但已通过进一步增强用来解决人工智能的工作负载。实际上,在骁龙835上支持Qualcomm Hexagon向量扩展的Hexagon DSP,与Qualcomm Kryo CPU相比,在运行相同工作负载时(GoogleNet Inception网络)能够实现25倍能效提升和8倍性能提升。

架构的多样性是至关重要的,你不能仅依赖某一类引擎处理所有工作。我们将持续演进面向机器学习工作负载的现有引擎,保持我们在性能表现最大化上的领先优势。利用我们对新兴神经网络的研究,我们在专注提升性能表现,以扩展异构计算能力,应对未来人工智能工作负载上已具备了优势。实际上早在2012年,我们已预见了通过专用硬件高效运行人工智能的构想。

我们正大规模普及人工智能

让开发者能简单利用异构计算并非易事,仅有优良硬件还不够。为了弥补这一差距,我们发布了骁龙神经处理引擎(NPE)软件开发包(SDK)。它能缩短终端侧卷积神经网络(CNN)和递归神经网络(RNN)在合适的骁龙引擎(例如Kryo CPU、Qualcomm Adreno GPU和Hexagon DSP)上的运行时间,对图形识别和自然语言处理分别都有着重要作用。相同的开发者API给每个引擎都提供接入口,从而使开发者能够方便地无缝切换人工智能任务。

该神经处理引擎还支持通用深度学习模型框架,例如Caffe/Caffe2和TensorFlow。该SDK是利用骁龙技术提供最佳性能和功耗的轻量灵活平台,旨在帮助从医疗健康到安全的广泛行业内的开发者和OEM厂商,在便携式终端上运行它们自己的专有神经网络模型。例如,今年的F8大会上,Facebook和Qualcomm Technologies宣布合作,支持优化Facebook开源深度学习框架Caffe2,以及NPE框架。

通过持续研究扩展人工智能范围,并带来效率提升

我们正处于机器学习发展征程的最初期,深度学习也仅是具备改变计算潜力的多项机器学习技术之一。

为了实现更复杂的应用,我们在多个领域持续前进:

  • 专门的硬件架构:持续关注低功耗硬件(无论增强型、专用型还是定制型),以处理这些机器学习工作负载;
  • 神经网络技术的提升:针对半监督和无监督训练进行相关研究,如生成式对抗网络(GANs)、分布式学习和隐私保护;
  • 面向终端侧应用的网络优化:进行压缩、层间优化、稀疏优化,以及更好地利用内存和空间/时间复杂度的其他技术的相关研究;

在终端侧完成全部或大部分思考的、“始终开启”的智能终端中蕴藏着巨大的机遇,我们期待通过研究和产品化推动先进机器学习的发展。目前,Qualcomm人工智能平台可通过高效的终端侧机器学习,提供高度响应、高度安全且直观的用户体验。未来还有更多可能。

请关注我们未来发布的关于神经处理架构研究和机器学习应用的博客文章,我们所探讨的话题将包括增强型连接、电源管理和更佳的拍摄。

关注微博或扫描下方二维码关注微信公众号(ID:Qualcomm_China),了解更多 Qualcomm 资讯。