Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

关于ViG单卡训练 #218

Open
Shisi2001 opened this issue Jul 15, 2023 · 11 comments
Open

关于ViG单卡训练 #218

Shisi2001 opened this issue Jul 15, 2023 · 11 comments

Comments

@Shisi2001
Copy link

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

@iamhankai
Copy link
Member

把训练命令里改成--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/

@Shisi2001
Copy link
Author

把训练命令里改成--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

@iamhankai
Copy link
Member

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

@Shisi2001
Copy link
Author

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

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

@iamhankai
Copy link
Member

不能。。

@yankwi
Copy link

yankwi commented Sep 8, 2023

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

@iamhankai
Copy link
Member

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

@yankwi
Copy link

yankwi commented Sep 19, 2023

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

@iamhankai
Copy link
Member

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

@springsha
Copy link

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

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

@yankwi
Copy link

yankwi commented Dec 2, 2023

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants