
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
因为 Observation 不只是决定最后的输出数值。它还可能影响网络在不同尺度下如何分析带噪动作。例如机器人当前距离目标较远,与已经接近目标时,网络可能需要学习不同的动作序列模式。因此在多个卷积特征处理阶段使用条件信息,可以让不同尺度的去噪特征都受到任务条件影响。这正是 Conditional U-Net 相较普通无条件 U-Net 的重要区别。还有一个容易误解的地方:Conditional
不一定。因为网络输出通常处于训练所使用的归一化 Action 空间。因此要先进行反归一化:之后还要按照机器人实际控制接口解释这些数值。例如一段 Action 可能表示:关节目标位置;末端位姿增量;某种标准化运动指令。它不是天然等于电机驱动器的电流或脉冲指令。所以实际执行链还需要控制器、运动学或相关控制接口,视 Action Representation 而定。Diffusion Policy 负责
原论文:Diffusion Policy: Visuomotor Policy Learning via Action Diffusion;。论文提出将机器人动作策略建模为条件去噪扩散过程,并结合视觉条件与滚动时域控制。前面 ACT 已经让我们理解:而 Diffusion Policy 仍然希望输出一段 Action Chunk。它改变的不是“最终要输出什么”,而是“动作序列怎样生成”。
经过第 1~19 课,我们已经从最简单的神经网络训练,逐步走到了第一个完整的机器人操作学习模型:对应论文为 Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware,作者包括 Tony Z. Zhao、Vikash Kumar、Sergey Levine 和 Chelsea Finn,发表于 2023 年。。这部分总结要回
假设:训练时两个样本,每个样本有 4 个未来 Action,每个 Action 是 14 维。CVAE Encoder 要读取专家 Action Chunk,并生成 \(z\)。
上一课我们正式进入 ACT,学习了 Action Chunking、CVAE、Latent Variable、Reparameterization Trick、KL Loss,以及训练和推理为什么采用不同的数据流。这一课的 10 道题全部围绕同一个问题:ACT 为什么不能只做普通的 Action 回归,而要增加一个学习动作序列潜在表示的分支?
在 ACT 中,我们希望潜变量的分布接近一个简单的标准正态分布:这里的 \(p(z)\) 叫 Prior,先验分布。可以理解成我们提前规定:希望潜变量大体处在一个标准化、可预测的分布空间中。而 Encoder 根据示范动作预测的是:它叫近似后验分布。训练时希望两者不要相差太远:于是引入:KL Divergence,KL 散度。它用于衡量两个概率分布之间的差异。它不是普通欧氏距离,而且通常不对称。
内容Query 来源DecoderDecoderKey 来源DecoderEncoderValue 来源DecoderEncoderKey Shape注意力分数 ShapeValue 加权结果是否使用目标端因果 Mask是通常否主要任务整合已有目标端信息获取源端上下文信息理解这张表,基本就不会再把两套 QKV 混淆。假设某个子层输入为 X,经过 Attention 得到:\[ F(X) \]如果直
因为各个 Head 的结果需要重新组成模型下一层使用的统一特征表示。例如:这样才能方便地接入残差连接、后续 FFN 和下一层 Transformer。现在 Decoder 已经输出:但机器人需要的是:所以接一个我们最熟悉的nn.Linear由于nn.Linear只改变最后一个特征维度:于是:这就是完整的预测 Action Chunk。所以非常关键的一点是:Decoder 本身通常输出的是 Acti
它们都表示 Token 位置,但扮演的角色不同。第一个:\[ 10 \]表示:10 个 Query Token。第二个:\[ 10 \]表示:每个 Query 都要比较的 10 个 Key Token。所以元素:表示:第 \(i\) 个 Query Token 和第 \(j\) 个 Key Token 的匹配程度。因为对于一个固定 Query,我们希望:它对所有 Key 的注意力权重加起来等于 1







