e-works数字化企业网  »  文章频道  »  基础信息化  »  移动应用

移动设备上的实时深度学习

2017/11/19    来源:36大数据    作者:Akira Sosa      
关键字:移动设备  GPU  
2017年,在移动应用的深度学习方面取得了一些重大进展。2017年4月,谷歌发布了轻量级神经网络MobileNets。2017年6月,苹果公司发布了Core ML,支持在移动设备上运行机器学习模型。除此之外,最近发布的一些高端设备配备了GPU,它们运行机器学习甚至比MacBook Pro还要快。
    2017年,在移动应用的深度学习方面取得了一些重大进展。2017年4月,谷歌发布了轻量级神经网络MobileNets。2017年6月,苹果公司发布了Core ML,支持在移动设备上运行机器学习模型。除此之外,最近发布的一些高端设备配备了GPU,它们运行机器学习甚至比MacBook Pro还要快。
 

移动设备上的实时深度学习

 
    深度学习已经无处不在。在这篇文章里,我将会介绍深度学习在现实世界中的应用情况,并见识一下它们的速度到底有多快。
 
    MobileNets应用
 
    我们最近开发了一种新的深度神经网络,叫作MobileUNet,用于解决语义切分问题。它的设计极其简单,它在U-Net中使用了MobileNets。这里只列出其中关键的点,更多细节可以参考它的GitHub仓库。
 
  • 它由编码器和解码器组成。

  • 编码器使用了MobileNets,缺少用于分类的全连接层。

  • 解码器使用卷积转置进行升采样(upsample)。
 
    大数据
 
    在开发该项目时,我们主要关心它的推理速度。我们知道深度神经网络在GPU上跑得更快一些,但如果运行在移动设备上会怎样呢?
 
    这也就是为什么我们使用了MobileNets。
  • 它使用深度卷积块(depthwise conv block)来加快推理速度。

  • 它具有更高的准确性和推理速度比率。

  • 它提供了一些参数用于在准确性和速度之间做出权衡。
 
    我们可以得到较为理想的结果,如下图所示。
 
    大数据
 
    速度与准确性
 
    在介绍MobileUNet的性能之前,我想先澄清几个一般性的概念。
 
    是否所有的卷积(如Conv2D、DepthwiseConv2D和Conv2DTranspose)在不同的处理器上都有相同的速度表现?
 
    答案是否定的。在不同的处理器上,有些操作会很快,有些会很慢。CPU和GPU之间的区别是很容易区分出来的,即使是不同的GPU之间也存在优化差异。
 
    下图展示了普通的卷积块和深度卷积块之间的差别。
 
    大数据
 
    深度卷积块和普通卷积块在CPU上的表现差别很大,但在GPU上的差别却小了很多。
 

责任编辑:李欢
本文来源于互联网,e-works本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供,并以尽力标明作者与出处,如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。
e-works
官方微信
掌上
信息化
编辑推荐
新闻推荐
博客推荐
视频推荐