第一个手机端分布式深度学习系统,设计自动化顶会 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:用于深度神经网络的本地分布式移动计算系统》。


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


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


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


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


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


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



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



作者:毛驾臣、陈翔、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的数据传递和识别服务的中间件。


图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应用中移动平台的巨大潜力。


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

相关文章
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
477 55
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
眼疾识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了4种常见的眼疾图像数据集(白内障、糖尿病性视网膜病变、青光眼和正常眼睛) 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,实现用户上传一张眼疾图片识别其名称。
263 5
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
企业数字化转型的关键:如何利用OA系统实现自动化与智能决策
在数字化时代,传统办公系统已无法满足现代企业的需求。通过将RPA(机器人流程自动化)和AI(人工智能)技术与OA系统结合,企业能实现业务流程自动化、智能决策支持,大幅提升工作效率和资源配置优化,推动数字化转型。RPA可自动处理重复任务,如审批、数据同步等;AI则提供智能数据分析、预测和决策支持,两者协同作用,助力财务管理、人力资源管理、项目管理和客户服务等多个领域实现智能化升级。未来,智能化OA系统将进一步提升个性化服务、数据安全和协作能力,成为企业发展的关键驱动力。
PyTorch生态系统中的连续深度学习:使用Torchdyn实现连续时间神经网络
神经常微分方程(Neural ODEs)是深度学习领域的创新模型,将神经网络的离散变换扩展为连续时间动力系统。本文基于Torchdyn库介绍Neural ODE的实现与训练方法,涵盖数据集构建、模型构建、基于PyTorch Lightning的训练及实验结果可视化等内容。Torchdyn支持多种数值求解算法和高级特性,适用于生成模型、时间序列分析等领域。
211 77
PyTorch生态系统中的连续深度学习:使用Torchdyn实现连续时间神经网络
OWL:告别繁琐任务!开源多智能体系统实现自动化协作,效率提升10倍
OWL 是基于 CAMEL-AI 框架开发的多智能体协作系统,通过智能体之间的动态交互实现高效的任务自动化,支持角色分配、任务分解和记忆功能,适用于代码生成、文档撰写、数据分析等多种场景。
532 13
OWL:告别繁琐任务!开源多智能体系统实现自动化协作,效率提升10倍
基于Python深度学习的【害虫识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
害虫识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了12种常见的害虫种类数据集【"蚂蚁(ants)", "蜜蜂(bees)", "甲虫(beetle)", "毛虫(catterpillar)", "蚯蚓(earthworms)", "蜚蠊(earwig)", "蚱蜢(grasshopper)", "飞蛾(moth)", "鼻涕虫(slug)", "蜗牛(snail)", "黄蜂(wasp)", "象鼻虫(weevil)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Djan
87 1
基于Python深度学习的【害虫识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
蘑菇识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了9种常见的蘑菇种类数据集【"香菇(Agaricus)", "毒鹅膏菌(Amanita)", "牛肝菌(Boletus)", "网状菌(Cortinarius)", "毒镰孢(Entoloma)", "湿孢菌(Hygrocybe)", "乳菇(Lactarius)", "红菇(Russula)", "松茸(Suillus)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,
126 11
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
算法系统协同优化,vivo与港中文推出BlueLM-V-3B,手机秒变多模态AI专家
BlueLM-V-3B是由vivo与香港中文大学共同研发的多模态大型语言模型,专为移动设备优化。它通过算法和系统协同优化,实现了高效部署和快速生成速度(24.4 token/s),并在OpenCompass基准测试中取得优异成绩(66.1分)。模型小巧,语言部分含27亿参数,视觉编码器含4000万参数,适合移动设备使用。尽管如此,低端设备可能仍面临资源压力,实际应用效果需进一步验证。论文链接:https://arxiv.org/abs/2411.10640。
47 9
HTTPS 证书自动化运维:https证书管理系统- 自动化监控
本文介绍如何设置和查看域名或证书监控。步骤1:根据证书状态选择新增域名或证书监控,线上部署推荐域名监控,未部署选择证书监控。步骤2:查询监控记录详情。步骤3:在详情页查看每日定时检测结果或手动测试。
HTTPS 证书自动化运维:https证书管理系统- 自动化监控

新智元

+ 订阅