0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用RZ/V微处理器进行AI评估

星星科技指导员 来源:瑞萨电子 作者: Shingo Kojima 2022-04-24 09:39 次阅读

你有没有被问过,“你不能用人工智能来提高我们系统的性能吗?”

或者,“你能否通过将人工智能融入我们的设备来为我们的设备增加更多价值?”

人工智能、深度学习神经网络……人工智能应用正在呈指数级扩展,没有一天不听这些话。另外,有很多人有同样的想法——“我很感兴趣,但即使我研究了一点,我也不太明白如何使用它。我不知道如何在我的工作中使用它,我无法想象它会给我的工作带来什么价值。”

在这篇博客中,我想介绍使用瑞萨嵌入式 AI 处理器 - RZ/V 系列的软件包进行 AI 评估。

什么是人工智能?

如果您已经熟悉 AI 和深度学习,这可能没有必要,但我想先回顾一下有关 AI 的一些基础知识。

人工智能 (AI)。许多书籍和网站都以各种方式解释了这一点,例如人工智能可以像专业人士一样下棋,或者只需要求它打开房间里的灯。但是,我想专注于人工智能的最狭义定义:使用神经网络技术的人工智能,特别是——视觉人工智能——可以对图像进行各种识别和判断。

神经网络。如图 1 所示,生物体大脑中的神经接收来自多个其他神经元的输入,并将它们传送到下一个神经元。众所周知,记忆、识别和判断是基于两种信号的组合:来自输入侧的信号被使用的强度(加权)以及加权后每个输入的总和如何传输到输出侧(激活功能)。

使用神经网络的人工智能模仿这种机制,通过大量的算术处理来进行各种识别和判断,例如对多个输入进行加权、求和,然后通过激活函数将结果传递到下一个阶段。

以 3x3 卷积运算为例,它经常在 Vision AI 中用于量化输入图像的特征。图像首先被细分为 3 像素 x 3 像素的图像。对每个值(像素密度)进行加权,并使用激活函数将这些值的总和作为输出值发送到下一个阶段。(图2)

poYBAGJkqmyAXVhTAADXseMjFW4097.jpg

图 2 神经网络的 3x3 卷积运算示例

这个过程首先在输入图像的整个表面上进行,然后是由输出创建的下一个图像(因此它不完全是已经可以看作图像的数据,它被称为 - 特征值,这意味着抽象输入图像特征的数据)被发送到下一个重复相同过程的神经网络。

即使是简单的图像识别,比如区分数字和字母,也需要几层这样的计算,而一般的物体识别需要几十层这样的计算,所以通过重复无数次的操作,我们就可以实现图像识别,比如确定数字5 是 5 或从狗的图像中识别狗的位置。

简而言之,最大的区别在于没有人工智能的传统计算机软件——人们思考他们想要处理什么(算法)并构建程序——而使用神经网络的人工智能——使用大量输入和自动准备处理所需的内部数据(加权参数)。换句话说,在人工智能中,主角不是程序,而是数据。因此,虽然传统的软件开发侧重于编程,但人工智能开发中最重要和最耗时的部分是准备加权参数(学习)的过程,以便它能够以必要的精度和速度。

我们在此介绍的 AI 评估软件包使用了 PyTorch 等 AI 框架提供的预训练模型,因此您可以评估 AI 的图像推理执行情况,而无需耗时的学习过程。

让我们考虑一个视觉 AI 评估的具体说明。

需要什么?

无需从一开始就购买评估板。在这篇博客中,我将帮助您体验嵌入式 AI 处理器 RZ/V 系列的 Vision AI 实现流程,仅使用免费的开源软件(以下简称 OSS)和瑞萨电子网络上免费提供的软件包。

pYYBAGJkqm2ASVvhAAB2rGAggrI725.jpg

*1 PyTorch、PyTorch 徽标和任何相关标记是 Facebook, Inc. 的商标。

*2 TensorFlowTensorFlow 徽标和任何相关标记是 Google Inc. 的商标。

*3 DRP-AI Translator:瑞萨电子的 ONNX 转换工具

图 3 RZ/V2L AI实现工具流程整体架构

