WALL 模型详解WALL (本项目)基本信息项目内容全称WALL Series Foundation Model机构开源项目架构Transformer + Flow Matching动作类型连续动作训练方式模仿学习 (Flow Matching)模型架构图输入图像(三视角) ├── faceImg (正面相机) ├── leftImg (左手腕相机) └── rightImg (右手腕相机) ↓ Qwen2.5-VL Encoder 图像Embedding文本指令 "把苹果夹起来" ↓ Text Encoder 文本Embedding ↓ 融合 多模态序列 ↓ Flow Matching Head 预测噪声/偏移 ↓ Beta 时间采样 时间步 t ↓ Euler ODE 求解 连续动作输出公式列表公式 1:动作归一化$$a_{norm} = \frac{a - a_{min}}{a_{max} - a_{min}} \times 2 - 1$$项目内容**输入**原始动作 $a \in \mathbb{R}$,动作范围 $[a_{min}, a_{max}]$**输出**归一化动作 $a_{norm} \in [-1, 1]$**作用**把不同范围的动作统一到 [-1, 1]场景:夹爪角度和末端位置范围不同夹爪角度: 0° ~ 90°末端位置: -1.0m ~ 1.0m夹爪当前 45°: 归一化 = (45 - 0) / (90 - 0) × 2 - 1 = 0末端当前 0.3m: 归一化 = (0.3 - (-1.0)) / (1.0 - (-1.0)) × 2 - 1 = 0.3为什么需要归一化?•夹爪范围:90°•末端位置范围:2m•不归一化,模型会认为末端更重要(数值更大)比喻:考试成绩标准化•语文 80 分,数学 75 分•不能直接比较(满分不同)•标准化到 [0, 100] 才能比较变化:之前: 夹爪=45°,末端=0.3m(单位不同,范围不同)之后: 夹爪=0.0,末端=0.3(都在[-1,1]范围)公式 2:Flow Matching 线性插值$$\text{noisy} = (1 - t) \cdot \epsilon + t \cdot a_{norm}$$项目内容**输入**噪声 $\epsilon \sim \mathcal{N}(0,1)$,时间步 $t \in [0,1]$,目标动作 $a_{norm}$**输出**插值后的含噪动作 $\text{noisy}$**作用**在噪声和动作之间线性混合参数含义:参数含义极端情况$t=0$纯粹噪声noisy = ε$t=1$纯粹动作noisy = a$t=0.5$50%噪声 + 50%动作