模型部署到移动端_15分钟实现AI端计算模型训练、加速与部署 | 百度EasyDL公开课...

本文主要是介绍模型部署到移动端_15分钟实现AI端计算模型训练、加速与部署 | 百度EasyDL公开课...,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

主讲人 | 阿达 百度高级研发工程师
量子位 整理编辑 | 公众号 QbitAI

端计算模型目前已应用到各行业的AI落地实践中,如部署在野外气象观测点用于环境监测,以及响应垃圾分类政策用来打造智能垃圾桶等等。

「EasyDL AI开发系列公开课」第二期直播中,百度高级工程师深入解析了如何优化端模型识别速度、如何解决端模型部署问题,并直播演示了如何使用EasyDL-EasyEdge AI开发平台,快速、高效实现模型训练和端模型部署。

讲解分为3个部分:

  • EasyDL端计算模型的应用

  • 端计算技术解析:图优化(量化剪裁)和基于芯片的优化提升模型识别速度

  • 实战演示:借助EasyDL-EasyEdge部署端计算模型实现办公室垃圾检测识别

直播回放见链接:https://www.bilibili.com/video/BV1KZ4y1V7mn/

以下为直播文字实录:


EasyDL端计算模型的应用

在和某咨询公司的联合调研中,我们发现约86%的市场需求需要定制开发业务场景下的AI模型,其中有35%以上的有离线计算的需求。

端计算应用场景

053e59f16c6251bde046700e5a609682.png

比如工业场景中统计原材料的数量,食品安全场景监测厨房厨师是否佩戴厨师帽,这么多形形色色的场景,很难通过一个统一的AI模型或者方案来满足所有的需求。这时用户往往需要自己来开发定制,这是一个很巨大的工程,涉及到采集数据、训练优化模型,最后还要使模型成功地部署落地。

d512194495bfbc33202c7542059f69f1.png

为此,百度提供了零门槛AI开发平台—EasyDL,帮助有模型定制需求的用户。用户可以在平台上标注数据、扩充数据,准备好训练所需要的数据集;然后通过EasyDL训练优化模型;最后通过EasyDL提供的多种部署方案,实现模型落地应用。

那么,为什么需要应用端计算模型呢?

定制化AI模型部署的需求与难点

工业应用中的模型推理通常需要本地计算、实时响应、解除对网络的依赖;需要满足对闭路电视数据隐私的保密,需要降低手机上APP对能耗的要求,复杂业务场景下又需要多样的芯片架构和传感器来实现部署……种种需求恰好都可以通过端计算来满足,这就是为什么大家需要端计算。

有过自己部署AI模型经历的也会发现很多部署模型的难点:

  • 部署维护成本高,难落地;

  • 模型适配、迁移难,往往需要重复性开发;

  • 预测性能差,硬件成本高。

EasyDL-EasyEdge端计算

针对这些难点,EasyDL-EasyEdge提供了端计算服务来帮助大家解决这些问题,用户不需要有特别多的芯片硬件知识和开发经验,只需要3步、最快2分钟就可以生成端计算模型:

232380bcbc069c4ac8f0d6f15712778d.png

第一步:准备一个训练好的模型(如果没有合适的模型,可先在EasyDL平台训练);EasyEdge兼容市面主流的深度学习框架,比如PaddlePaddle、TensorFlow、PyTorch等;

第二步:通过EasyEdge做转换→面向设备的兼容与加速→封装;EasyEdge自动完成端计算服务产物;

第三步:下载后利用简单可操作的接口部署应用模型即可。

框架&网络支持

如图,EasyEdge支持主流的深度学习框架、部分网络,后续大家可以在EasyDL官网上了解更多信息。

1405248f51b8bb06ef50db8474e50b24.png

服务部署形态

EasyDL-EasyEdge也提供丰富的服务部署形态,包含公有云部署、私有服务器部署、通用设备端SDK、软硬一体产品等,端云协同即将上线:

8db48b84bb57ea1014ebfb9ae5058cb1.png

软硬件支持

EasyDL-EasyEdge已支持10余类芯片、4大操作系统:

