当前位置:网站首页>AVH部署实践 (一) | 在Arm虚拟硬件上部署飞桨模型
AVH部署实践 (一) | 在Arm虚拟硬件上部署飞桨模型
2022-07-31 14:50:00 【飞桨PaddlePaddle】
模型的训练与部署一直是AI应用的核心。针对深度学习算法在工业化落地过程中的应用与挑战,百度飞桨与Arm合作,针对Arm Cortex-M处理器的深度学习应用场景,完成了飞桨模型在Cortex-M硬件上的适配。百度与Arm的此次合作,填补了飞桨模型在Cortex-M硬件上的适配空白,同时也增加了Cortex-M硬件上的深度学习模型数量,为开发者提供了更多的部署方案。
本次飞桨与Cortex-M的适配使用了Arm虚拟硬件(Arm Virtual Hardware, AVH)作为平台进行模型部署。AVH旨在为赋能软件开发可早于芯片开发而设计,为物联网及嵌入式平台带来现代化敏捷的软件开发方法,包括持续集成/持续开发 (CI/CD)、DevOps与MLOps,而无需大型定制硬件集群。
本期,小编将带大家重温百度飞桨开发者说之“Arm 虚拟硬件平台的飞桨模型部署实战”直播课程的主要内容,与大家共同回顾在AVH上部署飞桨模型的端到端流程。
本次课程也是首次展示如何将飞桨模型直接部署在含有Arm Cortex-M处理器IP的AVH平台上。通过此次课程,你不仅可以深入学习如何使用飞桨训练获得更高效的训练模型和推理模型,还会了解到如何通过深度学习编译TVM将飞桨模型编译为适配在Arm Cortex-M上运行的目标代码,并将其部署在含有Cortex-M55的AVH平台上。
更多精彩内容欢迎点击课程回放链接:
https://www.bilibili.com/video/BV1Q34y1n74a?share_source=copy_web
本次直播课程内容主要涵盖以下五个部分:
第一部分 课程概述
简要介绍在物联网时代下,深度学习应用在工业化落地过程中所面临的种种挑战,并详细分析AVH如何与飞桨相结合激发更高效的 MLOps工作流,从而加速边缘侧机器学习应用的开发。
图 1:AVH与PaddlePaddle相结合激发更高效的MLOps工作流
第二部分 PaddleDetection on Arm
针对计算机视觉领域的目标检测任务(Detection),详细介绍百度飞桨的 PaddleDetection开发套件的特点与优势,并深入讲解了PP-PicoDet模型如何与Cortex-M处理器适配的应用案例。
图 2:PaddleDetection 开发套件全景图
第三部分PaddleOCR on Arm
针对计算机视觉领域的文字识别(OCR),详细介绍了百度飞桨的PaddleOCR开发套件的特点与优势,并深入讲解了PP-OCRv3模型如何与Cortex-M处理器适配的应用案例。
图 3:PaddleOCR 开发套件全景图
第四部分TVMC编译模型
简要介绍深度学习编译器TVM的基本概念以及其与飞桨前端、CMSIS-NN后端的适配,并说明如何借助TVM编译器完成对飞桨推理模型的编译转换,使其成为适配在Cortex-M处理器上运行的代码。
图 4:编译流程示意图
(了解TVM更多信息,请访问https://tvm.apache.org)
第五部分 AVH上完成模型部署
简要介绍AVH的特点与优势,并针对本次课程所使用的Arm Corstone和 Cortex CPU虚拟硬件的功能特点、其与Arm处理器IP的关系以及目前所支持的虚拟硬件模型进行了进一步介绍。随后通过具体的演示环节,逐步向开发者直观演示了如何将PP-OCRv3中发布的英文识别模型 (完成算子适配后) 部署在Arm Corstone-300的虚拟硬件平台上 (内含Arm Cortex-M55处理器,Arm Ethos-U55处理器及一些基本外设) 。
图 5:AVH Corstone和Cortex CPU简介
本期我们主要带领大家重温了主要的课程章节内容。在下期推送中,我们将以计算机视觉领域的文字识别任务(OCR)为目标,一步步地带领大家动手完成从模型训练优化到深度学习应用部署的整个端到端的开发流程,敬请期待下一期内容:AVH部署实践 (二) | 在Arm虚拟硬件上部署PP-OCR模型。
不熟悉OCR?想要提前解锁了解更多关于OCR的前沿理论和代码实践?
欢迎大家扫描右方二维码关注公众号,免费领取由百度飞桨PaddleOCR团队携手学术界产业界技术专家同仁共建的覆盖从检测识别到文档分析的OCR全栈技术书籍《动手学OCR》。
温馨提示:
本期部署实践课程使用的是托管在AWS/AWS China亚马逊机器镜像AMI中的 Corstone和Cortex CPU虚拟硬件。
欢迎各位开发者扫描下方二维码,即刻注册AVH第三方硬件平台,抢先体验AVH为你的嵌入式开发之旅所带来的极致便捷!还有更多在AVH第三方硬件平台上进行开发的有趣实例等着大家。
使用公司邮箱或学校邮箱注册申请,审批更高效哦!
关注【飞桨PaddlePaddle】公众号
获取更多技术内容~
本文同步分享在 博客“飞桨PaddlePaddle”(CSDN)。
如有侵权,请联系 [email protected] 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。
边栏推荐
- STM32(十)------- SPI通信
- Introductory UnityShader learning (2) - the rendering pipeline
- MySQL [subquery]
- 使用 PyTorch 检测眼部疾病
- ML、DL、CV常见的问题整理
- Getting started with UnityShader (1) - GPU and Shader
- Message queue data storage MySQL table design
- 为什么要分库分表?
- Sentinel限流和异常处理
- R语言计算时间序列数据的移动平均值(滚动平均值、例如5日均线、10日均线等):使用zoo包中的rollmean函数计算k个周期移动平均值
猜你喜欢
abaqus find contact pairs报错:surface name is already in use
安装Xshell并使用其进行Ymodem协议的串口传输
OAuth2:资源服务器
小试牛刀:Go 反射帮我把 Excel 转成 Struct
MySQL [subquery]
Resnet&API
Redis与分布式:哨兵模式
OpenCV测量物体的尺寸技能 get~
OpenShift 4 - 用 Operator 部署 Redis 集群
"Listen to me, thank you" can be said in ancient poetry?Tsinghua University has developed an artifact of "Searching Sentences According to Meaning", which can search for the famous sayings you want wi
随机推荐
In the future, the interviewer asks you why it is not recommended to use Select *, please answer him out loud!
Uniapp WeChat small application reference standard components
OAuth2:四种授权方式
架构实战营模块8消息队列表结构设计
TCP详解
svn安装及使用(身体功能手册)
MySQL 23 classic interviews hang the interviewer
Spark学习(2)-Spark环境搭建-Local
OpenShift 4 - 定制 RHACS 安全策略,阻断生产集群使用高风险 Registry
Redis与分布式:主从复制
R语言ggplot2可视化:使用ggpubr包的ggboxplot函数可视化箱图、使用font函数自定义图例标题文本(legend.title)字体的大小、颜色、样式(粗体、斜体)
[Pytorch] torch.argmax() usage
How to clean up the lodash.memoize cache in the element-plus virtual table virtual-list component?
MySQL [aggregate function]
UnityShader入门学习(二)——渲染流水线
redhat/openssl generates a self-signed ca certificate and uses it
UnityShader入门学习(三)——Unity的Shader
sentinel与nacos持久化
OAuth2:使用JWT令牌
Shell script classic case: detecting whether a batch of hosts is alive