基于Diffusion的轨迹优化:扩散模型在自动驾驶中的原理、架构与落地挑战

自动驾驶的核心难点从来不是"感知精度",而是多模态未来、不确定性、长尾场景 。用一句话概括:未来不是一个点,而是一个分布

前车会不会加塞?行人会不会突然横穿?自车该变道还是让行?这些问题本质上都是"多解问题"------行为预测、规划决策、仿真 roll-out 这些模块天然存在多个合理答案。而传统方法在这里普遍遇到瓶颈:

  • 回归方法 → 只能给出一个"均值解",把多种可能行为平均成了一个不存在的中间状态
  • AR(自回归)方法 → 逐步预测容易产生误差累积
  • Rule-based 方法 → 规则覆盖范围有限,长尾场景难以穷举

正是在这样的背景下,**Diffusion(扩散模型)**作为一种"高质量、多模态、对不确定性友好"的轨迹/场景/行为分布生成器,逐渐成为自动驾驶世界模型与规划层的重要工具。本文先回顾自回归(AR)建模的思路作为对照,再系统梳理扩散模型的原理、标准流程与整体架构,最后聚焦扩散模型在自动驾驶中的实际应用与落地挑战。


一、对照组:基于AR(自回归)的轨迹建模

1.1 什么是AR模型

AutoRegressive Model(自回归模型)是一类用"过去 → 预测未来"的建模方法,核心思想是:当前输出由历史输出(以及可选的条件输入)逐步生成

这一思路在NLP领域已经非常成熟,典型代表包括GPT系列、Transformer Decoder,以及LLaMA/Qwen/DeepSeek等大模型。在自动驾驶/机器人领域,AR的角色则体现为:轨迹逐步生成、动作序列建模、多步planning rollout

1.2 AR模型在自动驾驶中的角色

AR用"一步步条件生成"的方式,建模时序因果与决策依赖。

面临的问题:行人、车辆的行为具有强时序依赖,且存在多种可能的未来,而AR天然是逐点生成的。

自回归的用法:一步步生成未来状态:

复制代码
(x_t, y_t) → (x_{t+1}, y_{t+1}) → ...

这样做的优势在于保证时序一致性 ,并且可融合历史上下文

具体到规划场景,轨迹本质上就是时间序列,每一步都受前一步的动力学与碰撞约束制约。因此自回归天然适合驾驶场景:驾驶动作强烈依赖历史 ,同时能够避免瞬时不连续控制。模型可以直接输出控制序列:

复制代码
steer_t, throttle_t → steer_{t+1}, throttle_{t+1}

且能显式考虑曲率连续性与动力学可行性。但AR的固有短板------误差累积、缺乏对多模态未来的显式建模------也正是扩散模型被引入的重要动机。


二、Diffusion(扩散模型)基础原理

2.1 核心思想:加噪与去噪的马尔可夫链

扩散模型是一种生成模型,用于生成与训练数据相似的数据。简单来说,它的工作方式是通过迭代添加高斯噪声来"破坏"训练数据,然后学习如何消除噪声来恢复数据------即通过缓慢添加(去除)噪声来生成样本的正向(反向)扩散过程的马尔可夫链。

一个标准扩散模型包含两个主要过程:

  • 正向扩散:通过逐渐引入噪声来破坏图像,直到图像变成完全随机的噪声
  • 反向扩散:使用一系列马尔可夫链逐步去除预测噪声,从高斯噪声中恢复数据

2.2 标准流程:U-Net作为去噪骨干

对于噪声的估计和去除,最常使用的网络结构是U-Net。该网络因架构形似字母U而得名,是一个全卷积神经网络,非常适合图像处理:它先通过下采样找到图像的低维表示,便于提取重要属性,再通过上采样将图像恢复回来。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

具体来说,所谓"去除噪声"就是从时间帧 t 向时间帧 t-1 的变换,其中 t 的取值范围是从 t0(没有噪声)到 tmax(完全噪声)之间的任意时间帧。变换规则为:

  1. 输入时间帧 t 的图像,该图像上存在特定噪声;
  2. 使用 U-Net 预测总噪声量;
  3. 在时间帧 t 的图像中去除总噪声的"一部分",得到噪声较少的时间帧 t-1 的图像。

从数学上讲,重复执行上述过程 T 次,比一次性尝试消除整个噪声更有意义。通过反复迭代,噪声会逐渐被去除,最终得到一个更"干净"的结果------这也是为什么先对原图添加完全噪声、再迭代去噪的效果,会优于直接在原图上去噪。

2.3 扩散损失函数