a23dc46a20668b5c08be68e52a56d771.png

端计算组件

端设备SDK不仅能适配市面上常见的手机(APP扫码安装、即装即用),也能适配各类微型主机开发板(PC组件自带HTTP服务和H5体验,可执行exe文件)。

SDK接口是统一的,在不同设备的调用方式方法类似。通过EasyEdge获得端设备SDK之后,无需再关注硬件细节,使用SDK统一接口来调用模型即可。

46e892d1d5b6e3f58cf655ea1debe12f.png

上图是ResNet50深度学习模型部署在不同的芯片上得到的单次推理时间,芯片架构层面可以做更广泛的适配,同时也为用户选型提供参考。

软硬一体方案

为了让大家选型更简单,百度也推出了软硬一体的方案,可以在百度AI市场购买。

f721f79f39128becfabbf66987e9398f.png

上图数据是EasyDL支持的分类检测模型以及在不同开发套件上单张图片的推理时间,大家可以根据这些数据挑选合适的软硬件。

EasyDL-EasyEdge应用案例

10215f7e7cd5b36067672e9d3437b676.png

杭州气象局:使用EasyDL图像分类和物体检测,训练出云状、云量、结冰等识别模型,并通过EasyEdge将模型部署到野外观察站,提升了观测效率和及时性。

f64a7d8415d7599021abf11157ae9b24.png

柳州源创使用EasyDL物体检测,训练出喷油嘴瑕疵检测模型;并通过EasyEdge部署到工厂的生产线上,每年可节约60万人工检测成本,并能够提升检测效率与精度。

宁波蔚澜通过EasyDL使用了仅217张厨余垃圾图片、迭代了两版,就训练出准确率91.57%的厨余垃圾识别模型,结合百度EasyEdge软硬一体方案灵巧部署在垃圾箱内,已经在宁波的小区内落地使用。

e2e1968e5fab350c12794f6e8ce1077f.png

EasyDL-EasyEdge已经在20多个行业场景中落地,累计有2500以上个模型,部署了超过26万台终端设备。

EasyDL-EasyEdge端计算技术解析

为了使模型顺利部署到端上,还可以保持预测性能的快速推理,百度EasyDL-EasyEdge做了哪些优化?

技术核心

6287032e8e9777c5296291981237c862.png

 EasyDL-EasyEdge技术框架

拿到用户的模型后,首先进行图优化,针对深度学习模型的算子进行优化,以及面向目标硬件做定向适配,然后转化为目标框架。

44e8306f519df2c7dc5dd2574d12274d.png

对于目前支持量化的目标框架(比如PaddlePaddle),采用了量化来产出加速版本。

0d889e230c56ef21d4a746e143dce1f1.png

目前EasyEdge支持10余类芯片,不同的芯片还会有一些特定支持的优化

fac1843b7cca8446b4a367145ee88868.png

接下来把上述优化好的模型,进行打包生成SDK。

对于生成的端模型,还可以发起自动评测,获得评测指标和性能。

EasyEdge给用户提供了云端服务, 用户在得到的sdk里可以进行模型升级更新,运行demo。用户还可以有h5体验,在windows系统里有可执行文件可以直接运行等。

实操演示:办公室垃圾检测识别

本部分讲解中,阿达老师以「办公室垃圾分类检测识别」为例,演示了如何使用EasyDL-EasyEdge AI开发平台,快速、高效地进行模型训练和端模型部署。

感兴趣的小伙伴可以移步直播回放,视频观看更清晰~:https://www.bilibili.com/video/BV1KZ4y1V7mn/

1294583b435af48672b07a75e9fd8983.png

此外,关于EasyDL-EasyEdge使用指南,可参考官网相关介绍。

直播预告

近几年以预训练为代表的NLP技术取得了爆发式发展,新技术新模型层出不穷。

11月4日第三期「百度AI实战营」公开课中,百度资深研发工程师将结合世界领先的文心(ERNIE)语义理解技术,通过产业实践案例,深入解析NLP技术选型模型调优的一些方法,以及工程实践中的经验。

扫码即可免费报名,还为大家精心准备了图书、京东卡等小礼物哦~

