首页 > 其他分享 >简单讲讲 mobile aloha 代码---训练阶段的encoder

简单讲讲 mobile aloha 代码---训练阶段的encoder

时间:2024-11-30 10:32:46浏览次数:5  
标签:Tensor qpos mobile aloha encoder embed 512 cls

简单讲讲 mobile aloha 代码---训练阶段的encoder

图片来源于 mobile aloha 论文;

 

训练和推理的核心的代码是这两个文件:

detr/models/detr_vae.py

detr/models/transformer.py

参见论文(https://arxiv.org/pdf/2304.13705)的第6页"C. Implementing ACT"和第14页 "C. Detailed Architecture Diagram";

本文主要讲训练时推理隐变量z(latent z):

图片来源于mobile aloha 论文

 

代码是: 

action_embed = self.encoder_action_proj(actions) # (bs, seq, hidden_dim)

actions是机械臂的操作, 形状是{Tensor: (8, 100, 16)}, 8是batch size, 100是sequence, 表示100帧对应的100个action, 16表示2个机械臂每个关节的动作;

每个action都会被嵌入到512维空间上, 转换为action_embed{Tensor: (8, 100, 512)};

 

qpos_embed = self.encoder_joint_proj(qpos) # (bs, hidden_dim)

qpos是机械臂在空间的绝对位置, 形状是{Tensor: (8, 14)}, 8是batch size, 14是14个关节的位置;

qpos会嵌入到512维空间, 转换为qpos_embed {Tensor: (8, 1, 512)}

 

cls_embed = self.cls_embed.weight # (1, hidden_dim)

cls_embed是512维空间的一个随机的点 {Tensor: (8, 1, 512)}

 

下面的语句会将cls_embed, qpos_embed, action_embed连接起来, cls_embed放在最开始的位置

encoder_input = torch.cat([cls_embed, qpos_embed, action_embed], axis=1)

连接之后的encoder_input是  {Tensor: (102, 8, 512)}, 之后encoder_input会通过Transformer神经网络, 计算注意力(Attention);

 

讲讲cls_embed这参数;

cls_embed

cls_embed的形状是{Tensor: (8, 1, 512)}, 8表示批次(batch size), 512表示维度, cls_embed是一个向量, 是512维空间上的一个点;

cls的灵感来源于自然语言处理(NLP)中的BERT模型, 在BERT中cls是一个句子的起始向量, 参与注意力计算, 与句子中每个词产生注意力关系; 

举个例子:

在BERT模型中, 分别在句子的开头加cls, 结尾加seq:

[CLS] The cat sat on the mat [SEP]

这个句子的每个词(token), 包括cls和seq, 在768维空间随机分布; 然后进行注意力计算, 重新在高维空间分布, 产生注意力;

mobile aloha参考了BERT, 训练时取前100个帧和动作组成一个sequence, 在最前面加上cls, 让cls一起参与100帧的注意力运算, 产生注意力;

 

回到代码, 

用Transformer神经网络计算注意力

encoder_output = self.encoder(encoder_input, pos=pos_embed, src_key_padding_mask=is_pad)

获取更新注意力之后的cls

encoder_output = encoder_output[0] # take cls output only

cls是512维空间上的一个点, 或者叫CAVE神经网络中的隐变量z(latent z);

再借用一下开头的图, z是右上角那个红色的东西

今天就写到这里, 未完待续

 

标签:Tensor,qpos,mobile,aloha,encoder,embed,512,cls
From: https://www.cnblogs.com/lijingshanxi/p/18574132

相关文章

  • 智能佳科技—3台Aloha机械臂同发交付, 协同作战新纪元!
    视频链接:https://mp.weixin.qq.com/s/JA3iaVqerm4owFYAkrYy8g 近日,北京智能佳科技有限公司顺利完成三台MobileAloha机械臂的共同发货交付使用任务,再次展现了公司在机器人技术领域的深厚积累和卓越实力。自2006年8月成立以来,智能佳科技始终秉持着务实创新的精神,连续四次荣获......
  • 论文笔记:CodeT5: Identifier-aware Unified Pre-trained Encoder-Decoder Models
    CodeT5:Identifier-awareUnifiedPre-trainedEncoder-DecoderModelsforCodeUnderstandingandGeneration摘要最近,BERT和GPT等自然语言(NL)的预训练模型已被证明可以很好地转移到编程语言(PL),并在很大程度上使一系列与代码相关的任务受益。尽管取得了成功,但大多数当前的......
  • Python 自编码器(Autoencoder)算法详解与应用案例
    目录Python自编码器(Autoencoder)算法详解与应用案例引言一、自编码器的基本原理1.1自编码器的结构1.2自编码器的类型二、Python中自编码器的面向对象实现2.1`Autoencoder`类的实现2.2`Trainer`类的实现2.3`DataLoader`类的实现三、案例分析3.1手写数字去噪自......
  • 【Adobe】Adobe Media Encoder(ME)视频和音频媒体文件的编码和导出下载安装
    目录一、AdobeMediaEncoder发展历史1.1起源与早期发展1.2独立软件的形成1.3广泛应用与持续创新二、AdobeMediaEncoder功能介绍2.1高效编码与导出2.2自定义输出设置2.3强大的媒体处理能力三、AdobeMediaEncoder系统要求3.1操作系统要求3.2硬件要求......
  • 下载安装使用 Adobe Media Encoder (ME)专业视频编码软件
    目录一、软件简介1.1软件概述1.2功能特色1.3新功能亮点二、下载三、安装ME3.1解压安装包3.2运行安装程序3.3完成安装3.4自定义工作空间3.5导入视频与设置输出3.6开始编码一、软件简介1.1软件概述AdobeMediaEncoder(简称ME)是Adobe公司推出的一款......
  • 中国海洋大学24秋《软件工程原理与实践》 实验4:MobileNet & ShuffleNet
    代码练习1.下载IndianPines数据集!wgethttp://www.ehu.eus/ccwintco/uploads/6/67/Indian_pines_corrected.mat!wgethttp://www.ehu.eus/ccwintco/uploads/c/c4/Indian_pines_gt.matIndianPines是一个标准的高光谱数据集,广泛用于分类任务的研究。2.导入......
  • VITS-Conditional Variational Autoencoder with Adversarial Learning for End-to-E
    论文原文:具有对抗性学习的条件变分自动编码器用于端到端文本到语音的转换github:论文源码摘要最近提出了几种支持单阶段训练和并行采样的端到端文本转语音(TTS)模型,但它们的样本质量与两阶段TTS系统不匹配。在这项工作中,我们提出了一种并行端到端TTS方法,该方法可生成比当......
  • Mobile net V系列详解 理论+实战(3)
    Mobilenet系列论文精讲部分0.摘要1.引文2.引文3.基础概念的讨论3.1深度可分离卷积3.2线性瓶颈3.3个人理解4.模型架构细节5.实验细节6.实验讨论7.总结论文精讲部分鉴于上一小节中采用的代码是V2的模型,因此本章节现对V2模型论文讲解,便于读者能够更好的使......
  • 一组.NET MAUI绘制的开源控件 - AlohaKit
    前言今天大姚给大家分享一组.NETMAUI绘制的开源、免费(MITLicense)UI控件库:AlohaKit。MAUI介绍.NETMAUI是一个开源、免费(MITLicense)的跨平台框架(支持Android、iOS、macOS和Windows多平台运行),是Xamarin.Forms的进化版,从移动场景扩展到了桌面场景,并从头重新生成了UI控件,以提......
  • 论文解读《MobileCLIP: Fast Image-Text Models through Multi-Modal Reinforced Trai
    系列文章目录文章目录系列文章目录论文细节理解1、研究背景2、论文贡献3、方法框架4、研究思路5、实验6、限制论文细节理解Ensembleteacher.在深度学习领域,什么意思?在深度学习领域,“ensembleteacher”通常指的是一种模型集成的方法,其中多个模型(教师模型)共同训......