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

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

3天内不再提示

R-Car DNN模拟器的介绍

瑞萨电子 来源:瑞萨电子 2023-02-02 11:06 次阅读

摘要

本篇文章我们将介绍瑞萨为R-Car V4H提供的三种类型的DNN开发模拟器,以及它们的使用情况和特点。

背景

用于汽车SoC实时处理的深度学习的模型转换

深度学习是使用底层软件(深度学习框架)开发的,如TensorFlow和PyTorch。

仅仅通过移植在深度学习框架中学习到的模型,不可能在R-Car这样的车载SoC上进行实时处理,因为深度学习的推断过程需要大量的计算和内存使用。因此,有必要对所学模型进行非等价的模型压缩,如量化和剪枝,以及使用深度学习编译器进行性能优化。

首先,让我们讨论一下模型压缩。在量化中,通常以浮点计算的推断过程被转换为近似的整数运算,如8位。通过将对识别结果贡献较小的权重设置为零并跳过对这些权重的计算,修剪减少了计算和内存的使用。这两种转换都是对原始推断过程的非等效的算法转换,因此很可能会降低识别的准确性。

在性能优化方面,深度学习编译器可以对训练过的模型的推断过程进行程序转换,以便在深度学习加速器上进行更快的处理,或者应用内存可以进行优化,例如将分配给一个层的输出数据的快速小型SRAM重新用于另一个层的输出数据。

应用这种转换可以在车载SoC上进行实时处理。

在R-Car中使用瑞萨工具和软件的推断流程

瑞萨的R-Car中的H/W加速器CNN-IP,出于计算效率的考虑,可以使用整数值进行推断操作。由于这个原因,用户必须使用瑞萨公司提供的R-Car CNN工具来进行量化,这是上述模型转换中的一种。

首先,在实际执行量化之前,必须进行校准,以计算量化参数(刻度和零点),用于将浮动数转换为整数。为此,一个外部工具(如TFMOT、ONNX runtime),根据网络模型的格式,从大量的输入图像中找到每一层的最大/最小输出值。从这些最大/最小值中,可以计算出比例/零点等量化参数;R-Car CNN工具使用这些量化参数来量化每一层的参数。

R-Car CNN工具然后从网络模型和每层的量化参数中创建一个命令列表。命令列表是二进制数据,用于指示CNN-IP执行哪些命令和设置哪些参数(每个量化层的参数)。通过向CNN-IP提供该命令列表并运行它,可以进行推断。

命令列表是由网络模型和量化参数唯一确定的,因此它只需要事先创建一次。上述命令列表可以对每个图像执行,以便在实际设备上进行推断。

使用瑞萨工具和软件对R-Car V4H进行推断的框图见图1。

64b04982-a2a6-11ed-bfe3-dac502259ad0.png

图1 使用瑞萨工具和软件进行推断的方框图

关于每个模拟器

每个模拟器的概述和特点

瑞萨电子准备了模拟器来解决以下两个用户挑战:

A)在开发一个应用程序之前,用户希望检查由于量化而导致的精度变化

B)想在不使用实际设备的情况下使用命令列表检查和调试用户应用程序

瑞萨的模拟器有三种类型,每种类型解决不同的任务,具有不同的功能。各自的特点见表1。每一种都在准确性和处理速度上有所不同。对于每一种情况,都会参照框图介绍其特点和使用情况的细节。

表1 各模拟器的概述和特点

64e6a432-a2a6-11ed-bfe3-dac502259ad0.png

(*1)命令列表是使用R-Car CNN工具创建的,基于网络模型和量化参数,使用与上述实际机器上的推断相同的程序。

(*2)Accurate Simulator在R-Car CNN工具中运行。用户向R-Car CNN工具提供网络模型和量化参数,该工具会自动计算每一层的量化参数,然后将其输入到Accurate Simulator。

ISS

该模拟器旨在使用与实际设备尽可能相同的软件配置和输入数据(命令列表,主要是寄存器设置)来调试输出结果。它不能重现计时,也不打算用于计时验证。

结果与实际设备完全相同,速度比Accurate Simulator慢,因为它以指令为基础重现输出。

65151df8-a2a6-11ed-bfe3-dac502259ad0.png

图2 使用ISS的系统方框图

精确的模拟器

该模拟器将网络模型作为输入,用于精度验证,无需使用实际设备。对于每一层,都要实现一种算法,使其输出与设备的计算算法完全匹配。由于执行速度比ISS快10倍左右,所以在只验证精度的情况下,它是很有用的。

653b8312-a2a6-11ed-bfe3-dac502259ad0.png

图3 使用Accurate Simulator的系统框图

快速仿真器

该模拟器用于检查大量图像的定量误差。

Fast Simulator扩展了深度学习框架(R-Car V4H中的Tensor Flow),在每层推断操作后都有一个伪量化功能,并带有浮点数字。伪量子化是一种重现浮点数的伪量子化误差的方法,在浮点数仍然是浮点数的情况下,加入与量子化导致的精度下降相同的误差。

可以只在Tensor Flow中添加一个伪量化功能,其运行速度与Tensor Flow相似,但速度更快。

另外,由于输入/输出接口与深度学习框架是通用的,所以用户在切换到深度学习框架时很容易检查出量化错误。

然而,由于每层的推断操作和伪量化都会产生一个小的浮点算术误差,所以结果与实际的机器结果并不完全匹配。