图 3 显示了整个工具流程。人工智能学习有各种行业标准框架,大家熟悉,所以我们开发了RZ/V系列,“你可以使用现有的你熟悉的人工智能框架进行人工智能训练,将训练好的神经网络模型连接到瑞萨工具使用一种称为 ONNX 的通用格式,”——这是一种 AI 开发流程。ONNX 是一种被广泛采用的格式,大多数 AI 框架都能够直接输出或使用转换工具以 ONNX 格式输出,但我们将使用 AI 框架 PyTorch 作为示例。

在 AI 世界中,Linux 而非 Windows 是事实上的标准,这里使用的所有操作系统和软件包也需要安装 Linux(Ubuntu)的 PC。

有一种称为 WSL2 的技术可以在 Windows 上将 Linux 作为虚拟操作系统运行,但瑞萨评估包不保证可以与 WSL2 一起使用,因此请准备一台安装了 Ubuntu 的 PC。如果你不打算做 AI 学习,你不需要高性能,所以你也可以重复使用手头的旧 PC。

首先,一台 Linux PC 和 DRP-AI 支持包

准备好 Linux PC

对于硬件,您可以使用您自己的带有 x86 64 位 CPU 和至少 6GB RAM 的 PC,但操作系统不是 Windows。我们将改为使用 Linux 发行版之一的 Ubuntu 版本 18.04。

转到提供 Uubuntu 18.04 的网页并从ubuntu-18.04.6-desktop-amd64.iso下载 ISO 文件。

您可以使用适用于 Windows 的 Rufus 工具将 ISO 文件转换为可引导的 USB 驱动器,以便您可以在计划安装 Ubuntu 的 PC 上安装 Ubuntu 18.04。

