AlphaDrive:通过强化学习和推理释放自动驾驶中 VLM 的力量
AlphaDrive: Unleashing the Power of VLMs in Autonomous Driving via Reinforcement Learning and Reasoning
25年3月来自华中科技大学和地平线的论文
OpenAI 的 o1 和 DeepSeek R1 在数学和科学等复杂领域达到甚至超越了人类专家水平,其中强化学习(RL)和推理发挥了关键作用。在自动驾驶领域,最近的端到端模型极大地提升了规划性能,但由于常识和推理能力有限,在处理长尾问题时仍然面临困难。一些研究将视觉语言模型(VLMs)集成到自动驾驶中,但它们通常依赖于在驾驶数据上进行简单监督微调(SFT)的预训练模型,并未针对规划任务进一步探索专门的训练策略或优化方法。本文中,我们提出了 AlphaDrive,一个用于自动驾驶中视觉语言模型(VLMs)的强化学习与推理框架。AlphaDrive 引入了四种专门为规划任务定制的基于 GRPO 的强化学习奖励,并采用了一种结合监督微调(SFT)与强化学习(RL)的两阶段规划推理训练策略。其结果是,与仅使用监督微调(SFT)或不使用推理的方法相比,AlphaDrive 显著提升了规划性能和训练效率。此外,我们兴奋地发现,经过强化学习训练后,AlphaDrive 展现出一些涌现的多模态规划能力,这对于提升驾驶安全性和效率至关重要。据我们所知,AlphaDrive 是首个将基于 GRPO 的强化学习(RL)与规划推理集成到自动驾驶中的方法。我们将公开代码以促进未来的研究。
框架示意图:
1. 核心问题与动机
-
问题背景:
当前端到端自动驾驶模型虽在规划性能上有显著提升,但在长尾场景(如特殊交通标志、非常规障碍物)中表现不佳,主要受限于常识缺失和推理能力不足。 -
现有方案的局限:
-
直接使用视觉语言模型(VLMs)进行轨迹预测,因 VLMs 的文本生成特性难以输出精确数值控制信号,存在安全风险。
-
现有 VLM 驱动方法多依赖监督微调(SFT),未深入探索强化学习(RL)和推理技术对规划的优化潜力。
-
2. 创新方案:AlphaDrive框架
核心贡献
-
首个结合GRPO强化学习与规划推理的自动驾驶框架
-
提出 GRPO(Group Relative Policy Optimization) 作为 RL 算法,优于 PPO/DPO,更适合多解规划场景。
-
-
四大规划导向的GRPO奖励函数
-
规划准确性奖励:分速度/方向评估 F1-score。
-
动作加权奖励:按安全重要性加权(如刹车 > 匀速)。
-
规划多样性奖励:鼓励生成多可行解,避免模式坍塌。
-
格式规范化奖励:确保输出结构化(
<think>
推理过程 +<answer>
决策)。
-
-
两阶段训练策略
-
Stage 1(SFT 知识蒸馏):
用 GPT-4o 生成高质量规划推理数据(伪标签),蒸馏至小模型,解决真实推理数据稀缺问题。 -
Stage 2(RL 探索优化):
基于 GRPO 和四大奖励进一步优化,提升决策鲁棒性。
-
-
涌现的多模态规划能力
-
RL 训练后模型能生成多种合理驾驶方案(如直行时可选择匀速或加速),增强复杂场景适应性。
-
3. 关键技术细节
GRPO 的优势
-
组优化策略:一次生成多组输出(如 4 个规划方案),通过组内奖励归一化计算优势值,适配规划问题多解特性。
-
训练稳定性:相比 DPO/PPO,GRPO 在早期训练波动更小(参考 DeepSeek R1 的成功经验)。
奖励设计原理
奖励类型 | 解决痛点 | 设计方法 |
---|---|---|
准确性奖励 | 动作格式噪声导致早期训练不稳定 | 分速度/方向计算 F1-score(非严格匹配) |
动作加权奖励 | 关键动作(刹车)安全权重不足 | 按动作安全重要性动态加权(e.g., 刹车权重 > 加速) |
多样性奖励 | 输出收敛至单一解 | 组内输出差异越大奖励越高(惩罚相似决策) |
格式奖励 | 非结构化输出难解析 | 强制要求 <think> 推理 + <answer> 决策格式 |
两阶段训练必要性
-
SFT 阶段:解决小模型感知能力弱、早期 RL 幻觉问题(如忽略红绿灯)。
-
RL 阶段:引入稀疏奖励信号探索高质量决策,突破 SFT 性能天花板。
4. 实验结果与优势
性能对比(MetaAD 数据集)
模型 | 规划准确率 | 速度 F1↑ | 方向 F1↑ | 推理质量(CIDEr) |
---|---|---|---|---|
Qwen2VL-7B (SFT) | 61.44% | 73.80 | 84.53 | 30.65 |
AlphaDrive (2B) | 77.12% | 86.63 | 86.80 | 38.97 |
-
关键优势:
-
仅用 20% 数据时,超越 SFT 基线 35.31%。
-
小模型(2B)显著超越大模型(7B),验证框架高效性。
-
消融实验结论
-
奖励缺一不可:移除动作加权奖励导致关键动作(减速)F1 下降 19%(表2)。
-
推理的必要性:引入推理后复杂动作(加速/减速)F1 提升 10%(表3)。
-
数据效率:50k 样本时 SFT+RL 已达 70.83% 准确率,纯 SFT 需 110k 样本(表4)。
5. 局限与未来方向
-
局限:
-
无法处理变道(lane change)等高阶行为(缺乏标注数据)。
-
推理数据依赖大模型伪标签,可能遗漏关键感知因素(如未识别施工标志)。
-
-
未来方向:
-
构建真实驾驶推理数据集。
-
扩展至多智能体交互场景。
-
探索 3D 场景表示与 VLM 的深度结合(参考 OmniDrive)。
-
6. 总结
AlphaDrive 的核心价值在于:
-
方法创新:首次将 GRPO 强化学习与规划推理引入自动驾驶,突破 SFT 瓶颈。
-
性能突破:小模型实现 SOTA 性能,数据效率提升 5 倍。
-
安全增强:多模态规划能力为动态场景提供冗余决策方案。
-
开源意义:代码公开推动社区发展(GitHub: hustvl/AlphaDrive)。
启示:该研究证明,通用大模型的 RL 与推理技术可迁移至垂直领域(如自动驾驶),通过领域适配的奖励设计和数据生成策略,解决小样本、长尾问题。
如果此文章对您有所帮助,那就请点个赞吧,收藏+关注 那就更棒啦,十分感谢!!!
相关文章:

