小米开源移动端深度学习框架MACE,自主研发,专为IoT设备优化

允中 发自 凹非寺 
量子位 报道 | 公众号 QbitAI

这可能是小米目前为止最重要的AI大动作。

昨天(6月28日),在2018开源中国开源世界高峰论坛现场,小米人工智能与云平台副总裁崔宝秋对外宣布,将正式开源小米自研的移动端深度学习框架Mobile AI Compute Engine,简称MACE

小米方面称,MACE是专门为移动设备优化的深度学习模型预测框架。

近年来,随着移动互联网的深入发展和IoT智能设备的普及,以及用户对智能性,低延迟和隐私保护的诉求变得越来越高,移动设备上的离线深度学习应用变得越来越普遍。

于是MACE从设计之初,便针对移动设备的特点进行了专门的优化。

针对移动设备优化

涉及6个方面:

速度:对于放在移动端进行计算的模型,一般对整体的预测延迟有着非常高的要求。在框架底层,针对ARM CPU进行了NEON指令级优化,针对移动端GPU,实现了高效的OpenCL内核代码。针对高通DSP,集成了nnlib计算库进行HVX加速。同时在算法层面,采用Winograd算法对卷积进行加速。

功耗:移动端对功耗非常敏感,框架针对ARM处理器的big.LITTLE架构,提供了高性能,低功耗等多种组合配置。针对Adreno GPU,提供了不同的功耗性能选项,使得开发者能够对性能和功耗进行灵活的调整。

系统响应:对于GPU计算模式,框架底层对OpenCL内核自适应的进行分拆调度,保证GPU渲染任务能够更好的进行抢占调度,从而保证系统的流畅度。

初始化延迟:在实际项目中,初始化时间对用户体验至关重要,框架对此进行了针对性的优化。

内存占用:通过对模型的算子进行依赖分析,引入内存复用技术,大大减少了内存的占用。

模型保护:对于移动端模型,知识产权的保护往往非常重要,MACE支持将模型转换成C++代码,大大提高了逆向工程的难度。

此外,MACE支持TensorFlow和Caffe模型,提供了转换工具,可以将训练好的模型转换成专有的模型数据文件,同时还可以选择将模型转换成C++代码,支持生成动态库或者静态库,可以大大提高模型的保密性。

目前MACE已经在小米手机上的多个应用场景得到了应用,其中包括相机的人像模式,场景识别,图像超分辨率,离线翻译(即将实现)等。

640?wx_fmt=jpeg

随着MACE一起开源的还有MACE Model Zoo项目,目前包含了物体识别,场景语义分割,图像风格化等多个公开模型。后续会增加更多的模型,同时也欢迎社区开发者共同参与。

640?wx_fmt=jpeg

以下是用MACE Model Zoo中的fast style transfer(快速风格迁移)模型在手机端生成的风格化图片。

640?wx_fmt=jpeg

传送门

关于该项目的Android的示例程序,可以下载编译好的APK文件进行安装(下载地址:https://cnbj1.fds.api.xiaomi.com/mace/demo/mace_android_demo.apk)。

MACE项目地址: https://github.com/XiaoMi/mace

MACE Model Zoo项目地址: https://github.com/XiaoMi/mace-models

作者系网易新闻·网易号“各有态度”签约作者


加入社群

量子位AI社群18群开始招募啦,欢迎对AI感兴趣的同学,加小助手微信qbitbot8入群;


此外,量子位专业细分群(自动驾驶、CV、NLP、机器学习等)正在招募,面向正在从事相关领域的工程师及研究人员。


进群请加小助手微信号qbitbot8,并务必备注相应群的关键词~通过审核后我们将邀请进群。(专业群审核较严,敬请谅解)

诚挚招聘

量子位正在招募编辑/记者,工作地点在北京中关村。期待有才气、有热情的同学加入我们!相关细节,请在量子位公众号(QbitAI)对话界面,回复“招聘”两个字。

640?wx_fmt=jpeg

量子位 QbitAI · 头条号签约作者

վ'ᴗ' ի 追踪AI技术和产品新动态



  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值