(有关使用 Rufus 的详细信息,请参阅 https://rufus.ie/en/ 。)

准备好软件

要下载软件,首先从瑞萨电子网站下载软件包“ RZ/V2L DRP-AI Support Package ”。该文件是一个超过 2GB 的大型 ZIP 文件,因此我们建议通过高速互联网连接下载它。

解压此 ZIP 文件时,打开文件夹 rzv2l_ai-implementation-guide,您将在其中找到文件

rzv2l_ai-implementation-guide_en_rev5.00.pdf(以下简称“实施指南”)。

本指南以分步练习的形式编写。如果您遵循它,您将能够评估包含的经过训练的神经网络模型,从转换到评估板上的实际操作。接下来,我想介绍一些在使用本指南进行评估时需要考虑的要点。

poYBAGJkqm2ATPFXAABwIIx1jpk753.jpg

图 4 DRP-AI 支持包详情

创建 ONNX 文件

从这里开始,我们将在 Linux 中使用命令行。

(如果您是 Linux 新手,则需要学习操作系统本身的基本命令。)

AI 框架 PyTorch 和 torchvision 也可以使用命令 pip3 从 Linux 命令行安装。(请参阅实施指南,第 2.2 章,第 26 页)

在您下载的 DRP-AI 支持包中,您会找到 rzv2l_ai-implementation-guide_ver5.00.tar.gz 压缩文件。按照实施指南中的说明解压缩文件。(第 30 页)

同样,在名为 pytorch_mobilenet 的文件夹中,在 rzv2l_ai-implementation-guide 下,您将找到文件

pytorch_mobilenet_en_rev5.00.pdf(以下简称 MobileNet 指南)和 pytorch_mobilenet_ver5.00.tar.gz,您应该按照实施指南。

MobileNet 是为移动和嵌入式设备开发的用于图像识别的轻量级快速神经网络,它输出图像中对象正确答案的概率。例如,如图5所示,物体是小猎犬的概率为93.53%,说明判断正确。

pYYBAGJkqm2AIMHcAABf6Qme5LE873.jpg

图 5 MobileNet的图像识别图像

如果您继续阅读 pytorch_mobilenet_en_rev5.00.pdf 的第 2 章,您将找到一个名为 mobilenet_v2.onnx 的文件。这是具有 ONNX 格式的加权参数的预训练 MobileNet v2 神经网络模型的表示。

现在我们已经有了经过训练的 ONNX 文件,让我们进入下一阶段,为 DRP-AI 创建 DRP-AI 对象文件并评估性能。

在 DRP-AI Translator 中转换为 DRP-AI 对象文件

从这里开始,我们将使用 Renesas 的 ONNX 转换工具 DRP-AI Translator。首先,从 Renesas 网站下载DRP-AI Translator 。

根据实施指南的第 3.1 章安装解压缩的安装程序。如果您按照实施指南和 MobileNet 指南中的步骤操作,您最终应该会得到如图 6 所示的目录结构。

poYBAGJkqm2AFpvlAAA8JlMhpb8484.jpg

图 6 ONNX 文件的目录结构和 DRP-AI 转换器目录结构

在此之后,通过复制/重命名和编辑样本中的文件,准备要输入到 DRP-AI 翻译器的文件。有关详细说明,请参阅 MobileNet 指南第 3.3-3.5 章。

准备好后,ONNX 转换本身可以通过一个命令完成。对于 RZ/V2L,从 shell 运行

$ 。/run_DRP-AI_translator_V2L.sh mobilenet_v2 -onnx 。/onnx/mobilenet_v2.onnx

在工作目录下的 output/mobilenet_v2/ 目录中,这将生成在真实芯片上运行 MobileNet 所需的二进制文件。(图 7)

pYYBAGJkqm2AesSiAACQjOtY_OU098.jpg

图 7 运行 DRP-AI Translator 后的文件列表

如何阅读性能估算器 Excel

除了评估实际设备所需的对象外,DRP-AI 转换器还输出神经网络模型的摘要,该模型从 ONNX 转换为 Excel 格式。(图 8)

连同神经网络模型的结构信息,此 Excel 文件包含模型每一层(每个功能)的大致处理时间(DRP-AI 单机性能,不包括 LSI 内部总线和外部 DRAM 带宽的限制) ,它允许您估计近似性能。

poYBAGJkqm2AGaIGAAElkVqn8ow537.jpg

图 8 mobilenet_v2_summary.xlsx 示例

概括

我们为对AI感兴趣但不知从何下手的用户介绍了瑞萨电子提供的免费软件包,大家可以试试。如果您拥有本博客中创建的目标文件,那么您离使用真实芯片评估 AI 性能又近了一步。本博客使用的RZ/V2L的评估板套件已经可以购买,您可以体验到评估板套件中嵌入的实际芯片的AI性能、低功耗和低发热。

瑞萨嵌入式 AI 处理器的 RZ/V 系列还包括RZ/V2M ,其 AI 性能比这里介绍的RZ/V2L高约 1.5 倍,并且提供RZ/V2M DRP-AI Support Package,可用于与上面提到的方法相同。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    18275

    浏览量

    222157
  • 嵌入式
    +关注

    关注

    4981

    文章

    18281

    浏览量

    288423
  • AI
    AI
    +关注

    关注

    87

    文章

    26443

    浏览量

    264044
收藏 人收藏

    评论

    相关推荐

    嵌入式微处理器的分类特点 嵌入式微处理器作用

    领域,包括消费电子、工业控制、医疗设备、汽车电子等。 嵌入式微处理器可以根据其架构、指令集和性能等特点进行分类。常见的分类方法包括架构、工作频率、指令集和功能等。 从架构的角度来看,嵌入式微处理器通常可以分
    的头像 发表于 04-21 14:52 784次阅读

    嵌入式微处理器的原理和应用

    嵌入式微处理器是专为嵌入式系统设计的微处理器,它们是嵌入式系统的核心组件,负责执行程序指令、处理数据和控制其他硬件设备。与通用微处理器相比,嵌入式
    的头像 发表于 03-28 15:51 202次阅读

    瑞萨电子推出面向高性能机器人应用的RZ/V2H微处理器

    瑞萨电子发布的RZ/V2H新产品,无疑在高性能机器人应用领域掀起了不小的波澜。作为RZ产品家族微处理器(MPU)的最新成员,RZ/V2H凭借其卓越的性能和丰富的功能,进一步巩固了瑞萨电
    的头像 发表于 03-08 10:58 371次阅读

    RZ/G2L微处理器DDR ECC功能和机制概要

    RZ/G2L微处理器配备Cortex®-A55 (1.2 GHz) CPU、16位DDR3L/DDR4接口、带Arm Mali-G31的3D图形加速引擎以及视频编解码器(H.264)。
    的头像 发表于 02-28 13:44 622次阅读
    <b class='flag-5'>RZ</b>/G2L<b class='flag-5'>微处理器</b>DDR ECC功能和机制概要

    微处理器由什么组成 微处理器和cpu的关系

    计数器等。指令译码器对指令进行解析和译码,时钟发生器提供时钟脉冲以驱动微处理器的运行,程序计数器保存当前正在执行的指令的地址。 算术逻辑单元(ALU):ALU是负责执行算术和逻辑运算的部件。它可以对数据进行加法、减法、乘法
    的头像 发表于 02-22 10:40 1073次阅读

    瑞萨推出带有增强外设的RZ/G3S 64位微处理器

    全球半导体解决方案供应商瑞萨电子(TSE:6723)宣布推出一款全新64位通用微处理器(MPU)RZ/G3S,面向物联网边缘与网关设备并可显著降低功耗。
    的头像 发表于 01-19 16:32 584次阅读
    瑞萨推出带有增强外设的<b class='flag-5'>RZ</b>/G3S 64位<b class='flag-5'>微处理器</b>

    瑞萨电子推出新款64位通用微处理器RZ/G3S

    全球半导体解决方案供应商瑞萨电子近日宣布推出全新64位通用微处理器(MPU)RZ/G3S,这款产品专为物联网边缘与网关设备设计,并具备显著降低功耗的优势。
    的头像 发表于 01-19 16:15 319次阅读

    #芯圣车规级触摸微处理器 HC8AT3541系列!

    微处理器
    上海芯圣电子股份有限公司
    发布于 :2024年01月16日 10:14:09

    RZ/G2系列微处理器解决方案

    在工业自动化和楼宇自动化应用方面,使用嵌入式控制器的开发者追求着更高的性能表现、更高的可靠性和长期的软件支持。为了满足这些要求,我们提供了一套RZ/G2系列微处理器(MPU)和一个工业Linux软件包,其内核能够提供超过10年的长期支持。
    的头像 发表于 11-17 15:53 445次阅读
    <b class='flag-5'>RZ</b>/G2系列<b class='flag-5'>微处理器</b>解决方案

    如何在RZ/V2L评估板套件上使用AI SDK

    本文章介绍如何在RZ/V2L评估板套件上使用AI SDK。
    的头像 发表于 10-27 15:53 443次阅读
    如何在<b class='flag-5'>RZ</b>/V2L<b class='flag-5'>评估</b>板套件上使用<b class='flag-5'>AI</b> SDK

    瑞萨RZ/A系列微处理器(MPU)简介

    瑞萨RZ/A系列微处理器(MPU)基于Arm Cortex内核并结合了瑞萨电子专有技术,因此兼备了MPU的强大性能和MCU的简便性,能够快速的处理图像和HMI应用,其开发过程如同微控制器(MCU)一样简单易用。
    发表于 09-15 12:16 844次阅读
    瑞萨<b class='flag-5'>RZ</b>/A系列<b class='flag-5'>微处理器</b>(MPU)简介

    基于IDE构建用于STM32微处理器的完整人工智能项目

    本用户手册指导了基于 IDE 逐步构建用于 STM32 微处理器的完整人工智能(AI)项目,自动转换预训练好的神经网络(NN)并集成所生成的优化库。本手册还介绍了 X-CUBE-AI 扩展包,该扩展
    发表于 09-07 06:15

    瑞萨RZ/G2UL微处理器介绍

    微处理器还配备有大量接口,如摄像头输入、显示输出、USB 2.0 和千兆以太网,因此特别适用于入门级工业人机界面 (HMI) 和具有视频功能的嵌入式设备等应用。
    的头像 发表于 09-04 16:01 530次阅读
    瑞萨<b class='flag-5'>RZ</b>/G2UL<b class='flag-5'>微处理器</b>介绍

    MA35D1系列微处理器的实时处理器( RTP) 的自测试库分享

    安全 。 BSP 版本:MA35D1系列RTP BSP CMSIS V3.00.001 硬件: NuMaker-HMI-MA35D1-S1 该示例代码是MA35D1系列微处理器实时处理器(RTP
    发表于 08-29 07:04

    新唐NuMicro Arm9微处理器介绍

    新唐作为微控制微处理器的领导厂商之一,除了在微控制系列有上百款的产品可供选择,在微处理器方面也有许多出色的产品。本篇文章一次整理所有新唐的微处
    发表于 08-25 07:32