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

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

3天内不再提示

基于DNN模型的ADS深度学习算法选型探讨

sakobpqhz 来源:Dr. Luo 2023-01-31 14:06 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

对于自动驾驶ADS行业而言,其核心演进趋势可以定义为群体智能的社会计算,简单表述为,用NPU大算力和去中心化计算来虚拟化驾驶环境,通过数字化智能体即自动驾驶车辆AV的多模感知交互决策,以及车车协同,车路协同,车云协同,通过跨模数据融合、高清地图重建、云端远程智驾等可信计算来构建元宇宙中ADS的社会计算能力。

ADS算法的典型系统分层架构一般包括传感层,感知层,定位层,决策层(预测+规划)和控制层。每个层面会采用传统算法模型或者是与深度学习DNN模型相结合,从而在ADS全程驾驶中提供人类可以认可的高可靠和高安全性,以及在这个基础上提供最佳能耗比、最佳用车体验、和用户社交娱乐等基本功能。

01基于DNN模型的感知算法

ADS部署的传感器在极端恶劣场景(雨雪雾、低照度、高度遮挡、传感器部分失效、主动或被动场景攻击等)的影响程度是不一样的。所以传感器组合应用可以来解决单传感器的感知能力不足问题,常用的多模传感器包括Camera(Front-View or Multiview orSurround-View; Mono or Stereo;LD or HD),毫米波Radar(3Dor4D)和激光雷达LIDAR(LDorHD)。ADS的一个主要挑战是多模融合感知,即如何在感知层能够有效融合这些多模态传感器的输出,配合高清HD地图或其它方式定位信息,对应用场景中的交通标识,动态目标属性(位置、速度、方向、高度、行为),红绿灯状态,车道线,可驾驶区域,进行特征提取共享和多任务的2D/3D目标检测、语义分割、在线地图构建、Occupancy特征和语义提取(Volume/Flow/Surface)等等。基于DNN模型的感知算法,在实际工程部署中的一个挑战,还需要解决图 1所示的三个方向关键难题:数据挑战、模型挑战、和复杂场景挑战。

c25bf032-96d4-11ed-bfe3-dac502259ad0.png  

图 1DL算法在智能交通ITS和自动驾驶领域ADS的部署挑战(Azfar 2022) 目前大多数AI视觉感知任务,包括目标检测跟踪分类识别,场景语义分割和目标结构化,其算法流程都可以简单总结为特征抽取,特征增强和特征融合,然后在特征空间进行(采样)重建,最后进行多任务的各类检测识别与语义理解。以目标检测任务为例,一个主要的发展趋势,是从CNN (Compute-bound)向 Transformer (memory-bound)演进。CNN目标检测方法包括常用的Two-Stage Candidate-based常规检测方法(Faster-RCNN)和One-Stage Regression-based 快速检测方法(YOLO, SSD, RetinaNet, CentreNet)。

Transformer目标检测方法包括DETR, Vision Transformer, Swin Transformer, DTR3D, BEVFormer, BEVFusion等等。两者之间的主要差别是目标感知场的尺寸,前者是局部视野,侧重目标纹理,后者是全局视野,从全局特征中进行学习,侧重目标形状。可以看出针对各类模型包括混合模型和通过NAS架构搜索生成的模型,学术界和工业界在持续推陈出新,高速迭代,依旧呈现出多元多样化态势,但如何有效进行模型选型,以及模型小型化和工程化加速,一直是ADS产业算法能否成功落地的核心难题。

02基于DNN模型的决策算法

基于DNN模型的决策算法,是一种在数据充分的条件下,通过少量的人力投入就可以提供非常有力的设计表达。尤其是针对社交关系建模与推理来解决ADS中预测与规划问题,通过监督和自监督学习的方式,单独或者联合建模的方式,以及模仿学习IL和强化学习RL的学习流程。交互建模的输入来自车辆状态,包括定位信息,速度,加速度,角速度,车辆朝向等。端到端的DL-based方法通常直接通过卷积处理原始传感数据(RGB图像和点云),计算简洁但会损失弱的或者隐含的交互推理的内容表达。如图 2所示,深度学习模型中的不同构建模块,是可以对多智能体的交互推理进行有效建模和表达的,其中

(a)全连接FC层:又称多层感知器MLP,其中所有输入通过连接可以与输出交互并对输出做出贡献。 (b)卷积CONV层:卷积层采用局部感知场,所以每层的连接会比较稀疏,通常假定合适用来捕获空间关系,最初的底层卷积层一般提取类似边缘纹理类的信息,越接近顶层也偏语义特征。 (c)递归Recurrent层 :通常用来处理时间维度的数据序列,多用来捕获时间关系。 (d)图Graph层:典型的图包括节点、边(用来描述节点间关系)、和上下文全局属性,通常用来捕获图结构表征中显性关系推理,与FC层和RNN层一个不同之处是输入的先后次序不会影响结构,图结构还可以处理不同数目的个体,比较适合多个体的ADS环境。

