皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

阿里开源深度神经网络推理引擎 MNN

阿里开源深度神经网络推理引擎 MNN

近日,阿里正式开源了轻量级深度学习端侧推理引擎 “MNN”。

MNN 是一个轻量级的深度学习端侧推理引擎,核心解决深度神经网络模型在端侧推理运行问题,涵盖深度神经网络模型的优化、转换和推理。

官方希望 MNN 能够抹平 Android 和 iOS 的差异、碎片设备之间的差异、不同训练框架的差异,实现快速的在端侧部署运行,并且能够根据业务模型进行 OP 灵活添加和 CPU/GPU 等异构设备深入性能优化。

阿里开源深度神经网络推理引擎 MNN

△ MNN 架构设计,分为 Converter 和 Interpreter 两部分

具体来说,MNN 负责加载网络模型,推理预测返回相关结果。整个推理过程可以分为模型的加载解析、计算图的调度、在异构后端上高效运行。MNN 具备四大特征:

  • 通用性:支持 Tensorflow、Caffe、ONNX 等主流模型文件格式,支持 CNN、RNN、GAN 等常用网络;
  • 轻量性:针对端侧设备特点深度定制和裁剪,无任何依赖,可以方便地部署到移动设备和各种嵌入式设备中。
  • 高性能:不依赖任何第三方计算库,依靠大量手写汇编实现核心运算,充分发挥ARM CPU的算力。
  • 易用性:具备完善的文档和实例,有高效的图像处理模块,覆盖常见的形变、转换等需求。支持回调机制,方便提取数据或者控制运行走向。

关于 MNN 的优势,已入职阿里的 AI 科学家贾扬清评价道:

与 Tensorflow、Caffe2 等同时覆盖训练和推理的通用框架相比,MNN 更注重在推理时的加速和优化,解决在模型部署的阶段的效率问题,从而在移动端更高效地实现模型背后的业务。

这意味着 MNN 和服务器端 TensorRT 等推理引擎的想法相符合。在大规模机器学习应用中,考虑到大规模的模型部署,机器学习的推理侧计算量往往是训练侧计算量的十倍以上,所以推理侧的优化尤其重要。

阿里开源深度神经网络推理引擎 MNN

△ MNN 与 Caffe2 等框架进行性能比较,有 20% 以上优势

目前,MNN已经在手淘、手猫、优酷、聚划算、UC等 20 多个 App 中使用,覆盖直播、短视频、搜索推荐、商品图像搜索等场景,每天稳定运行上亿次。此外,IoT 等场景下也有若干应用。官方计划每两个月发布一个稳定版本。

参考:MNN 项目介绍阿里技术

转自 https://www.oschina.net/news/106555/alibaba-opensource-mnn