AlphaDrive:通过强化学习和推理释放自动驾驶中 VLM 的力量
AlphaDrive: Unleashing the Power of VLMs in Autonomous Driving via Reinforcement Learning and Reasoning 25年3月来自华中科技大学和地平线的论文 OpenAI 的 o1 和 DeepSeek R1 在数学和科学等复杂领域达到甚至超越了人类专家水平,其中强化学习(R…...

【八股消消乐】如何解决SQL线上死锁事故
😊你好,我是小航,一个正在变秃、变强的文艺倾年。 🔔本专栏《八股消消乐》旨在记录个人所背的八股文,包括Java/Go开发、Vue开发、系统架构、大模型开发、具身智能、机器学习、深度学习、力扣算法等相关知识点ÿ…...

如何使用 HTML、CSS 和 JavaScript 随机更改图片颜色
原文:如何使用 HTML、CSS 和 JavaScript 随机更改图片颜色 | w3cschool笔记 (请勿标记为付费!!!!) 在网页开发中,为图片添加动态效果可以显著提升用户体验。今天,我将向…...
html如何在一张图片上的某一个区域做到点击事件
在HTML中,可以通过<map>和<area>标签来实现对图片的某个区域添加点击事件。这种方法通常用于创建图像地图(Image Map),允许用户点击图片的不同区域触发不同的事件。 以下是实现步骤和代码示例: 1. 准备图…...
Java数据校验:确保数据完整性和正确性
在软件开发中,数据校验是确保应用程序数据完整性和正确性的关键步骤。Java 提供了多种方式来实现数据校验,从简单的条件检查到复杂的框架支持。在这篇博客中,我们将探讨 Java 中数据校验的重要性、常用的校验注解以及如何整合校验框架来提高代…...
Java-IO流之序列化与反序列化详解
Java-IO流之序列化与反序列化详解 一、序列化与反序列化概述1.1 基本概念1.2 核心接口与类1.3 应用场景 二、Java序列化的基本实现2.1 实现Serializable接口2.2 使用ObjectOutputStream进行序列化2.3 使用ObjectInputStream进行反序列化 三、序列化的高级特性3.1 serialVersion…...
机器学习14-迁移学习
迁移学习学习笔记 一、迁移学习概述 迁移学习是机器学习中的一个重要领域,它旨在解决当目标任务的训练数据有限时,如何利用与目标任务相关但不完全相同的源任务数据来提高学习性能的问题。在现实世界中,获取大量高质量的标注数据往往成本高…...

CAN通信收发测试(USB2CAN模块测试实验)
1.搭建测试环境 电脑:安装 USB 驱动,安装原厂调试工具,安装cangaroo(参考安装包的入门教程即可) USB驱动路径:~\CAN分析仪资料20230701_Linux\硬件驱动程序 原厂调试工具路径:~\CAN分析仪资料2…...
小白初学SpringBoot记录
1.对于通过json返回用户信息时,需要忽略password字段操作: 1.1 pom配置jackson细节: <dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>…...

OSCP备战-BSides-Vancouver-2018-Workshop靶机详细步骤
一、靶机介绍 靶机地址:https://www.vulnhub.com/entry/bsides-vancouver-2018-workshop%2C231/ 靶机难度:中级(CTF) 靶机发布日期:2018年3月21日 靶机描述: Boot2root挑战旨在创建一个安全的环境&…...

PDF转Markdown/JSON软件MinerU最新1.3.12版整合包下载
MinerU发布至今我已经更新多版整合包了,5天前MinerU发布了第一个正式版1.0.1,并且看到在18小时之前有更新模型文件,我就做了个最新版的一键启动整合包。 2025年02月21日更新v1.1.0版整合包 2025年02月27日更新v1.2.0版整合包 2025-06-05 更…...
Android第十三次面试总结基础
Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: onCreate() 调用时机:Activity 首次创建时调用。…...

【深入学习Linux】System V共享内存
目录 前言 一、共享内存是什么? 共享内存实现原理 共享内存细节理解 二、接口认识 1.shmget函数——申请共享内存 2.ftok函数——生成key值 再次理解ftok和shmget 1)key与shmid的区别与联系 2)再理解key 3)通过指令查看/释放系统中…...