c2b26cd2-96d4-11ed-bfe3-dac502259ad0.png  

图 2DNN模块对多智能体交互的建模案例(Wang 2022) 对于ADS中社交特征表征,常用的有空间时间状态特征矢量,空间占用方格和图区域动态插入等方式。空时状态特征矢量比较难以定义,尤其是个体数量变化和有效时间步长的不同,另外一个限制是依赖于个体插入的次序。所以一个常用的设计思路是采用占用方格地图Occupancy Grid Map (OGM)来解决上述的两个问题。OGM是以本体ego agent为中心来构建空间方格图,可以处理ROI区域不同数目的智能体。OGM通常采用原始状态(定位,速度,加速度)或者采用FC层来进行状态编码,如果FC层隐层包括个体的历史轨迹信息,可以同时捕获空间时间信息。

OGM的分辨率对计算性能影响比较大。 相对而言,图网络GNN可以通过动态插入区域DIA抽取来更好地构建空间时间交互图关系,图的类型可以基于个体(车辆,行人,机动车等),也可以基于区域area,后者主要聚焦对车辆意图(车道保持,换道并道,左拐右拐)的表征,这里DIA指的是可驾驶场景中空闲空隔。如图 3所示,DIA的优势在于对环境中静态元素(道路拓扑,类似stop道路标志牌等)和动态元素(行驶车辆)非常灵活,可以认为是动态环境的统一表征或者也可以叫做环境的虚拟化。所有时间地平线的DIAs可以用来构建空间时间语义图。

c2edc52a-96d4-11ed-bfe3-dac502259ad0.png  

图 3动态插入区域抽取和场景语义图构建案例(Wang 2022) 如图 2所示,群体智能的社会计算,其中的社交关系,可以采用不同的深度学习层来进行交互建模和编码:

FC层交互编码:采用将不同个体的特征进行拉平,拼接成一个向量。多用来对单体single agent进行运动和意图建模,很少用于multiple agent。

CONV层交互编码:将空间时间特征(状态特征张量)或占用方格地图做为CNN输入来进行交互编码。

Recurrent层交互编码:多采用LSTM来进行时间维度推理,编码产生的embedding张量可以捕获时间空间的交互信息。

Graph层交互编码:对多智能体之间的关系采用节点之间的无向或者有向边来表征,可以用消息传递机制来进行交互学习,每个节点通过聚集邻近节点的特征来更新自身的属性特征。

在实际设计中,多将Recurrent层和Graph层相结合,可以很好地处理时间信息。而注意力attention机制编码可以更好地量化一个特征如何影响其它特征。人类司机会在交互场景中有选择地选取其它个体来进行关注,包括其过去现在的信息和未来的预判。所以注意力机制编码可以基于时间域(短期的和长期的)和空间域(本地的和偏远的),在上述方法中通过加权方案分别进行应用。对个体的注意力建模,可以采用基于距离的方法,这意味着其它个体越近,关注度也越高。 综上所述,DL-based方法由于模块化的设计和海量数据贡献,性能占优,但如何能够提供模型的安全能力和大规模部署,需要解决几个挑战:在保证性能基础上改善可解释性;在不同的驾驶个体,场景和态势下继续增强模型的推广能力;模型选型和工程实现如何有效加速落地问题。

03CNN与Transformer选型对比探讨

Transformer或Transformer + CNN + RNN混合模型选型呈现出了高效的算法性能,对应在工程实现上也开始主导整个ADS行业市场。Transformer采用Attention机制的主干网络,而CNN在特征提取和变换上由Convolution来主导,深度理解两种模型的主要收益到底来自什么样的算法模块或者算子,对ADS主流算法的未来演进,可能会有一种积极的推动作用。

一种看法(Dai 2022)认为,这主要的差别来自特征变换模块(Attention vs Convolution)对空间特征聚类的处理方式,即所谓的Spatial Token Mixer(STM)问题。当前常用构建DNN网络模型包括Attention, Convolution, Hybrid等模块的多种变形,以分类算法为例,先后有HaloNet(Halo Attention), PVT(Spatial Reduction Attention, 2021), Swin Transformer(Shifted Window Attention, 2021), ConvNeXt(7x7 Depth-Wise Convolution, 2022), InternImage (Deformable Convolution v3, 2022)等SOTA模型出世。

