第一个手机端分布式深度学习系统,设计自动化顶会 DATE 最佳论文-阿里云开发者社区

开发者社区> 新智元> 正文

第一个手机端分布式深度学习系统,设计自动化顶会 DATE 最佳论文

简介:

DATE——Design, Automation and Test in Europe,是欧洲最大的设计自动化会议。DATE 汇集的人群从研究者、开放商到终端用户,几乎覆盖了整个生态。具体说,设计师和设计自动化的用户、研究人员和供应商,以及电子电路和系统的软硬设计、测试和制造的专家。此外,DATE 非常强调 IC/SoC,可重配置硬件,还有嵌入式系统。


2017 年的 DATE 本月 27 号在瑞士洛桑揭幕。在为期 5 天的会议中,除了常规的主旨演讲、论文发表、讲座和研讨会,还有一个商业展出,展示的内容包括最先进的设计和测试工具、方法、IP 以及设计服务,还有可重构和其他的硬件平台,比如汽车、无线、电信和多媒体应用。可以说,相比其他顶会,DATE 的内容可能与我们的生活关系更为密切。


每届顶会的论文都代表了领域“热门研究方向”、“最新研究方法”,其中尤属最佳论文值得关注。2017 年 DATE 评选出了 4 篇最佳论文,设计(D Track)、应用(A Track)、测试(T Track)和嵌入式软件(E Track)四个分类各一篇。其中,2017 年 DATE 嵌入式软件 E Track 的最佳论文奖被授予了杜克大学陈怡然教授组关于移动平台深度学习计算的文章——《MoDNN:用于深度神经网络的本地分布式移动计算系统》。


640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

*投稿时陈怡然教授尚在匹兹堡大学,今年初已转到杜克大学工作


在这篇论文中,研究人员提出了一个可以通过无线局域网(WLAN)工作的深度神经网络(DNN)的本地分布式移动计算系统,叫做 MoDNN。MoDNN 可以通过在多个移动设备之间引入执行的并行性,显著加速 DNN 的计算。


DNN 的应用越来越广,不仅是在大型的数据中心,现在,有些智能手机的功能也强大到能运行某些深度学习,举几个常见的例子,过滤掉麦克风里的杂音,或者删除加速计采集的数据里不必要的信号。


深度学习可以大幅提升手机 App 的性能,让智能手机变得更加“智能”。这一切的基础,就是在移动端也能运行 DNN。


研究人员表示,“据们所知,本文是第一篇利用WLAN中的各种移动设备作为DNN计算资源的论文,在执行并行性增强和数据传输方面有多项创新”。


下面我们就来具体看一下陈怡然教授组的这项研究成果。


640?wx_fmt=jpeg&tp=webp&wxfrom=5&wx_lazy


论文 MoDNN:用于深度神经网络的本地分布式移动计算系统


640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=


作者:毛驾臣、陈翔、Kent W. Nixon、Christopher Krieger,陈怡然


摘要


虽然深层神经网络(DNN)在许多应用中被广泛使用,但是通常难以在资源受限的设备(例如移动平台)上部署DNN。一些现有的尝试主要集中在客户端 - 服务器计算模式或DNN压缩模型中,这需要基础设施的支撑或专门的训练。本文提出了MoDNN——一个用于DNN应用的本地分布式移动计算系统。MoDNN 可以将已训练的DNN模型分割到多个移动设备上,减轻设备级计算成本和内存使用,从而加速DNN计算。我们还设计了两种模型分区方案以最小化非并行数据的传递时间,包括唤醒时间和传输时间。实验结果表明,当工作节点数从2增加到4时,MoDNN可以加速DNN计算2.17-4.28×。除了并行执行之外,性能加速也部分来自于数据传送时间的减少,例如对于传统2D网格分区,减少了30.02%。


背景介绍


