云上MXNet实践

演讲嘉宾简介:
谢峰(撷峰),阿里云异构计算技术专家。有丰富的X86、ARM、GPU虚拟化技术经验,加入阿里云之前,曾作为主要开发者参与基于API Remoting方案的GPU虚拟化项目,并负责基于Xen的NVIDIA vGPU虚拟化技术的引入和产品落地,并对智能手机虚拟化技术有深入研究。目前从事阿里云GPU异构计算基础设施的研发以及GPU在深度学习等领域的应用研究和性能调优等工作。


以下内容根据演讲嘉宾视频分享以及PPT整理而成。

本次的分享主要围绕以下三个方面:

一、MXNet 简介
二、阿里云上部署和运行MXNet
三、阿里云上的MXNet性能实践 


一、MXNet 简介
1.MXNet特点
MXNet是一个全功能,灵活可编程和高扩展性的深度学习框架。所谓深度学习,顾名思义,就是使用深度神经网络进行的机器学习。神经网络本质上是一门语言,我们通过它可以描述应用问题的理解。比如,卷积神经网络(CNN)可以表达空间相关性的问题,使用循环神经网络(RNN)可以表达时间连续性方面的问题。MXNet支持深度学习模型中的最先进技术,当然包括卷积神经网络(CNN),循环神经网络(RNN)中比较有代表性的长期短期记忆网络(LSTM)。根据问题的复杂性和信息如何从输入到输出一步一步提取,我们通过将不同大小,不同层按照一定的原则连接起来,最终形成完整的深层的神经网络。MXNet有三个特点,便携(Portable),高效(Efficient),扩展性(Scalable)。
eb8c298e6f448324fb3c7cba17cf94359684370d
首先看第一个特点,便携(Portable)指方便携带,轻便以及可移植。MXNet支持丰富的编程语言,如常用的C++,python,Matlab,Julia,JavaScript,Go等等。同时支持各种各样不同的操作系统版本,MXNet可以实现跨平台的移植,支持的平台包括Linux,Windows,IOS和Android等等。
第二点,高效(Efficient)指的是MXNet对于资源利用的效率。而资源利用效率中很重要的一点是内存,因为在实际的运算当中,内存通常是一个非常重要的瓶颈,尤其对于GPU,嵌入式设备而言,内存显得更为宝贵。神经网络通常需要大量的临时空间,例如每层的输入,输出变量,每个变量需要独立的内存空间,这回带来高额度的内存开销。如何优化内存开销,对于深度学习框架而言是非常重要的事情。MXNet在这方面做了特别的优化,有数据表明,在运行多达1000层的深层神经网络任务时,MXNet只需要消耗4GB的内存。阿里也与Caffe做过类似的比较之后也验证了这项特点。
第三点,扩展性(Scalable)在深度学习当中一个非常重要的性能指标。更高效的扩展可以让训练新模型的速度得到显著提高,或者在相同的时间内,大幅度提高模型复杂性。扩展性指两方面,首先是单机扩展性,另一个是多机扩展性。MXNet在单机扩展性和多机扩展性方面都有非常优秀的表现。所以扩展性(Scalable)是MXNet最大的一项优势,也是最突出的特点。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值