6560bd44-a2a6-11ed-bfe3-dac502259ad0.png

图4 使用快速仿真器的系统框图

审核编辑:汤梓红

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

    关注

    38

    文章

    3740

    浏览量

    215639
  • 瑞萨
    +关注

    关注

    32

    文章

    22214

    浏览量

    84901
  • 模拟器
    +关注

    关注

    2

    文章

    814

    浏览量

    42692
  • 深度学习
    +关注

    关注

    73

    文章

    5228

    浏览量

    119885
  • dnn
    dnn
    +关注

    关注

    0

    文章

    56

    浏览量

    8951

原文标题:工程师说 | R-Car DNN模拟器的介绍

文章出处:【微信号:瑞萨电子,微信公众号:瑞萨电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Renesas新产品介绍--R-Car V3U 精选资料分享

    ADAS/自动驾驶的车载SoC概述最大60TOPS深度学习处理性能概述2020年12月,瑞萨电子发布了用于ADAS(先进驾驶辅助系统)和自动驾驶的车载SoC【R-Car V3U】。目前正在
    发表于 07-27 06:44

    瑞萨电子发布R-Car系列汽车系统单芯片产品R-Car E1

    瑞萨电子与Renesas Mobile Corporation发布R-Car系列汽车用系统单芯片(SoC)新款产品R-Car E1 ,可提供低耗电量及优异的系统整合,目标市场为重视成本的汽车导航与多媒体系统,包括高阶车用音
    发表于 09-01 09:17 1308次阅读

    瑞萨电子推出“R-Car 虚拟化支持包”用于虚拟机软件

    在设计第三代 R-Car SoC 时,已经将虚拟机软件的使用列入考虑。 Arm CPU内核、图形内核、视频/音频 IP 以及其他功能都支持虚拟化。过去,软件开发商如果想使用这些功能,必须深入理解 R-Car硬件手册和 R-Car
    的头像 发表于 08-02 14:30 2771次阅读
    瑞萨电子推出“<b class='flag-5'>R-Car</b> 虚拟化支持包”用于虚拟机软件

    快速了解R-Car Market Place网络服务

    大家有没有读过我去年年底写的博客“汽车业务的客户价值(系列17):R-Car联盟·合作伙伴计划的介绍”?自这篇博客发布以来,瑞萨收到了大量反馈和在R-Car Market Place上创建账户的申请。
    的头像 发表于 12-18 10:57 1573次阅读

    用于 Renesas R-Car 平台的 Dialog PMIC

    Dialog Semiconductor宣布扩大与瑞萨电子公司的合作,推出适用于 R-Car M3 和 R-Car E3 汽车平台的电源管理集成电路 (PMIC) 解决方案。 R-Car M3
    发表于 07-28 11:51 893次阅读
    用于 Renesas <b class='flag-5'>R-Car</b> 平台的 Dialog PMIC

    R-Car CAN扩展板用户手册

    R-Car CAN扩展板用户手册
    发表于 01-30 18:58 0次下载
    <b class='flag-5'>R-Car</b> CAN扩展板用户手册

    R-Car V3M 入门套件硬件手册

    R-Car V3M 入门套件硬件手册
    发表于 03-15 20:14 0次下载
    <b class='flag-5'>R-Car</b> V3M 入门套件硬件手册

    R-Car V3M 入门套件硬件手册

    R-Car V3M 入门套件硬件手册
    发表于 03-17 19:50 1次下载
    <b class='flag-5'>R-Car</b> V3M 入门套件硬件手册

    R-Car V3M Starter Kit 原理图s

    R-Car V3M Starter Kit 原理图s
    发表于 03-22 19:23 0次下载
    <b class='flag-5'>R-Car</b> V3M Starter Kit 原理图s

    R-Car E2用户手册: 硬件

    R-Car E2 用户手册: 硬件
    发表于 03-29 19:04 0次下载
    <b class='flag-5'>R-Car</b> E2用户手册: 硬件

    R-Car V3M 入门套件硬件手册

    R-Car V3M 入门套件硬件手册
    发表于 07-06 19:25 0次下载
    <b class='flag-5'>R-Car</b> V3M 入门套件硬件手册

    R-Car V3M 入门套件硬件手册

    R-Car V3M 入门套件硬件手册
    发表于 07-07 18:42 0次下载
    <b class='flag-5'>R-Car</b> V3M 入门套件硬件手册

    R-Car V3M Starter Kit 原理图s

    R-Car V3M Starter Kit 原理图s
    发表于 07-10 18:43 1次下载
    <b class='flag-5'>R-Car</b> V3M Starter Kit 原理图s

    R-Car E2用户手册: 硬件

    R-Car E2 用户手册: 硬件
    发表于 07-11 19:28 0次下载
    <b class='flag-5'>R-Car</b> E2用户手册: 硬件

    工程师说 | R-Car DNN模拟器介绍 (2)

    摘要 在瑞萨提供的R-Car SoC相关的一些DNN模拟器中,本文将重点介绍 能够实现与实际硬件等价运算的Accurate Simulator ,并说明如何应用它来 分析和提高神经网络
    的头像 发表于 07-13 18:15 247次阅读
    工程师说 | <b class='flag-5'>R-Car</b> <b class='flag-5'>DNN</b><b class='flag-5'>模拟器</b>的<b class='flag-5'>介绍</b> (2)