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

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

3天内不再提示

机器学习在高度自动驾驶中的机遇和挑战

星星科技指导员 来源:嵌入式计算设计 作者:Sorin Mihai 2022-06-17 10:06 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在这三部分系列的第一部分中,作者调查了机器学习技术在高度自动化驾驶场景中的驱动因素和潜在应用。第二部分定义了机器学习技术的理论背景,以及汽车开发人员可用的神经网络类型。第三部分在功能安全要求的背景下评估这些选项。

在过去的几年里,机器学习一直是研究和工业界最热门的话题之一。与几十年前机器学习的出现相比,计算性能和算法的最新进展引起了新的关注。

机器学习,特别是深度学习解决方案促进了人工智能最近取得的令人瞩目的成果。应用包括自然语言处理 (NLP)、个人协助、AlphaGo 战胜人类,以及在学习玩 Atari 游戏时达到人类水平的行为。

考虑到机器学习和深度学习在解决极其复杂的问题时能够取得如此令人印象深刻的结果,很明显,研究人员和工程师也考虑将它们应用于自动驾驶汽车的高度自动驾驶 (HAD) 场景。NVIDIA 的 Davenet、Comma.Ai、Google Car 和 Tesla 在该领域取得了第一个有希望的成果。机器学习和深度学习方法已经产生了最初的原型,但是这些功能的工业化在例如基本的功能安全考虑方面提出了额外的挑战。

本文旨在为正在进行的关于机器学习在汽车行业中的作用的讨论做出贡献,并强调该主题在自动驾驶汽车背景下的重要性。特别是,它旨在增加对机器学习技术的能力和局限性的理解。

首先,我们在 EB robinos 参考架构的背景下讨论基于机器学习的高度自动驾驶的设计空间和架构替代方案。然后详细介绍了 Elektrobit 目前正在研究和开发的两个选定用例。

第二部分提供了机器学习和深度神经网络 (DNN) 的理论背景,它们为推导用于根据给定任务选择机器学习技术的标准提供了基础。最后,第三部分讨论了影响功能安全考虑的验证和确认挑战。

机器学习和高度自动化驾驶

开发导致自动驾驶汽车的高度自动驾驶功能是一项复杂而艰巨的任务。工程师通常使用分而治之的原则来应对这些挑战。这是有充分理由的:具有明确定义接口的分解系统可以比单个黑盒更彻底地测试和验证。

我们的高度自动驾驶方法是 EB robinos,如图 1 所示。EB robinos 是一种功能性软件架构,具有开放接口和软件模块,允许开发人员管理自动驾驶的复杂性。EB robinos 参考架构按照“感知、计划、行动”分解范式集成了组件。此外,它在其软件模块中利用机器学习技术,以应对高度非结构化的现实世界驾驶环境。以下小节包含已选择的集成在 EB robinos 中的技术示例。

poYBAGKr4bCAGndrAAFzjMtNLAM278.png

图 1.开放式 EB robinos 参考架构。

相比之下,端到端的深度学习方法也存在,它涵盖了从感觉到行动的方方面面(Bojarski et al. 2016)。然而,关于极端情况和罕见事件的处理和训练,以及必要的训练数据的指数数量,分解方法(即语义抽象)被认为更合理(Shalev-Shwartz et al. 2016 )。

然而,即使遵循分解方法,也需要决定哪些部分最好单独处理或与其他部分结合处理。还必须确定机器学习方法是否有望在特定块完成的任务中优于传统工程算法。尤其重要的是,此决定可能会受到功能安全考虑的影响。如本系列后面所述,功能安全是自动驾驶的关键要素。传统的软件组件是根据具体需求编写的,并进行相应的测试。

机器学习系统测试和验证的主要问题是它们的黑盒性质和学习方法的随机行为。基本上不可能预测系统如何学习其结构。

上面给出的标准和理论背景可以为明智的决策提供指导。Elektrobit 目前正在研究和开发机器学习方法被认为很有前景的用例。接下来介绍两个这样的用例。第一个涉及为机器学习算法生成人工训练样本及其在交通标志识别中的部署。第二个用例描述了我们的自学汽车方法。这两个示例都使用了当前最先进的深度学习技术。

用例 1:人工样本生成和交通标志识别