c327a484-96d4-11ed-bfe3-dac502259ad0.png   c334f422-96d4-11ed-bfe3-dac502259ad0.png  

图 4特征变换模块的实现案例(Dai 2022) 如图 4所示,CNN和Transformer模型中最常用的四种STM算子类型包括:Local Attention, Global Attention, Depth-Wise Convolution, Dynamic Convolution。采用固定感知场的Static Convolution只在小容量模型(~5MB参数)中表现不错,而Local-Attention STM模型结合跨窗间信息转移策略可以显著提升性能。

STM的设计也反映了假定空间即归纳偏置中采用的先验知识和约束条件对模型学习的影响,包括局部特性Locality、平移不变性,旋转不变性和尺寸不变性等模型特性,这可以从有效感知场ERF与下游多任务学习的关联关系来体现,有趣的是,当上调模型参数时,扩大ERF反而会导致模型饱和,同样我们工程实现中也观察到,对特征提取backbone而言用CNN来替代Transformer Encoder进行推理加速,也有类似模型饱和问题和上下游任务匹配不齐的问题。

至于对于各类目标不变性的性能对比,性能高的模型,对不同场景变化的鲁棒性会好一些,Static Convolution采用权值共享和局部感知场有利于提升平移不变性,而灵活的采样策略可以动态地进行特征聚类,在动态卷积(例如DCNv3)中表现出更好的旋转和尺寸缩放不变性。 Convolution-based STM模型多采用如下架构:Residual Learning, Dense Connection, Grouping, Spatial Attention,Channel Attention。其中Spatial Attention采用Deformable Convolution和Non-Local算子采用灵活可变的点采样来构建长范围的依赖语义依赖关系。

Vision Transformer的出世也给这类设计带来了新的架构设计和探索思路。 对于Attention-based STM模型,比较而言,Transformer采用的全局感知场和动态的空间聚类,也带来了海量的计算复杂度,尤其是ADS 应用中需要场景覆盖的计算区域越来越大时,这对ADS NPU的加速设计引入了一个全新课题。

从算法角度而言,图 4所示的几个算法,也采用了类似CNN的Local Attention机制,例如采用非重叠的局部计算窗和金字塔结构,以及跨窗间信息迁移的机制,例如Haloing,Shifted Windows等等,当前还有一种新的设计思路采用CNN和Transformer算子块的交织实现方式,也可以称作为联合或者混合架构,可以很好的融合CNN和Transformer的各自优势,适当降低总体计算复杂度。而NAS网络架构检索可以采用更加灵活的算子组合的策略,当然这显然增加了硬件计算架构和数据流优化的设计难度。







审核编辑:刘清

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

    关注

    4

    文章

    836

    浏览量

    62259
  • ADS仿真
    +关注

    关注

    2

    文章

    71

    浏览量

    11154
  • dnn
    dnn
    +关注

    关注

    0

    文章

    61

    浏览量

    9547
  • MLP
    MLP
    +关注

    关注

    0

    文章

    57

    浏览量

    5034

原文标题:ADS深度学习算法选型探讨