扩散模型通过从正态分布变量中逐步去除噪声来学习数据分布,也就是说,扩散模型使用长度为 T 的反向马尔可夫链,可以建模为时间步长为 t = 1, ..., T 的一系列"T"个去噪自动编码器(用 εθε_θεθ 表示):

LDM=Ex,ϵ∼N(0,1),t∥ϵ−ϵθ(xt,t)∥22L_{DM} = \mathbb{E}_{x,\epsilon\sim\mathcal{N}(0,1),t}\left\\\|\\epsilon - \\epsilon_\\theta(x_t, t)\\\|_2\^2\\rightLDM=Ex,ϵ∼N(0,1),t∥ϵ−ϵθ(xt,t)∥22

在**潜在扩散模型(Latent Diffusion Model)**中,损失函数取决于潜在向量而非像素空间:将像素空间元素 x 替换成潜在向量 ε(x),将 t 时间的状态 x_t 替换为去噪U-Net在时间 t 的潜在状态 z_t,即可得到潜在扩散模型的损失函数:

LLDM:=Eε(x),ϵ∼N(0,1),t∥ϵ−ϵθ(zt,t)∥22L_{LDM} := \mathbb{E}_{\varepsilon(x),\epsilon\sim\mathcal{N}(0,1),t}\left\\\|\\epsilon - \\epsilon_\\theta(z_t, t)\\\|_2\^2\\rightLLDM:=Eε(x),ϵ∼N(0,1),t∥ϵ−ϵθ(zt,t)∥22

进一步写成条件损失函数:

LLDM:=Eε(x),y,ϵ∼N(0,1),t∥ϵ−ϵθ(zt,t,τθ(y))∥22L_{LDM} := \mathbb{E}_{\varepsilon(x),y,\epsilon\sim\mathcal{N}(0,1),t}\left\\\|\\epsilon - \\epsilon_\\theta(z_t, t, \\tau_\\theta(y))\\\|_2\^2\\rightLLDM:=Eε(x),y,ϵ∼N(0,1),t∥ϵ−ϵθ(zt,t,τθ(y))∥22

其中 τθ(y)τ_θ(y)τθ(y) 是条件 y 下的领域专用编码器(比如Transformer)。

2.4 条件扩散与注意力机制

扩散模型本质上是依赖先验的条件模型。在图像生成任务中,先验通常是文本、图像或语义图。为了获得先验的潜在表示,需要使用转换器(例如CLIP)将文本/图像嵌入到潜在向量 τ 中,因此最终的损失函数不仅取决于原始图像的潜在空间,还取决于条件的潜在嵌入。

潜在扩散模型的主干是具有稀疏连接的 U-Net 自动编码器,提供交叉注意力机制:Transformer 网络将条件文本/图像编码为潜在嵌入,再通过交叉注意力层映射到 U-Net 的中间层,实现注意力计算:

(Q,K,V)=softmax(QKT/d)V(Q, K, V) = softmax(QK^T/\sqrt{d})V(Q,K,V)=softmax(QKT/d )V

其中 Q、K 和 V 是可学习的投影矩阵。

2.5 整体框架图:Latent Diffusion Model

将上述几部分拼接起来,就是完整的潜在扩散模型架构:

图中 x 表示输入图像,x̃ 表示生成的图像;ε 是编码器,D 是解码器,二者共同构成了感知压缩;z 是潜在向量,z_T 是增加噪声后的潜在向量;τθ 是文本/图像的编码器(比如Transformer或CLIP),实现了语义压缩。整个流程可以概括为:像素空间 → 编码压缩到潜在空间 → 在潜在空间中做扩散/去噪(并通过交叉注意力融入条件信息)→ 解码回像素空间


三、扩散模型在自动驾驶中的应用

3.1 为什么自动驾驶需要Diffusion

自动驾驶的核心难点不是感知精度,而是多模态未来、不确定性、长尾场景------"未来不是一个点,而是一个分布"。行为预测(前车、行人)、规划(变道/让行/加速)、仿真 roll-out,这些模块天然是多解的。

传统方法的瓶颈

  • 回归 → 均值解
  • AR → 误差累积
  • Rule-based → 覆盖有限

Diffusion 正好填补了这一空白,成为自动驾驶中"高质量、多模态、不确定性友好"的轨迹/场景/行为分布生成器,常用于世界模型规划层

轨迹预测场景:同一场景下,前车/行人存在多种合理行为,而用 L2/ADE/FDE 做回归会导致均值解坍塌。Diffusion 的作用是直接建模:

p(trajectory1:T∣scene,map,agents)p(trajectory_{1:T} \mid scene, map, agents)p(trajectory1:T∣scene,map,agents)

通过逐步去噪,自然生成多条可行轨迹,覆盖直行/变道、激进/保守、不同行为时序等多种模式。

