首页 / 资讯中心 / 文章详情

Flow Matching 生成动作时,训练中的直线为何不等于机器人的执行轨迹

Flow Matching 生成动作时,训练中的直线为何不等于机器人的执行轨迹 ★ FEATURED ARTICLE
把噪声与目标动作之间画一条直线就能让机械臂沿着安全路线抓取吗不能。训练分布中的插值、生成模型求解的流以及真实空间中的运动路径属于三个不同对象。Flow Matching 的原始论文讨论通过回归条件概率路径的向量场训练连续生成模型。对最简单的线性插值 x_t(1−t)x_0t x_1样本配对对应的目标速度是 x_1−x_0。但模型实际学习的是给定 x_t、t 及条件后的速度预测不是每次都预先知道目标 x_1。下面只演示一维积分先用已知常速度检查 Euler 更新再用随状态变化的速度观察离散误差。这里没有训练神经网络也没有生成机器人动作。import math def euler(field, x0, steps): if not isinstance(steps, int) or steps 0: raise ValueError(positive step count required) x float(x0) dt 1.0 / steps for i in range(steps): x dt * field(x, i * dt) return x start, target -1.0, 3.0 constant lambda x, t: target - start assert math.isclose(euler(constant, start, 4), target) # dx/dtx, x(0)1 has the exact solution x(1)e. coarse euler(lambda x, t: x, 1, 4) fine euler(lambda x, t: x, 1, 100) assert abs(fine - math.e) abs(coarse - math.e) assert fine math.e print(constant endpoint, euler(constant, start, 4)) print(Euler error: coarse, abs(coarse-math.e), fine, abs(fine-math.e))常速度例子恰好能准确抵达终点不代表一般流场用四步就够。真实模型还会引入速度预测误差增加积分步数只能控制数值求解的一部分误差不能修复错误条件或训练数据缺口。如果输出是一段关节角序列平滑也不代表无碰撞。若输出是末端位姿还要经过逆运动学、关节约束和接触控制。10 月 8 日的 ARC 机器人推理论文强调将推理落到下一步动作及其因果后果这与“把文字计划直接当控制命令”有明显区别。测试动作生成器时生成质量、积分延迟、约束违反率与闭环任务完成率应分别测量。本文没有调用 VLA、GPU 或机器人代码的误差只属于所写的一维微分方程。训练图上的直线提供了一个便于学习的路径机器人是否安全执行还需要控制系统回答。
阅读完成 · 觉得有帮助?
咨询建站