移动网络日益增长的带宽激发了移动设备上多媒体交互式应用的快速增长,这涉及密集的对象识别和分类任务。深度神经网络(DNN)由于其高精度和自适应性而被广泛地用于执行这些任务。然而,DNN的运行会占用相当大的资源。一个代表性的例子是VGG,它代表了2014年 ImageNet 大规模视觉识别挑战(ILSVRC14)的最先进性能。VGG具有15M的神经元、144M的参数和3.4B的连接。当部署在移动设备时,VGG花费大约16秒来完成一个图像的识别过程,这在实践中是不可容忍的。


DNN的巨大计算负载和移动设备的有限计算资源之间的鸿沟对用户体验产生了不利影响,并催生了一些研究工作来填补这一鸿沟。例如,客户端 - 服务器模式是一种直接的解决方案,可以有效地将高计算成本卸载到外部基础设施上:Hauswald etal.(2014) 提出了一种流水线机器学习结构中的数据卸载方案; Li et al.(2014) 建立了DNN训练的高效分布式参数服务器框架。此外,也有许多研究致力于减少DNN的计算工作量,例如模型压缩:Han et al.(2015)使用三级流水线深度压缩DNN模型:剪枝,受训量化和霍夫曼编码;Chen et al(2015)引入了低成本哈希函数将权重分组到哈希桶中以用于参数共享。


我们发现,有一个重要的场景,在以前的研究中还没有充分考察。那就是,在本地分布式移动计算系统上运行DNN。与由外部基础设施支持单个移动设备的客户端 - 服务器模式相比,本地分布式移动计算系统有几个重要的优势,包括更多的本地计算资源、更高的隐私、对网络带宽更少的依赖等等。


这篇论文的主要贡献是:


  1. 调查了使用多个授权的、支持WiFi的、用于DNN计算的移动设备在WLAN中构建计算集群的方法。携带了测试数据(例如图像)的移动设备充当 Group Owner(GO),其他设备充当工作节点;

  2. 基于两类DNN层的特性(卷积层和完全连接层)和不同移动设备的计算能力,提出两种分区方案以最小化移动设备之间的数据传送时间;

  3. 在计算集群中的每个移动设备上使用中间件来调度整个执行过程。


据我们所知,本文是第一篇利用 WLAN 中的各种移动设备作为DNN计算资源的论文,在执行并行性增强和数据传输方面有多项创新”。实验结果表明,当工作节点数从2增加到4时,由于实现了高执行并行性,以及数据传输时间显著减少,MoDNN可以加速DNN计算2.17-4.28X。


MoDNN的系统框架


图1是MoDNN的系统框架概述,包括三个主要组件:


1)由GO和多个工作节点形成的本地分布式网络集群;

2)将DNN模型分割到工作节点上的模型处理器;

3)执行DNN的数据传递和识别服务的中间件。


640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

图1


我们注意到卷积层(CL)的计算成本主要取决于其输入大小。因此,我们引入了Biased One-Dimensional Partition (BODP)的方案来划分CL。相反,完全连接层(FL)的内存使用主要由层中的权重数量决定。鉴于此,专门针对稀疏FL引入了由Modified Spectral Co-Clustering (MSCC)和Fine-Grain CrossPartition(FGCP)组成的权重分割方案。值得注意的是,一旦DNN被训练,DNN模型分区只需要在应用程序中执行一次。因此,只要训练的DNN保持相同,分区成本可以由系统的执行来分摊。


更多关于系统实现和实验设置的技术细节,请查阅论文。


结语


在这篇论文中,作者提出了 MoDNN 本地分布式移动计算系统,以实现 DNN 在移动平台上的并行计算。由于卷积层和完全连接层被认为是影响总体执行时间的主要DNN组件,因此作者提出了几种高级分区方案,即 BODP、MSCC 和 FGCP,以平衡每个工作节点的工作负载,最小化数据传送时间。实验表明,在DNN计算上,MoDNN 比线性性能加速表现更好,展现了DNN应用中移动平台的巨大潜力。


文章转自新智元公众号,原文链接

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
+ 订阅

官方博客
官网链接