IDEA-Research / GroundingDINO

[ECCV 2024] Official implementation of the paper "Grounding DINO: Marrying DINO with Grounded Pre-Training for Open-Set Object Detection"
https://arxiv.org/abs/2303.05499
Apache License 2.0
6.9k stars 698 forks source link

batch size = 32, total or average? #198

Closed CarpeDiemly closed 1 year ago

CarpeDiemly commented 1 year ago

我对您的这篇工作非常感兴趣,最近打算做一个其他任务的迁移,想先做一个资源评估。实验章节提到,在训练tiny模型时,使用了16张V100显卡,batch size = 32。我想请教一下,这个32是指每张显卡上的batch size为32,还是指所有的16个显卡上的图片加在一起为32(也就是每张显卡上的图片数量为2)?

rentainhe commented 1 year ago

我对您的这篇工作非常感兴趣,最近打算做一个其他任务的迁移,想先做一个资源评估。实验章节提到,在训练tiny模型时,使用了16张V100显卡,batch size = 32。我想请教一下,这个32是指每张显卡上的batch size为32,还是指所有的16个显卡上的图片加在一起为32(也就是每张显卡上的图片数量为2)?

是每张卡上的batch-size为2,加起来的total batch size为32

CarpeDiemly commented 1 year ago

我对您的这篇工作非常感兴趣,最近打算做一个其他任务的迁移,想先做一个资源评估。实验章节提到,在训练tiny模型时,使用了16张V100显卡,batch size = 32。我想请教一下,这个32是指每张显卡上的batch size为32,还是指所有的16个显卡上的图片加在一起为32(也就是每张显卡上的图片数量为2)?

是每张卡上的batch-size为2,加起来的total batch size为32

哇哦,那显存占用也太大了吧,32G的显存只能跑两张图片

CarpeDiemly commented 1 year ago

我对您的这篇工作非常感兴趣,最近打算做一个其他任务的迁移,想先做一个资源评估。实验章节提到,在训练tiny模型时,使用了16张V100显卡,batch size = 32。我想请教一下,这个32是指每张显卡上的batch size为32,还是指所有的16个显卡上的图片加在一起为32(也就是每张显卡上的图片数量为2)?

是每张卡上的batch-size为2,加起来的total batch size为32

那请问能方便告知一下,tiny模型的训练图像分辨率是如何设置的呢?

rentainhe commented 1 year ago

我对您的这篇工作非常感兴趣,最近打算做一个其他任务的迁移,想先做一个资源评估。实验章节提到,在训练tiny模型时,使用了16张V100显卡,batch size = 32。我想请教一下,这个32是指每张显卡上的batch size为32,还是指所有的16个显卡上的图片加在一起为32(也就是每张显卡上的图片数量为2)?

是每张卡上的batch-size为2,加起来的total batch size为32

那请问能方便告知一下,tiny模型的训练图像分辨率是如何设置的呢?

可以参考DINO或者DETR的输入图像的分辨率设置,是multi-scale training的方式,显存占用其实不会很大,只是用了默认的batch-size(DETR系列的batch-size基本上都是单卡下为2)

CarpeDiemly commented 1 year ago

我对您的这篇工作非常感兴趣,最近打算做一个其他任务的迁移,想先做一个资源评估。实验章节提到,在训练tiny模型时,使用了16张V100显卡,batch size = 32。我想请教一下,这个32是指每张显卡上的batch size为32,还是指所有的16个显卡上的图片加在一起为32(也就是每张显卡上的图片数量为2)?

是每张卡上的batch-size为2,加起来的total batch size为32

那请问能方便告知一下,tiny模型的训练图像分辨率是如何设置的呢?

可以参考DINO或者DETR的输入图像的分辨率设置,是multi-scale training的方式,显存占用其实不会很大,只是用了默认的batch-size(DETR系列的batch-size基本上都是单卡下为2) 明白了明白了,非常感谢您的回复!

rentainhe commented 1 year ago

不客气,有需要帮助的话可以随时提issue

EddieEduardo commented 10 months ago

我设置的是batch_size=2,用的8张24G的3090跑的。2应该是上限(swin-b),并且每一个epoch下有321个iteration,结合我训练的数据应该是单张卡的batch_size=2。