该项目在增强入口导航系统中使用的 OpenStreetMap (OSM) 数据的背景下,提出了一种限速和限速结束交通标志 (TS) 识别系统。目的是在可以安装在汽车挡风玻璃上的标准智能手机上运行该算法。系统检测交通标志及其 GPS 位置,并通过手机的移动数据连接将收集的数据上传到后端服务器。该方法主要分为两个阶段:检测和识别。检测是通过增强分类器实现的。识别是通过概率贝叶斯推理框架执行的,该框架融合了由一组视觉概率过滤器传递的信息。本文的下一部分包含对所用算法背后的理论背景的描述。

pYYBAGKr4beAe3DbAAFzDdwPAp8809.png

图 2:基于智能手机的 TSR 系统框图

获得的彩色图像以 24 位 RGB 格式传递给检测器。通过评估通过检测窗口计算的级联分类器的响应来执行检测过程。

该检测窗口以不同的比例在图像上移动。可能的交通标志感兴趣区域 (RoI) 被收集为一组对象假设。从特征提取的角度来看,分类级联使用扩展的局部二进制模式 (eLPB) 进行训练。假设向量中的每个元素通过支持向量机(SVM)学习算法分类为交通标志。

交通标志识别方法依赖于人工标记的交通标志,用于训练检测和识别分类器。由于不同国家使用的交通标志模板种类繁多,标记过程繁琐且容易出错。

要使交通标志识别方法表现良好,需要每个国家/地区的特定训练数据。由于必须考虑位置、照明和天气条件,因此创建足够多的手动标记交通标志非常耗时。

因此,Elektrobit 创建了一种算法,可以从单个人工模板图像自动生成训练数据,以克服手动注释大量训练样本的挑战。图 4 显示了算法的结构。

pYYBAGKr4b-AWQV8AAFPbnVMfjM433.png

图 4.基于机器学习的识别系统的人工样本生成算法框图。

这种方法提供了一种生成用于机器学习算法训练阶段的人工数据的方法。该方法使用每个国家的真实和通用交通标志图像模板的缩减数据集来输出图像集合。

这些图像的特征是由一系列图像模板变形算法人为定义的。使用核主成分分析 (KPCA) 对减少的一组真实世界图像对由此获得的人工图像进行评估。当生成图像的特征与真实图像的特征相对应时,人工数据集适用于机器学习系统的训练,在这种特殊情况下用于交通标志识别。

Elektrobit 将 Boosting SVM 分类器替换为基于深度区域的检测和识别卷积神经网络,以提高原始交通标志识别系统的精度。该网络使用 Caffe (Jia et al. 2014) 进行部署,Caffe 是由 Berkley 开发并由 NVIDIA 支持的深度神经网络库。Caffe 是一个带有 PythonMatlab 接口的纯 C++/CUDA 库。除了核心的深度学习功能外,Caffe 还提供可直接用于机器学习应用的参考深度学习模型。图 5 显示了用于交通标志检测和识别的 Caffe 网络结构。不同的彩色块代表卷积(红色)、池化(黄色)、激活(绿色)和全连接网络层(紫色)。

poYBAGKr4caAeCqFAALl32WqVB0778.png

图 5. Caffe 中基于深度区域的检测和识别卷积神经网络。

用例 2:学习如何驾驶

深度学习的革命最近增加了对另一种范式的关注,即强化学习 (RL)。在 RL 中,代理本身通过奖励系统学习如何执行某些任务。该方法属于半监督学习的范畴,因为奖励系统的设计需要特定领域的知识。

与监督学习相比,即使输入数据不需要标记也是如此。最近对 RL 的兴趣主要归功于 Deep Mind 团队的开创性工作。该团队设法将 RL 与能够学习动作价值函数的深度神经网络相结合(Mnih et al. 2016)。他们的系统能够学会以人类水平的能力玩多个 Atari 游戏。

我们构建了深度强化学习系统,如图 6 所示,以便安全地试验自动驾驶学习。该系统使用 TORCS 开源竞赛模拟器(Wymann et al. 2014)。TORCS 作为高度便携的多平台赛车模拟器在科学界被广泛使用。它在 Linux(所有架构,32 位和 64 位,小端和大端)、FreeBSD、OpenSolaris、MacOSX 和 Windows(32 位和 64 位)上运行。它有许多不同的汽车、赛道和对手来比赛。我们可以收集用于物体检测的图像以及来自游戏引擎的关键驾驶指标。这些指标包括汽车的速度、自我汽车与道路中心线的相对位置以及与前面汽车的距离。

pYYBAGKr4dCAdig2AALUhHZxC6U718.png

图 6.用于学习如何在模拟器中驾驶的深度强化学习架构。

该算法的目标是通过与虚拟环境交互来自学驾驶命令。为此目的使用了深度强化学习范式,其中深度卷积神经网络 (DNN) 通过提供正奖励信号的强化动作 a 进行训练r(s^‘,a)。状态s由模拟器窗口中显示的当前游戏图像表示。有四种可能的动作:加速、减速、左转和右转。

DNN 计算一个所谓的Q-函数,该函数预测要针对特定状态执行的最优动作 a s。换句话说,DNNQ-为每个状态-动作对计算一个值。将执行具有最高Q-值的操作,这会将模拟器环境移动到下一个状态,s’。在这种状态下,通过奖励信号来评估执行的动作r(s’,a)。

例如,如果汽车能够在没有碰撞的情况下加速,那么使这成为可能的相关动作将在 DNN 中得到加强;否则,它会气馁。通过使用状态奖励信号重新训练 DNN,在框架中执行强化。图 7 显示了深度强化学习算法的 Caffe 实现。网络层具有与图 6 相同的颜色编码。

poYBAGKr4diAEb2nAAHPetpLJ-I095.png

图 7.用于深度强化学习的基于 Caffe 的深度卷积神经网络结构。

第二部分定义了机器学习技术的理论背景,以及汽车开发人员可用的神经网络类型。