编程基础:执行流
能帮到你的话,就给个赞吧 😘 文章目录 执行流同步:顺序执行,只有一个执行流异步:新开后台(次)执行流,后台执行流要确保不能影响主执行流。共有两个执行流。 阻塞:任务阻塞执行流,导致…...

理解非结构化文档:将 Reducto 解析与 Elasticsearch 结合使用
作者:来自 Elastic Adel Wu 演示如何将 Reducto 的文档处理与 Elasticsearch 集成以实现语义搜索。 Elasticsearch 与业界领先的生成式 AI 工具和提供商有原生集成。欢迎观看我们的网络研讨会,了解如何超越 RAG 基础,或使用 Elastic 向量数据…...
算法训练第十天
232. 用栈实现队列 代码: class MyQueue(object):def __init__(self):self.arr1 []self.arr2 []def push(self, x):""":type x: int:rtype: None"""self.arr1.append(x)def pop(self):""":rtype: int""…...
2种官方方法关闭Windows防火墙
2种官方方法关闭Windows防火墙 引言一、防火墙:你电脑的"智能安检员"二、这些场景,可能需要"临时撤防"三、极速关闭方案方法一:通过系统设置(Win10/11专属通道)方法二:通过传统控制面板(全系统通用:Win7-11全系)四、 必读安全警告(关闭前请三思!…...

[面试精选] 0094. 二叉树的中序遍历
文章目录 1. 题目链接2. 题目描述3. 题目示例4. 解题思路5. 题解代码6. 复杂度分析 1. 题目链接 94. 二叉树的中序遍历 - 力扣(LeetCode) 2. 题目描述 给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。 3. 题目示例 示例 1 : 输入&…...
股指期货期权交易规则是什么?
本文主要介绍股指期货期权交易规则是什么?股指期货期权是以股指期货合约为标的物的期权交易,其规则结合了期货与期权的特点。 股指期货期权交易规则是什么? 一、基础交易规则 交易时间 交易日9:30-11:30,13:00-15:00࿰…...

学习笔记(23): 机器学习之数据预处理Pandas和转换成张量格式[1]
学习笔记(23): 机器学习之数据预处理Pandas和转换成张量格式[1] 学习机器学习,需要学习如何预处理原始数据,这里用到pandas,将原始数据转换为张量格式的数据。 1、安装pandas pip install pandas 2、写入和读取数据 >>创建一个人工…...

2025年6月6日第一轮
2025年6月6日 The rapid in Chiese industdy is developnig e,and it is From be in a enjoy a deep is developing The drone industry in China is developing The drone industy in china develops rapidly and is in a leading position in in the world. The dro…...
记一次运行spark报错
提交spark任务运次报错 06/03 18:27:50 INFO Client: Setting up container launch context for our AM 25/06/03 18:27:50 INFO Client: Setting up the launch environment for our AM container 25/06/03 18:27:50 INFO Client: Preparing resources for our AM container …...

12-Oracle 23ai Vector 使用ONNX模型生成向量嵌入
一、Oracle 23ai Vector Embeddings 核心概念 向量嵌入(Vector Embeddings) -- 将非结构化数据(文本/图像)转换为数值向量 - - 捕获数据的语义含义而非原始内容 - 示例:"数据库" → [0.24, -0.78, 0.5…...
2. 库的操作
2.1 创建数据库 语法: CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, create_specification] ...] create_specification: [DEFAULT] CHARACTER SET charset_name # 字符集: 存储编码 [DEFAULT] COLLATE collation_name # 校验集: 比较/选择/读…...

pytorch 与 张量的处理
系列文章目录 文章目录 系列文章目录一、Tensor 的裁剪二、Tensor 的索引与数据筛选torch.wheretorch.indicestorch.gathertorch.masked_selecttorch.taketorch.nonzero(省略) 三、Tensor 的组合与拼接torch.cattorch.stack 四、Tensor的切片chunksplit …...

layer norm和 rms norm 对比
Layer norm # Layer Norm 公式 mean x.mean(dim-1, keepdimTrue) var x.var(dim-1, keepdimTrue) output (x - mean) / sqrt(var eps) * gamma beta特点: 减去均值(去中心化)除以标准差(标准化)包含可学习参数 …...

Java高级 | 【实验六】Springboot文件上传和下载
隶属文章:Java高级 | (二十二)Java常用类库-CSDN博客 系列文章:Java高级 | 【实验一】Springboot安装及测试 |最新-CSDN博客 Java高级 | 【实验二】Springboot 控制器类相关注解知识-CSDN博客 Java高级 | 【实验三】Springboot 静…...
RKNN开发环境搭建1-基于Ubuntu 18.04系统使用Docker安装rknn-toolkit2
目录 写在最前面Docker 方式安装rknn-toolkit2写在最前面 瑞芯微在RKNN的环境搭建方面的资料很多,但是在搭建过程中发现很多问题教程中并未提及,对初学者不友好。所以博主做了这个系列的文章,从开始搭建环境到对于RKNN Model Zoo的示例进行实践,希望能对初学者有帮助。坚持…...
qt使用笔记二:main.cpp详解
Qt中main.cpp文件详解 main.cpp是Qt应用程序的入口文件,包含程序的启动逻辑。下面我将详细解析其结构和功能。 基本结构 一个典型的Qt main.cpp 文件结构如下: #include <QApplication> // 或者 QGuiApplication/QCoreApplication #include &…...

VBA进度条ProgressForm1
上一章《VBA如何使用ProgressBar进度条控件》介绍了ProgressBar控件的使用方法,今天我给大家介绍ProgressForm1进度条的使用方法,ProgressForm1是集成ProgressBar控件和Label控件的窗体,可以同时显示进度条和百分比,如下图&#x…...