b53abdb61bd89c4ec750a2f269aca8df.png

One More Thing:

为了进一步降低企业应用AI的门槛与成本,EasyDL还重磅推出「万有引力」计划,为有AI应用需求的企业提供专项基金,详情请点击

本文系网易新闻•网易号特色内容激励计划签约账号【量子位】原创内容,未经账号授权,禁止随意转载。

4646ddd0561da66ef6c786fb51b9529b.png

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

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

一键三连「分享」、「点赞」和「在看」

科技前沿进展日日相见~

这篇关于模型部署到移动端_15分钟实现AI端计算模型训练、加速与部署 | 百度EasyDL公开课...的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/323378

相关文章

C#实现将Excel表格转换为图片(JPG/ PNG)

《C#实现将Excel表格转换为图片(JPG/PNG)》Excel表格可能会因为不同设备或字体缺失等问题,导致格式错乱或数据显示异常,转换为图片后,能确保数据的排版等保持一致,下面我们看看如何使用C... 目录通过C# 转换Excel工作表到图片通过C# 转换指定单元格区域到图片知识扩展C# 将 Excel

基于Java实现回调监听工具类

《基于Java实现回调监听工具类》这篇文章主要为大家详细介绍了如何基于Java实现一个回调监听工具类,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录监听接口类 Listenable实际用法打印结果首先,会用到 函数式接口 Consumer, 通过这个可以解耦回调方法,下面先写一个

使用Java将DOCX文档解析为Markdown文档的代码实现

《使用Java将DOCX文档解析为Markdown文档的代码实现》在现代文档处理中,Markdown(MD)因其简洁的语法和良好的可读性,逐渐成为开发者、技术写作者和内容创作者的首选格式,然而,许多文... 目录引言1. 工具和库介绍2. 安装依赖库3. 使用Apache POI解析DOCX文档4. 将解析

Qt中QGroupBox控件的实现

《Qt中QGroupBox控件的实现》QGroupBox是Qt框架中一个非常有用的控件,它主要用于组织和管理一组相关的控件,本文主要介绍了Qt中QGroupBox控件的实现,具有一定的参考价值,感兴趣... 目录引言一、基本属性二、常用方法2.1 构造函数 2.2 设置标题2.3 设置复选框模式2.4 是否

C++使用printf语句实现进制转换的示例代码

《C++使用printf语句实现进制转换的示例代码》在C语言中,printf函数可以直接实现部分进制转换功能,通过格式说明符(formatspecifier)快速输出不同进制的数值,下面给大家分享C+... 目录一、printf 原生支持的进制转换1. 十进制、八进制、十六进制转换2. 显示进制前缀3. 指

springboot整合阿里云百炼DeepSeek实现sse流式打印的操作方法

《springboot整合阿里云百炼DeepSeek实现sse流式打印的操作方法》:本文主要介绍springboot整合阿里云百炼DeepSeek实现sse流式打印,本文给大家介绍的非常详细,对大... 目录1.开通阿里云百炼,获取到key2.新建SpringBoot项目3.工具类4.启动类5.测试类6.测

pytorch自动求梯度autograd的实现

《pytorch自动求梯度autograd的实现》autograd是一个自动微分引擎,它可以自动计算张量的梯度,本文主要介绍了pytorch自动求梯度autograd的实现,具有一定的参考价值,感兴趣... autograd是pytorch构建神经网络的核心。在 PyTorch 中,结合以下代码例子,当你

SpringBoot集成Milvus实现数据增删改查功能

《SpringBoot集成Milvus实现数据增删改查功能》milvus支持的语言比较多,支持python,Java,Go,node等开发语言,本文主要介绍如何使用Java语言,采用springboo... 目录1、Milvus基本概念2、添加maven依赖3、配置yml文件4、创建MilvusClient

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

openCV中KNN算法的实现

《openCV中KNN算法的实现》KNN算法是一种简单且常用的分类算法,本文主要介绍了openCV中KNN算法的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录KNN算法流程使用OpenCV实现KNNOpenCV 是一个开源的跨平台计算机视觉库,它提供了各