训练

来自Waveshare Wiki
跳转至: 导航搜索
RoArm-M3
{{{name2}}}
{{{name3}}}
功能简介
特性 RoArm-M3-AI-Kit 机械臂
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
接口 UART

LeRobot 教程目录

7. 训练

  • 注意:以下操作均在容器内执行
  • 注意:需要进入到 lerobot 目录下执行以下代码

7.1 参数说明

可根据实际需求适当调整以下参数

--policy.type:使用什么模型进行训练,基础先使用act。
--local_files_only: 是否使用本地数据进行训练,默认是true,代表使用。
--wandb.enable:是否启用 wandb 平台,上传训练日志,默认是false,代表不使用。
--resume: 是否恢复训练,true,代表使用。
--config_path: 如果恢复训练则需要提供训练参数文件的地址,如 "/home/ws/lerobot/outputs/train/act_roarm_m3_test/checkpoints/last/pretrained_model/train_config.json"

如果你通过 --control.push_to_hub=true 将数据集上传到了 Hugging Face Hub,可以通过在线拉取你的数据集在别的设备上进行训练。

7.2 训练数据集准备

7.2.1 压缩

如果未上传数据到 hub 上,需要打包数据集用于后续的训练,数据集的保存位置,以"/root/.cache/huggingface/lerobot"为例:

tar czvf roarm_m3_datasets.tar.gz /root/.cache/huggingface/lerobot

接着,选中文件,下载到本地。

Lerobot-datasets-download.png

7.2.2 解压

选中文件,上传到训练环境的 root 目录。

Lerobot-datasets-upload.png

将打包后的数据集放置到进行训练的容器内,进入到根目录,解压到"/root/.cache/huggingface/lerobot":

cd /root/../ && tar xzvf /root/roarm_m3_datasets.tar.gz

7.3 Windows 系统本地 GPU 训练

  • 注意:Windows 系统本地 GPU 需要是英伟达。

7.3.1 训练环境搭建

在 Windows 系统上,使用docker desktop,使用我们配置好 LeRobot 环境的 Ubuntu 22.04 镜像RoArm-M3-AI-Kit-GPU-x86_64,无需自行再进行环境的安装配置。

docker load -i RoArm-M3-AI-Kit-GPU-x86_64.tar

使用镜像,创建容器,其中"--shm-size=4g",可根据系统上的空闲 GPU 容量进行分配。

docker run --gpus all -it   -p 2200:22   -p 9090:9090  --shm-size=4g  --ulimit memlock=-1  --ulimit stack=67108864  --env NVIDIA_DRIVER_CAPABILITIES=all   -w /home/ws/lerobot   --name lerobot  dudulrx0601/lerobot_gpu

接着,进入到容器后,开启远程登陆。

service ssh start

使用 MobaXterm 远程登陆到本地的容器内。

Lerobot-remote-connect-localhost.png

进入到 lerobot 目录。

cd /home/ws/lerobot

如果之前没有选择上传数据集,可以在浏览器中打开 http://127.0.0.1:9090 在本地可视化数据集,确认是否是需要进行训练的数据集:

python lerobot/scripts/visualize_dataset_html.py \
  --repo-id ${HF_USER}/roarm_m3_test \
  --host 0.0.0.0

7.3.2 训练

使用英伟达 GPU 进行本地数据集的训练:

python lerobot/scripts/train.py \
  --dataset.repo_id=${HF_USER}/roarm_m3_test \
  --policy.type=act \
  --output_dir=outputs/train/act_roarm_m3_test \
  --job_name=act_roarm_m3_test \
  --local_files_only=true\
  --wandb.enable=false

7.4 Jetson Orin 系统本地 GPU 训练

在 Ubuntu 系统上,使用我们配置好 LeRobot 环境的 Ubuntu 22.04 镜像[RoArm-M3-AI-Kit-GPU-arm64],无需自行再进行环境的安装配置。

使用 Jetson Orin GPU 进行本地数据集的训练:

python lerobot/scripts/train.py \
  --dataset.repo_id=${HF_USER}/roarm_m3_test \
  --policy.type=act \
  --output_dir=outputs/train/act_roarm_m3_test \
  --job_name=act_roarm_m3_test \
  --local_files_only=true\
  --wandb.enable=false

7.5 云平台 GPU 训练

  • 以下使用 AutoDL 平台,使用上传过去的本地数据集进行训练。

7.5.1 训练环境搭建

首先,注册 AutoDL 平台账号并登录。

Lerobot-datasets-train-gpu-online.png Lerobot-datasets-train-gpu-online-1.png

接着,根据创建实例,建议镜像使用"PyTorch/ 2.5.1/3.12(ubuntu22.04)/ 12.4" 推荐的完整具体参数如下所示。

Lerobot-datasets-train-gpu-online-2.png Lerobot-datasets-train-gpu-online-3.png

创建完实例后,将实例开机,复制登录指令和密码,使用 MobaXterm 进行远程登陆。

登录指令格式解释:

ssh -p port user@ip

远程登陆到服务器后,下载 LeRobot 项目。

git clone https://github.com/DUDULRX/lerobot.git

进入 lerobot 目录,安装依赖项(此步需要等待一段时间)。

cd lerobot && pip install -e ".[roarm]"

7.5.2 训练

使用上传过去的本地数据集进行训练:

python lerobot/scripts/train.py \
  --dataset.repo_id=${HF_USER}/roarm_m3_test \
  --policy.type=act \
  --output_dir=outputs/train/act_roarm_m3_test \
  --job_name=act_roarm_m3_test \
  --local_files_only=true\
  --wandb.enable=false