端智能研发核心套件,MNN 工作台深度解析

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 端智能研发核心套件,MNN 工作台深度解析

作者|鹿尤

111.gif

MNN 工作台开源地址

开源地址:https://github.com/alibaba/MNN



背景


随着移动互联网的快速发展,人工智能在移动端上的应用越来越广泛,端智能在图像识别、视频检测、数据计算等核心场景发挥着重要作用。众所周知,Python 是算法进行端智能研发的首选语言,目前阿里巴巴内已经建立了端智能的研发生态,包含 Python 虚拟机,系列的数据/视觉等运行时 Python 扩展库、Python 任务调度库,以及配套的任务发布系统等等。


端智能的主要场景在数据计算、视觉内容理解这两个领域,如果算法研发完全在 PC 端的会简单的多,因为 PC 环境对于 Python 的研发有官方天然的支持,但在移动端上,进行算法的部署、调试、验证,仍处在“刀耕火种”的时代,目前算法主要通过两种途径:


  1. 日志调试:完全脱离运行时代码,通过在代码中插入日志,验证程序的运行逻辑和结果。
  2. PC 模型端侧环境:为了能够进行代码的断点调试,在 PC 侧搭建和安装端侧 Python 代码依赖的所有库,让 Python 程序能独立地运行和在和调试在 PC 端通用 IDE(如 PyCharm )上,数据输入则使用 Mock 的方式。


通过打日志当然也能验证结果和定位问题,但一旦工程稍微复杂点,生产效率会非常低;而脱离移动端环境,在 PC 侧独立运行,并不能反应真实的运行环境(实时数据、运行性能等),无法保证 PC 和端侧数据的一致性。


上面两种研发方式的主要问题是脱离了代码当前的运行环境,因而会产生调试信息的缺失。我们知道,每一种语言在开发者之间的流行都离不开配套的 IDE 调试工具,就像可以使用 Xcode 调试手机应用的 OC 代码一样,我们需要一种能真正进行端智能算法在端侧部署和调试的工具和方案,来提高 AI 研发生产效率。

1.jpg

MNN 工作台


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


开源地址:https://github.com/alibaba/MNN


除 MNN 引擎建设外,MNN 团队还深度参与了阿里内部的端AI应用实践。AI 应用门槛高、算法模型部署链路长是长期困扰我们的问题。为了解决这两个问题,我们将上百次实践中长期积累的方案沉淀为一站式 AI 研发范式 —— MNN 工作台。(www.mnn.zone 或点击文末阅读原文,下载 MNN 工作台)


MNN 工作台提供了端 AI 的研发范式,同时它也是一个对移动端 Python 的通用调试编辑器,工作台不仅包含标准的端侧 Python 调试能力,还覆盖了阿里集团内端智能算法常用的研发部署场景,是算法研发的效率工具。

2.jpg

工作台提供了 VSCode 风格的 Python 集成开发环境,它的使用过程很简单,一般分为三步:

3.jpg

  1. 建立连接:应用通过扫描工作台上的二维码,建立局域网内手机和PC的连接
  2. 代码推送:工作台上的工程通过局域网推送到端侧应用中
  3. 运行:端侧应用触发执行端侧 Python 代码,如果设置了断点,就可以进行端侧代码的调试了

4.gif

 端计算研发


MNN 工作台同样为阿里内重要的端智能场景 - 端计算的研发提供了高效的本地调试部署方案,覆盖了 Walle/Jarvis、CV 这几个主要的端计算场景。


  • 研发流程

6.jpg

在此之前,端计算的研发是依赖于平台发布的,在开发阶段将调试日志加到代码中,通过预发/beta发布到平台,然后再扫码连接到平台将日志输出,通过日志来定位和分析问题,以此往复。这种方式相对比较原始,开发调试周期也比较长,一次修改或验证就是一轮上传发布的操作,而且调试信息只有日志,整体开发效率比较低。

7.jpg

上图为算法使用工作台进行端计算研发的一般过程:


  1. 新建端计算工程,或打开从平台 clone 的端计算工程
  2. 应用扫码连接工作台,此时工作台中会实时输出算法的日志
  3. 在工作台 IDE 环境中开发代码,修改配置,添加资源
  4. 运行任务,此时任务会通过本地推送部署到端上。线上/预发环境都可以,任何代码都不会影响到线上,无需担心稳定性问题
  5. 代码断点调试、查看堆栈、变量等
  6. 工作台本地测试通过后,提交代码,再进行后续的平台发布操作


工作台有效解决了算法在开发阶段的调试部署问题,它的主要优势在于:


  1. 本地部署,开发阶段可以完全脱离平台
  2. 支持端计算工程的实时 Python 调试
  3. 端上部署不受预发/线上环境,或窗口期的限制
  4. 实时查看端侧算法的运行性能

  • 持久化调试


端计算任务的触发一般都是 UT,也有工程主动调用的,不管触发方式如何,代码只要推送一次,后面每次触发都会运行调试,除非代码有修改才需要重新推送,这就是工作台的持久化调试能力。

