模型部署到移动端_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

相关文章

Java实现检查多个时间段是否有重合

《Java实现检查多个时间段是否有重合》这篇文章主要为大家详细介绍了如何使用Java实现检查多个时间段是否有重合,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录流程概述步骤详解China编程步骤1:定义时间段类步骤2:添加时间段步骤3:检查时间段是否有重合步骤4:输出结果示例代码结语作

Python使用国内镜像加速pip安装的方法讲解

《Python使用国内镜像加速pip安装的方法讲解》在Python开发中,pip是一个非常重要的工具,用于安装和管理Python的第三方库,然而,在国内使用pip安装依赖时,往往会因为网络问题而导致速... 目录一、pip 工具简介1. 什么是 pip?2. 什么是 -i 参数?二、国内镜像源的选择三、如何

使用C++实现链表元素的反转

《使用C++实现链表元素的反转》反转链表是链表操作中一个经典的问题,也是面试中常见的考题,本文将从思路到实现一步步地讲解如何实现链表的反转,帮助初学者理解这一操作,我们将使用C++代码演示具体实现,同... 目录问题定义思路分析代码实现带头节点的链表代码讲解其他实现方式时间和空间复杂度分析总结问题定义给定

Java覆盖第三方jar包中的某一个类的实现方法

《Java覆盖第三方jar包中的某一个类的实现方法》在我们日常的开发中,经常需要使用第三方的jar包,有时候我们会发现第三方的jar包中的某一个类有问题,或者我们需要定制化修改其中的逻辑,那么应该如何... 目录一、需求描述二、示例描述三、操作步骤四、验证结果五、实现原理一、需求描述需求描述如下:需要在

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署

部署Vue项目到服务器后404错误的原因及解决方案

《部署Vue项目到服务器后404错误的原因及解决方案》文章介绍了Vue项目部署步骤以及404错误的解决方案,部署步骤包括构建项目、上传文件、配置Web服务器、重启Nginx和访问域名,404错误通常是... 目录一、vue项目部署步骤二、404错误原因及解决方案错误场景原因分析解决方案一、Vue项目部署步骤

如何使用Java实现请求deepseek

《如何使用Java实现请求deepseek》这篇文章主要为大家详细介绍了如何使用Java实现请求deepseek功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1.deepseek的api创建2.Java实现请求deepseek2.1 pom文件2.2 json转化文件2.2

Spring AI集成DeepSeek的详细步骤

《SpringAI集成DeepSeek的详细步骤》DeepSeek作为一款卓越的国产AI模型,越来越多的公司考虑在自己的应用中集成,对于Java应用来说,我们可以借助SpringAI集成DeepSe... 目录DeepSeek 介绍Spring AI 是什么?1、环境准备2、构建项目2.1、pom依赖2.2

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

Linux流媒体服务器部署流程

《Linux流媒体服务器部署流程》文章详细介绍了流媒体服务器的部署步骤,包括更新系统、安装依赖组件、编译安装Nginx和RTMP模块、配置Nginx和FFmpeg,以及测试流媒体服务器的搭建... 目录流媒体服务器部署部署安装1.更新系统2.安装依赖组件3.解压4.编译安装(添加RTMP和openssl模块