移动端的深度学习正在风起云涌,从去年NIPS的研讨会到今年高通、华为的芯片带来的强大智能能力,无一不在应验着这一趋势。
目前为止人工智能的进步主要来自海量的数据资源和日渐增长的强大计算能力。典型的机器学习通常被构建在单一的数据中心上,可以接入全球的数据集和海量的存储与计算能力。目前很多深度学习算法都运行在云端,通过Caffe、tensorflow等计算框架搭建模型,并利用GPU, TPU等计算硬件驱动。这种方式构成了目前深度学习实现方式的主流方案。
但这种方式对于要求低延时、计算量功耗有限的应用时,就会出现各种各样的问题。例如在空中飞行的无人机、控制无人驾驶车辆、手术机器人等。为了完成一系列精细的任务、未来的无线通信系统需要在网络的边缘(靠近设备端)进行更多的决策,甚至当通信链路中断时能够保证系统更加可靠、更加迅速的响应。
这一趋势带来了去中心化机器学习的迅速发展,这种新的机制可以将训练数据存储在很多的节点中,并协同工作来为问题找到合适的解决方案。设备端的机器学习与此类似,它的本质是利用去中心化的方式训练出一个高可靠性的中心化模型。训练数据在每一个节点上分布很不均匀,同时每个节点只有包含整个数据的一小部分。
这样的方式有很多优点:和基于云的人工智能相比,设备端的AI可以保护隐私,因为个性化的训练在本地完成训练数据无需上传至云端。同时训练也在本地完成、并且通过无线或者云的方式来对节点进行汇总、共享训练的结果。这意味着所有的设备都可以接入相同的全局模型。
但目前设备端机器学习的大规模应用在工程和学术上还面临着一系列挑战。为了保证隐私的安全,研究人员们需要研究差分隐私技术来保证数据安全;当训练数据稀疏时,还需要利用联合学习和迁移学习来实现设备端的智能化。我们无需从零开始训练模型,而是利用丰富的源数据训练好模型后,将学习到的知识迁移到目标领域;除此之外,由于设备端的计算、能耗资源有限,适用的机器学习模型必须经过有效的优化才能够准确高效的运行(比如取出一些层及层中的神经元等),同时也需要对于计算精度、能耗做出有效的权衡。
由于计算资源的有限,算法需要同时在本地和云端运行。这样可以保证对于个性化的设备端AI和云端的集成AI都有很好的控制,并使得设备可以依靠云端强大的存储和计算能力来获取更快更好的表现。
这一本地和远程计算的问题被称为任务卸载,这意味着一个任务可以同时在本地设备上运行、或者远程的在网络上运行,或者在两者上同时运行。为了寻找最优的策略,需要综合考量应用需求、神经网络模型、功耗、网络吞吐量等一系列问题,而这些依然是工程师们孜孜不倦在研究和解决的问题。
另一个重要的挑战是使得设备端的AI与系统设计相匹配。典型的机器学习是中心化的应用,一般会为每一个主体最大化平均效果,但在设备端的AI却由于有限的训练数据更倾向于不确定性和随机性,同时还受到设备间不可靠连接的影响,当设备将任务迁移到云或者其他设备时通信延时也是一个重要的影响。这意味着设备端的AI 需要知道如何在非常不同的场景对预测进行针对性的处理,而不是像中心化机器学习一样将所有主体合成整体作平均考虑。
对于这样的设备端AI来说,超可靠-低延时的通信是系统得以顺利工作的保证,这也是目前5G的关键技术之一。随着5G时代的到来,人工智能将被应用到自动化网络中去,深刻的改变下一代无线系统。
目前设备端的AI正处于研究发展的初期,需要走出一条与基于云的中心化AI不同的道路。它们向着网络边缘计算和通信的方向迈进,通过互相分享各自的模型(而不是隐私数据)来建立起一个中心化的全局模型,综合考虑了延时、可靠性、隐私、功耗和精度。这样的学习方式将会在不久的将来改变设备生产和编程的方式,并为世界带来我们不曾见过的全新能力。
-
人工智能
+关注
关注
1791文章
46882浏览量
237628 -
机器学习
+关注
关注
66文章
8381浏览量
132428 -
深度学习
+关注
关注
73文章
5493浏览量
120987
原文标题:是时候让深度学习算法从云端走入你的口袋中了,移动端机器学习将让智能手机更聪明
文章出处:【微信号:thejiangmen,微信公众号:将门创投】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论