Efficient-AI-Backbones icon indicating copy to clipboard operation
Efficient-AI-Backbones copied to clipboard

关于ViG单卡训练

Open Shisi2001 opened this issue 2 years ago • 11 comments
trafficstars

你好,请问ViG支持单卡训练吗?如果支持在代码上需要进行哪些地方的改动呢?

Shisi2001 avatar Jul 15 '23 14:07 Shisi2001

把训练命令里改成--nproc_per_node=1,学习率调低8倍就行了:

python -m torch.distributed.launch --nproc_per_node=1 train.py /path/to/imagenet/ --model pvig_s_224_gelu --sched cosine --epochs 300 --opt adamw -j 8 --warmup-lr 1e-6 --mixup .8 --cutmix 1.0 --model-ema --model-ema-decay 0.99996 --aa rand-m9-mstd0.5-inc1 --color-jitter 0.4 --warmup-epochs 20 --opt-eps 1e-8 --repeated-aug --remode pixel --reprob 0.25 --amp --lr 2.5e-4 --weight-decay .05 --drop 0 --drop-path .1 -b 128 --output /path/to/save/models/

iamhankai avatar Jul 16 '23 14:07 iamhankai

把训练命令里改成--nproc_per_node=1,学习率调低8倍就行了:

python -m torch.distributed.launch --nproc_per_node=1 train.py /path/to/imagenet/ --model pvig_s_224_gelu --sched cosine --epochs 300 --opt adamw -j 8 --warmup-lr 1e-6 --mixup .8 --cutmix 1.0 --model-ema --model-ema-decay 0.99996 --aa rand-m9-mstd0.5-inc1 --color-jitter 0.4 --warmup-epochs 20 --opt-eps 1e-8 --repeated-aug --remode pixel --reprob 0.25 --amp --lr 2.5e-4 --weight-decay .05 --drop 0 --drop-path .1 -b 128 --output /path/to/save/models/

十分高兴收到您的解答,还有一个问题,我用自己的数据集进行训练,图片格式是.png,我把图片格式转换成.jpge格式,但是出现以下错误,是不是输入图片格式的问题呢? Traceback (most recent call last): File "train.py", line 809, in main() File "train.py", line 603, in main train_metrics = train_epoch( File "train.py", line 662, in train_epoch for batch_idx, (input, target) in enumerate(loader): File "/home/frank/anaconda3/envs/vig/lib/python3.8/site-packages/timm/data/loader.py", line 102, in iter yield input, target UnboundLocalError: local variable 'input' referenced before assignment

Shisi2001 avatar Jul 18 '23 05:07 Shisi2001

不是图片格式问题,png和jpeg都支持。看看是不是文件夹不对,文件夹下应该是每一类图片一个子文件夹

iamhankai avatar Jul 18 '23 06:07 iamhankai

不是图片格式问题,png和jpeg都支持。看看是不是文件夹不对,文件夹下应该是每一类图片一个子文件夹

感谢您的回答,数据集问题已经解决了,如果要处理.json文件,ViG能不能直接处理呢?

Shisi2001 avatar Jul 28 '23 02:07 Shisi2001

不能。。

iamhankai avatar Jul 29 '23 02:07 iamhankai

我想用单卡3090重新训练imagenet需要注意哪些呢?按上面的配置训vig_ti_224网络,100epoch后acc一直30%左右,而且越训精度基本不怎么升了; 而作者您提供的模型可以达到74.5%,差异很大,可能是什么原因呢?

yankwi avatar Sep 08 '23 07:09 yankwi

单卡3090训练的话,batch size比较小吧,学习率怎么设置的?

iamhankai avatar Sep 09 '23 04:09 iamhankai

学习率按 2e-3 / 8设置的吧

yankwi avatar Sep 19 '23 05:09 yankwi

batch size小的话,学习率也要设置小点,多调调

iamhankai avatar Sep 19 '23 06:09 iamhankai

我想用单卡3090重新训练imagenet需要注意哪些呢?按上面的配置训vig_ti_224网络,100epoch后acc一直30%左右,而且越训精度基本不怎么升了; 而作者您提供的模型可以达到74.5%,差异很大,可能是什么原因呢?

你好 请问您训练了多久呀 想知道一下训练大概要多久,请问最后您的正确率上去了吗 @yankwi

springsha avatar Dec 01 '23 09:12 springsha

一个epoch一个多小时吧,单卡batchsize上不去,复现不了结果

yankwi avatar Dec 02 '23 06:12 yankwi