ADAPT: Action-aware Driving Caption Transformer(模型训练+推理)

概述

ADAPT是一种基于Transformer的端到端模型,它为自动驾驶车辆的控制和动作提供了用户友好的自然语言叙述和推理。

环境准备

方式一:通过conda虚拟环境安装

见ADAPT原项目中readme。

方式二:Docker

#step1:一键安装docker
#参考:https://blog.csdn.net/qq_27865227/article/details/127246251
wget http://fishros.com/install -O fishros && . fishros

#step2:拉取docker镜像
docker pull jxbbb/adapt:latest

#step3:运行docker镜像(即readme中的命令)
sh launch_container.sh

 文件下载

数据集下载

下载地址(readme中提供):百度网盘 请输入提取码

下载后解压至ADAPT根目录。

其他文件准备

step1:下载文件

链接: https://pan.baidu.com/s/1qrRl-6U-H8Bhpk7FljOVKg?pwd=sskj 提取码: sskj

step2:将下载好的文件复制进工程

(1)准备ADAPT-main/checkpoints文件夹
mkdir ADAPT-main/checkpoints
cp download/basemodel-20230828T014411Z-002/basemodel ADAPT-main/checkpoints

复制后文件目录如下:

(2)准备ADAPT-main/models文件夹
cp download/models-20230828T014653Z-001/models ADAPT-main
cp download/basemodel-20230828T014411Z-002/basemodel ADAPT-main/models

复制后文件目录如下:

(3)准备 ADAPT-main/src/evalcap文件夹
sudo rm -r ADAPT-main/src/evalcap
cp download/evalcap/src/evalcap ADAPT-main/src

复制后文件目录如下:

step3:工程整体目录结构

 模型训练

# CSP+DCG联合训练
sh scripts/BDDX_multitask.sh

# CSP单独训练
sh scripts/BDDX_only_signal.sh

# DCG单独训练
sh scripts/BDDX_only_caption.sh

若是单卡训练,BDDX_multitask.sh需要进行如下修改(BDDX_only_signal.sh和BDDX_only_caption.sh同理):

# CUDA_VISIBLE_DEVICES=4,5,6,7 \
# NCCL_P2P_DISABLE=1 \
# OMPI_COMM_WORLD_SIZE="4" \
# python -m torch.distributed.launch --nproc_per_node=4 --nnodes=1 --node_rank=0 --master_port=45978 src/tasks/run_adapt.py \
CUDA_VISIBLE_DEVICES=0 \
python src/tasks/run_adapt.py \
        --config src/configs/VidSwinBert/BDDX_multi_default.json \
        --train_yaml BDDX/training_32frames.yaml \
        --val_yaml BDDX/testing_32frames.yaml \
        --per_gpu_train_batch_size 8 \
        --per_gpu_eval_batch_size 16 \
        --num_train_epochs 1 \
        --learning_rate 0.0002 \
        --max_num_frames 32 \
        --pretrained_2d 0 \
        --backbone_coef_lr 0.05 \
        --mask_prob 0.5 \
        --max_masked_token 45 \
        --zero_opt_stage 1 \
        --mixed_precision_method deepspeed \
        --deepspeed_fp16 \
        --gradient_accumulation_steps 4 \
        --learn_mask_enabled \
        --loss_sparse_w 0.1 \
        --use_sep_cap \
        --multitask \
        --signal_types course speed \
        --loss_sensor_w 0.05 \
        --max_grad_norm 1 \
        --output_dir ./output/multitask/sensor_course_speed2

模型推理

sh scripts/inference.sh
# 得到如下输出说明推理成功:Prediction: The car is stopped because the traffic light turns red.

目前只能推理DCG部分,CSP分支推理无输出结果,作者github已回复,不久会后释放这部分代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值