文章出处:【微信号:算力基建,微信公众号:算力基建】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    深度学习为什么还是无法处理边缘场景?

    选择视而不见甚至直接加速。 之所以出现这个问题,是因为深度学习模型大多建立在统计学基础之上,它们通过观察数以千万计的图像学习识别物体的特征。然而,真实世界的道路场景是无限多样的,这种基
    的头像 发表于 05-04 10:16 2165次阅读
    <b class='flag-5'>深度</b><b class='flag-5'>学习</b>为什么还是无法处理边缘场景?

    AI算法核心知识清单(深度实战版3)

    四、深度学习核心知识(进阶必备)1.模型训练关键技术(深度学习实战核心)损失函数(模型优化目标)
    的头像 发表于 04-29 17:18 664次阅读
    AI<b class='flag-5'>算法</b>核心知识清单(<b class='flag-5'>深度</b>实战版3)

    AI 算法核心知识清单(深度实战版2)

    三、机器学习核心算法(入门到实战)​1.监督学习算法(已知标签的模型训练)​线性模型​线性回归(
    的头像 发表于 04-24 11:58 225次阅读
    AI <b class='flag-5'>算法</b>核心知识清单(<b class='flag-5'>深度</b>实战版2)

    算法工程师需要具备哪些技能?

    算法工程师需要掌握一系列跨学科的技能,涵盖数学基础、编程能力、算法理论、工程实践以及业务理解等多个方面。 以下是具体技能及学习建议: 线性代数核心内容:矩阵运算、特征值分解、向量空间等。应用场
    发表于 02-27 10:53

    机器学习深度学习中需避免的 7 个常见错误与局限性

    无论你是刚入门还是已经从事人工智能模型相关工作一段时间,机器学习深度学习中都存在一些我们需要时刻关注并铭记的常见错误。如果对这些错误置之不理,日后可能会引发诸多麻烦!只要我们密切关注
    的头像 发表于 01-07 15:37 370次阅读
    机器<b class='flag-5'>学习</b>和<b class='flag-5'>深度</b><b class='flag-5'>学习</b>中需避免的 7 个常见错误与局限性

    穿孔机顶头检测仪 机器视觉深度学习

    顶头状态。 检测顶头算法 引入人工智深度学习技术,通过Keras实现卷积神经网络(CNN),用Numpy实现采集数据的训练,得到符合现场需求的模型,进一步提升检测的准确性和现场的适应性
    发表于 12-22 14:33

    深度剖析ADS1242和ADS1243:高精度ADC的卓越之选

    深度剖析ADS1242和ADS1243:高精度ADC的卓越之选 在电子工程师的日常工作中,高精度模拟 - 数字转换器(ADC)的选择至关重要,它直接影响到系统的性能和精度。今天,我们就来深入
    的头像 发表于 12-10 10:00 764次阅读

    【团购】独家全套珍藏!龙哥LabVIEW视觉深度学习实战课(11大系列课程,共5000+分钟)

    、GPU加速训练(可选) 双轨教学:传统视觉算法+深度学习方案全覆盖 轻量化部署:8.6M超轻OCR模型,适合嵌入式设备集成 无监督学习:无
    发表于 12-04 09:28

    【团购】独家全套珍藏!龙哥LabVIEW视觉深度学习实战课程(11大系列课程,共5000+分钟)

    、GPU加速训练(可选) 双轨教学:传统视觉算法+深度学习方案全覆盖 轻量化部署:8.6M超轻OCR模型,适合嵌入式设备集成 无监督学习:无
    发表于 12-03 13:50

    ADS1274/ADS1278:高性能多通道ADC的深度剖析与应用指南

    - Sigma ADC,它们为工程师们提供了强大而灵活的解决方案。今天,我们就来深入探讨一下这两款ADC的特点、功能以及应用中的注意事项。 文件下载: ads1274.pdf 一、产品概述
    的头像 发表于 11-27 15:54 1164次阅读
    <b class='flag-5'>ADS</b>1274/<b class='flag-5'>ADS</b>1278:高性能多通道ADC的<b class='flag-5'>深度</b>剖析与应用指南

    如何深度学习机器视觉的应用场景

    深度学习视觉应用场景大全 工业制造领域 复杂缺陷检测:处理传统算法难以描述的非标准化缺陷模式 非标产品分类:对形状、颜色、纹理多变的产品进行智能分类 外观质量评估:基于学习的外观质量标
    的头像 发表于 11-27 10:19 361次阅读

    【「AI芯片:科技探索与AGI愿景」阅读体验】+第二章 实现深度学习AI芯片的创新方法与架构

    矩阵乘法的算法 ①矩阵乘法的各种算法 ②优化矩阵乘法过程的新方法 ③加速矩阵乘法的新算法 1)用学习替代乘法 2)用加法代替矩阵乘法 3)只用加法的大
    发表于 09-12 17:30

    自动驾驶中Transformer大模型会取代深度学习吗?

    [首发于智驾最前沿微信公众号]近年来,随着ChatGPT、Claude、文心一言等大语言模型在生成文本、对话交互等领域的惊艳表现,“Transformer架构是否正在取代传统深度学习”这一话题一直被
    的头像 发表于 08-13 09:15 4397次阅读
    自动驾驶中Transformer大<b class='flag-5'>模型</b>会取代<b class='flag-5'>深度</b><b class='flag-5'>学习</b>吗?

    移远通信飞鸢AIoT大模型应用算法成功通过备案

    近日,第十二批境内深度合成服务算法备案信息发布,移远通信"飞鸢AIoT大模型应用算法"榜上有名。这标志着该算法在技术合规性、安全可控性及社会
    的头像 发表于 08-06 08:48 1075次阅读
    移远通信飞鸢AIoT大<b class='flag-5'>模型</b>应用<b class='flag-5'>算法</b>成功通过备案

    模型推理显存和计算量估计方法研究

    随着人工智能技术的飞速发展,深度学习模型在各个领域得到了广泛应用。然而,大模型的推理过程对显存和计算资源的需求较高,给实际应用带来了挑战。为了解决这一问题,本文将
    发表于 07-03 19:43