审核编辑:郭婷

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

    关注

    3046

    文章

    9086

    浏览量

    173110
  • 神经网络
    +关注

    关注

    42

    文章

    4840

    浏览量

    108141
  • 机器学习
    +关注

    关注

    67

    文章

    8561

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    为什么光照对纯视觉自动驾驶影响较大?

    自动驾驶的技术路线,纯视觉方案因其模仿人类驾驶逻辑与低廉的硬件成本,一直是很多车企的选择。但这种高度依赖摄像头的感知方式,
    的头像 发表于 03-09 17:06 974次阅读

    自动驾驶中常提的离线强化学习是什么?

    [首发于智驾最前沿微信公众号]之前谈及自动驾驶模型学习时,详细聊过强化学习的作用,由于强化学习能让大模型通过交互学到策略,不需要固定的规则
    的头像 发表于 02-07 09:21 333次阅读
    <b class='flag-5'>自动驾驶</b>中常提的离线强化<b class='flag-5'>学习</b>是什么?

    强化学习会让自动驾驶模型学习更快吗?

    [首发于智驾最前沿微信公众号]在谈及自动驾驶大模型训练时,有的技术方案会采用模仿学习,而有些会采用强化学习。同样作为大模型的训练方式,强化学习有何不同?又有什么特点呢? 什么是强化
    的头像 发表于 01-31 09:34 815次阅读
    强化<b class='flag-5'>学习</b>会让<b class='flag-5'>自动驾驶</b>模型<b class='flag-5'>学习</b>更快吗?

    如何设计好自动驾驶ODD?

    为确定自动驾驶的可使用范围,会给自动驾驶设置一个运行设计域(Operational Design Domain,ODD)。ODD的作用就是用来明确自动驾驶什么情况下能工作,
    的头像 发表于 01-24 09:27 1718次阅读

    自动驾驶中常提的模仿学习是什么?

    当谈及自动驾驶模型学习时,经常会提到模仿学习的概念。所谓模仿学习,就是模型先看别人怎么做,然后学着去做。自动驾驶
    的头像 发表于 01-16 16:41 2123次阅读

    汽车自动驾驶的太阳光模拟应用研究

    自动驾驶系统的安全性与可靠性,高度依赖于其复杂多变光照环境的稳定表现。其中,高动态范围的自然光照是挑战车载感知系统的关键因素。紫创测控l
    的头像 发表于 12-10 18:04 547次阅读
    汽车<b class='flag-5'>自动驾驶</b>的太阳光模拟应用研究

    自动驾驶中常提的“强化学习”是个啥?

    [首发于智驾最前沿微信公众号]在谈及自动驾驶时,有些方案中会提到“强化学习(Reinforcement Learning,简称RL)”,强化学习是一类让机器通过试错来学会做决策的技术。
    的头像 发表于 10-23 09:00 868次阅读
    <b class='flag-5'>自动驾驶</b>中常提的“强化<b class='flag-5'>学习</b>”是个啥?

    如何确保自动驾驶汽车感知的准确性?

    感知的定义及原理 聊这个话题之前,我们先聊一聊感知是什么,自动驾驶感知系统就是一个把外界变成机器可用信息的工程流水线。感知系统的输入主要依靠如摄像头(可见光、近红外)、激光雷达(LiDAR)、毫米波雷达(RADAR)、超声
    的头像 发表于 08-23 15:06 1806次阅读
    如何确保<b class='flag-5'>自动驾驶</b>汽车感知的准确性?

    塑造自动驾驶汽车格局的核心技术

    自动驾驶汽车长期以来一直是科幻小说中的情节,但在如今的2025年,它似乎已经离我们越来越近,智能辅助驾驶已经出现在越来越多的新能源汽车。但距离完全的自动驾驶仍有需要克服的工程
    的头像 发表于 08-21 16:03 1083次阅读

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

    持续讨论。特别是自动驾驶领域,部分厂商开始尝试将多模态大模型(MLLM)引入到感知、规划与决策系统,引发了“传统深度学习是否已过时”的激烈争论。然而,从技术原理、算力成本、安全需求与实际落地路径等维度来看,Transforme
    的头像 发表于 08-13 09:15 4351次阅读
    <b class='flag-5'>自动驾驶</b><b class='flag-5'>中</b>Transformer大模型会取代深度<b class='flag-5'>学习</b>吗?

    看看那些用树莓派打造的自动驾驶汽车!

    崭新的汽车时代门槛前,通往未来的道路不再仅由沥青铺就,还承载着人工智能(AI)的无限可能和突破性的创造力。现实世界驾驶颇具挑战,因为可
    的头像 发表于 07-27 13:24 1469次阅读
    看看那些用树莓派打造的<b class='flag-5'>自动驾驶</b>汽车!

    太阳光模拟器 | 汽车自动驾驶开发的应用

    汽车产业向电动化、智能化转型的浪潮自动驾驶技术的研发面临着复杂环境感知的挑战。光照条件作为影响传感器性能的关键因素,直接关系到自动驾驶
    的头像 发表于 07-24 11:26 802次阅读
    太阳光模拟器 | <b class='flag-5'>在</b>汽车<b class='flag-5'>自动驾驶</b>开发<b class='flag-5'>中</b>的应用

    低速自动驾驶与乘用车自动驾驶技术要求上有何不同?

    [首发于智驾最前沿微信公众号]自动驾驶技术的发展正朝着多元化方向迈进,其中低速自动驾驶小车(以下简称“低速小车”)因其物流配送、园区运维、社区服务等场景的独特价值而受到广泛关注,且
    的头像 发表于 07-14 09:10 1229次阅读
    低速<b class='flag-5'>自动驾驶</b>与乘用车<b class='flag-5'>自动驾驶</b><b class='flag-5'>在</b>技术要求上有何不同?

    卡车、矿车的自动驾驶和乘用车的自动驾驶技术要求上有何不同?

    [首发于智驾最前沿微信公众号]自动驾驶技术的发展,让组合辅助驾驶得到大量应用,但现在对于自动驾驶技术的宣传,普遍是乘用车领域,而对于卡车、矿车的
    的头像 发表于 06-28 11:38 1726次阅读
    卡车、矿车的<b class='flag-5'>自动驾驶</b>和乘用车的<b class='flag-5'>自动驾驶</b><b class='flag-5'>在</b>技术要求上有何不同?

    激光雷达自动驾驶领域中的优势

    自动驾驶系统,激光雷达起到了至关重要的作用,它是实现高度自动驾驶的关键传感器之一。激光雷达通过发射和接收多束脉冲信号,通过测量ToF(T
    的头像 发表于 05-15 11:15 1361次阅读
    激光雷达<b class='flag-5'>在</b><b class='flag-5'>自动驾驶</b>领域中的优势