淘宝直播中使用 profile 来评测 CV 算法的性能,运行时间和次数会实时地显示在对应的代码行。profile 适用于所有能通过工作台部署的 Python 工程,Walle、Jarvis、CV、Playground 等工程都可以进行性能评测。后续我们会在性能评测中加入更多的端侧实时信息,如内存、CPU 占用等,帮助算法更好的分析代码性能。


结语


端智能的研发过程中,算法的开发只是一小部分,大部分工作其实都在算法之外,MNN 工作台不仅降低了普通开发者的 AI 研发的门槛,同时也是算法研发的提效工具,它有效解决了端 Python 的开发部署困难,让算法可以脱离工程自己搭建 Demo 应用,也支持了阿里集团内主要的端智能的研发场景,这样算法同学可以更加专注于算法本身的开发,从而提高 AI 的研发生产效率。


相关文章
|
1月前
|
数据采集 人工智能 自然语言处理
全球首篇!调研近400篇文献,鹏城实验室&中大深度解析具身智能
【8月更文挑战第17天】在人工智能领域,具身智能正成为研究焦点。它强调智能体在现实世界中的感知与交互。近期,鹏城实验室与中山大学联合发布的首篇全球具身智能综述,调研近400篇文献,总结了该领域的理论和技术进展。文章探讨了具身感知、交互及仿真到现实的适应性等关键议题,并指出了面临的挑战如数据质量、模型泛化等,为通向通用人工智能铺路。论文已发表于IEEE会议记录中。
164 60
|
29天前
|
机器学习/深度学习 人工智能 监控
|
12天前
|
域名解析 监控 负载均衡
智能DNS解析:自动选择最快服务器的奥秘
【9月更文挑战第7天】智能DNS解析是一种根据用户网络环境和服务器负载动态选择最佳服务器的技术,显著提升了访问速度与稳定性。本文详细介绍了其工作原理,包括实时监控、数据分析和路由选择,并探讨了自动选择最快服务器背后的算法策略,如负载均衡、地理位置识别及实时测试。附带示例代码帮助理解其基本实现过程。
41 0
|
1月前
|
域名解析 监控 负载均衡
【域名解析DNS专栏】智能DNS解析:自动选择最快服务器的奥秘
在互联网中,智能DNS解析作为一项先进技术,根据用户的网络环境和服务器负载情况,自动挑选最优服务器进行域名解析,显著提升访问速度与体验。其工作原理包括实时监控服务器状态、分析数据以选择最佳路由。通过负载均衡算法、地理位置识别及实时性能测试等策略,确保用户能获得最快的响应。这项技术极大提高了互联网服务的稳定性和效率。
89 5
|
18天前
|
图形学 机器学习/深度学习 人工智能
颠覆传统游戏开发,解锁未来娱乐新纪元:深度解析如何运用Unity引擎结合机器学习技术,打造具备自我进化能力的智能游戏角色,彻底改变你的游戏体验——从基础设置到高级应用全面指南
【8月更文挑战第31天】本文探讨了如何在Unity中利用机器学习增强游戏智能。作为领先的游戏开发引擎,Unity通过ML-Agents Toolkit等工具支持AI代理的强化学习训练,使游戏角色能自主学习完成任务。文章提供了一个迷宫游戏示例及其C#脚本,展示了环境观察、动作响应及奖励机制的设计,并介绍了如何设置训练流程。此外,还提到了Unity与其他机器学习框架(如TensorFlow和PyTorch)的集成,以实现更复杂的游戏玩法。通过这些技术,游戏的智能化程度得以显著提升,为玩家带来更丰富的体验。
36 0
|
2月前
|
机器学习/深度学习 供应链 监控
ERP系统中的供应链可视化与智能预测解析
【7月更文挑战第25天】 ERP系统中的供应链可视化与智能预测解析
88 5
|
28天前
|
消息中间件 安全 RocketMQ
就软件研发问题之ACL 2.0接口不同的授权参数解析的问题如何解决
就软件研发问题之ACL 2.0接口不同的授权参数解析的问题如何解决
|
28天前
|
存储
就软件研发问题之ACL 2.0中授权参数解析的问题如何解决
就软件研发问题之ACL 2.0中授权参数解析的问题如何解决
|
2月前
|
人工智能 自然语言处理 搜索推荐
阿里云搜索开发工作台:快速搭建AI语义搜索与RAG链路的深度解析
阿里云搜索开发工作台凭借其丰富的组件化服务和强大的模型能力,为企业快速搭建AI语义搜索及RAG链路提供了有力支持。通过该平台,企业可以灵活调用各种服务,实现高效的数据处理、查询分析、索引构建和文本生成等操作,从而大幅提升信息获取与处理能力。随着AI技术的不断发展,阿里云搜索开发工作台将继续优化和完善其服务,为企业数字化转型和智能化升级注入更强动力。
82 0
|
2月前
|
数据可视化 前端开发 大数据
商场智能导视系统深度解析,AR与大数据融合创新商业运营模式
**商场智能导视系统提升购物体验:** 通过三维电子地图、AR导航、AR营销、VR全景导购及可视化数据,解决顾客寻路困扰,增强店铺曝光,简化招商流程,优化商场管理,借助科技创新驱动顾客满意度、品牌曝光度及运营效率的全面提升。
89 0
商场智能导视系统深度解析,AR与大数据融合创新商业运营模式

推荐镜像

更多