世界模型场景:在闭环训练、仿真中,世界模型需要不确定性、多未来分支、连续时间 roll-out。Diffusion 的作用是生成未来 BEV/occupancy/agent states,建模:

p(st+1:t+K∣st,at)p(s_{t+1:t+K} \mid s_t, a_t)p(st+1:t+K∣st,at)

用于 policy training 和 corner case amplification(长尾场景扩增)。

3.2 diffusion落地面临的工程挑战

尽管Diffusion在建模多模态未来方面优势明显,但真正落地到自动驾驶系统中仍面临多重挑战。

挑战一:推理速度慢

Diffusion 本质是一个多步迭代生成过程:x_T → x_{T-1} → ... → x_0,典型情况下需要 20~100 步,每一步都要跑一次 U-Net/Transformer。这对实时系统(自动驾驶/机器人)几乎不可接受 ,延迟不可控。工程上常见的缓解方案包括 DDIMTruncated Diffusion 等加速采样策略。

挑战二:训练和推理成本极高

问题本质在于 U-Net 参数量大,高分辨率输入会带来显存和算力的爆炸式增长,直接影响是 ToB 场景的算力成本很难 cover

挑战三:难以稳定收敛 & 调参困难

Diffusion 训练看似 simple(MSE损失),但实际上 noise schedule 非常敏感,timestep embedding/loss weight 都会影响整体生成质量,一点小改动就可能导致 mode collapse 或 over-smoothing

挑战四:多模态 ≠ 可用多模态

Diffusion 擅长覆盖多个 mode,但落地中需要的是可排序、可筛选、可评估风险的多模态输出。问题在于:多个采样结果之间没有显式的概率/价值排序------不像 RL 有 value 函数,也不像 AR 有 likelihood ordering 可以直接比较优劣。

挑战五:控制难、条件对齐难

Diffusion 是隐式生成模型,条件本质上是一种 soft guidance(通过 cross-attention/CFG 实现),因此很难做到"精确控制输出"。

工程上常见的落地方案让diffusion只负责候选轨迹生成------先生成 N 条 trajectory,后面再接 rule-based/optimization/RL 进行筛选。这种"生成+筛选"的两阶段范式,既发挥了Diffusion在多模态覆盖上的优势,又用确定性的下游模块弥补了其"不可控、难排序"的短板,是目前较为务实的工程路线。

两篇参考文章:

DiffusionDrive: Truncated Diffusion Model for End-to-End Autonomous Driving

ResAD: Normalized Residual Trajectory Modeling for End-to-End Autonomous Driving

四、小结

从AR到Diffusion,本质上是自动驾驶轨迹/行为建模范式的一次转变:AR擅长保证时序一致性,但容易误差累积、难以表达多模态未来;Diffusion则通过"加噪-去噪"的迭代过程,天然具备覆盖多模态分布的能力,更契合"未来是一个分布"这一自动驾驶的核心命题。

但Diffusion并非万能:推理慢、训练成本高、调参敏感、输出难排序、条件控制弱,这些问题决定了它在当前阶段更适合作为候选生成器,与rule-based、optimization、RL等确定性/判别性模块协同工作,而非单独承担端到端决策的全部职责。未来随着加速采样(如DDIM、蒸馏类方法)和更强条件控制机制的发展,Diffusion有望在自动驾驶的世界模型与规划层中扮演更核心的角色。

参考:自动驾驶之心

相关推荐
合合技术团队1 小时前
合合信息携手中科软发布智能化方案,推动AI融入保险理赔、核保与风控多节点
大数据·人工智能·文档智能·数据智能
zyplayer-doc1 小时前
核心制度不该被随手修改:用zyplayer-doc锁定文档和全部子文档
大数据·数据库·人工智能·笔记·pdf·ocr
具身新纪元1 小时前
CVPR 2026|新缺陷不断上线,如何让工业视觉检测模型不忘旧账?
人工智能·深度学习·目标检测·机器学习·计算机视觉·目标跟踪·视觉检测
Raas1001 小时前
MAIGateway,魔芋企业级AI网关的FinAPI成本弹性设计
人工智能
constCpp1 小时前
AI 编程:追不完的工具,理得清的问题
人工智能·ai编程·ai-native
2401_865261631 小时前
亦唐科技(YIKTONG):驱动国产贴片机迈向智能化未来
大数据·人工智能
阿kun要赚马内1 小时前
工具在langchain agent中的调用
人工智能·后端·python
IT_陈寒1 小时前
Vite的HMR在我项目上突然失效,排查三天找到离谱原因
前端·人工智能·后端
牛马也想出海1 小时前
使用Playwright被检测为机器人的原因及反检测方案
开发语言·网络·人工智能·机器人·php