🤖 重卡泊车 · 闭环 Transformer (V4.6)

Decoder-only Transformer · 808K 参数 · 80步闭环推理 · 39.4K 轨迹从头训练

← 返回主页V4.4 集成+护盾V4.2 单次NN推理V3 障碍物感知

从头训练 Decoder-only Transformer · 纯模型零碰撞

0.281m
pos_err
1.40°
θ₁误差
99%
零碰撞
808K
参数

📊 V4.6 vs V4.4 性能对比

位置误差
V4.6 0.281m
 
V4.4 0.25m
θ₁ 误差
V4.6 1.40°
 
V4.4 1.0°
零碰撞率
V4.6 99%
 
V4.4 100%(含安全层)
速度 0.3×
精确输入: X Y θ₁ θ₂

障碍物列表(最多5个)

θ₁ 误差
-
θ₂ 误差
-
铰接角 β
-
推理时间
-
碰撞数
-
位置误差
-
换挡次数
-
模型参数
808K
💡 拖拽卡车设置起点 · 点击「编辑障碍物」调整布局 · 点击「开始泊车」启动推理

⚙️ 工作原理

① 闭环自回归推理:单步预测(δ,v)→RK4积分→新状态反馈给模型→下一步预测。80步循环,模型每步看到真实位置主动纠偏。

② 无安全层:纯模型推理,不做推理时碰撞干预。零碰撞率99%来自训练质量

Pipeline: for t in 0..79: (δₜ, vₜ) = Transformer(stateₜ, goal, obstacles, history_K=10) stateₜ₊₁ = RK4(stateₜ, δₜ, vₜ) ← 物理积分 无安全层 · 纯模型推理 · 零碰撞来自训练 Model: Decoder-only Transformer, 808,130 parameters Training: 39.4K trajectories, 100 epochs from scratch

📈 训练曲线

🏆 训练历史(每10轮评估)

EpochLosspos_errmedianp90θ₁碰撞tf
100.0601.4621.2262.7927.48°92%1.00
200.0520.9290.7092.0374.23°99%1.00
300.0481.9051.3604.1246.45°99%1.00
400.0431.9421.7013.9016.55°99%1.00
500.0381.5471.5152.3123.99°99%1.00
600.0340.4760.4520.7171.52°99%0.87
700.0310.2850.2410.5041.07°99%0.73
800.0270.2960.2050.4511.04°99%0.59
900.0250.2910.2290.4401.23°99%0.45
1000.0250.2810.1180.4131.40°99%0.31
⚠️ Ep30-50 波动:Epoch 30-50 期间 pos_err 出现明显波动(0.9→1.9→1.5),这是 Transformer 自回归推理在 teacher-forcing 过渡期的典型行为。随着 Scheduled Sampling 逐步降低 teacher-forcing ratio(1.0→0.87@ep60),模型开始适应自身预测误差,性能从 ep60 起急剧收敛。

闭环 Transformer · 技术架构详解

V4.6 是一个从零训练的 Decoder-only Transformer,仅 808K 参数,在 39.4K 轨迹上训练 100 轮。无需安全层、无需集成——99% 零碰撞率完全来自模型自身的闭环自回归推理能力。

1. 模型架构

Decoder-only Transformer Encoder (pre-LayerNorm) d_model = 128 nhead = 4 layers = 4 ffn = 512 sliding window K = 10 (历史观测) Input per frame (39D): state(4) → [x, y, θ₁, θ₂] goal(4) → [gx, gy, gθ₁, gθ₂] obstacles_flat(25)→ 5 obstacles × (cx, cy, w, h, th) obstacles_mask(5) → validity mask per obstacle step_norm(1) → t / N (current step normalized) Output: policy_head → tanh → scale → [δ_steering, v_speed] Total parameters: 808,130

2. 闭环自回归推理

for t in 0..79: obs_t = build_obs(state_t, goal, obstacles, t/N) history.append(obs_t); keep last K=10 frames (δ_t, v_t) = Transformer(history) # 看真实位置 state_{t+1} = RK4(state_t, δ_t, v_t) # 物理积分 关键:模型每步看到的是真实积分后的状态, 而非自己的预测——这使得模型能主动纠偏。 推理: 80次前向传播,无碰撞干预。

3. 训练数据与超参数

项目数值
训练轨迹39,400 条
子片段(sub-segments)2,840,000
训练轮数100 epochs(从头训练)
Batch size2,048
学习率1e-3, cosine annealing
训练时间~41 小时 (CPU, 腾讯云)
最终 Loss0.025

4. 三大关键改进(相比 V2)

① θ₂ 可微前推(λ=0.5):通过可微前向仿真注入 θ₂ 角度误差。不同于仅惩罚最终状态误差,可微 rollout 将挂车角度误差沿轨迹传播,使模型学到更平滑的铰接控制。

② Scheduled Sampling:teacher-forcing ratio 从 1.0 线性衰减至 0.31(epoch 50-100)。前半段用真实轨迹训练(稳定收敛),后半段逐步过渡到模型自身预测(缩小 train-test gap)。这是 V4.6 从 ep60 起性能急剧提升的核心原因。

③ 完整余弦调度:完整的 0→100 epoch 余弦学习率循环,确保训练后期能充分收敛到 sharp minima。学习率从 1e-3 平滑衰减至 0,后期极低的学习率让模型在最优解附近精细调优。

5. V4.6 vs V4.4 对比

指标V4.4 旗舰V4.6
架构6×Transformer 集成 (807K×6)单 Transformer 808K
推理策略6模型并行 + Safety Shield纯模型闭环自回归
安全层有(逐步碰撞干预)
训练数据8,292 轨迹39,400 轨迹
训练轮数各模型 200-500 epoch100 epoch 从头训练
位置误差 (mean)0.25m0.281m
位置误差 (median)0.118m
θ₁ 误差1.0°1.40°
零碰撞率100%(含安全层)99%(纯模型)
严格成功率75%
推理时间1-2s(6模型串行)~0.2s(单模型)
参数总量~4.8M (6模型)808K (1模型)
设计哲学差异:V4.4 追求极限安全——6 模型集成 + 安全层兜底,代价是推理慢(1-2s)且系统复杂。V4.6 追求极简高效——单模型 0.2s 推理,无任何安全层,99% 零碰撞完全来自训练质量。两者代表不同的工程权衡:V4.4 适合安全关键部署,V4.6 适合实时性要求高的场景。