Comments (13)
Try using larger crop size, for example 768.
It gives CUDA out of memory.
@bb846 Thanks, for sharing the number of workers link. I also found the ImageNet pre-trained weights being loaded. But still can't reproduce the result. I think the issue is that BatchNorm is not synced in this repository and I'll have to use DistributedDataParallel to use the Pytorch SyncBatchNorm: https://pytorch.org/docs/master/generated/torch.nn.SyncBatchNorm.html#torch.nn.SyncBatchNorm.
So could you please share if you were able to reproduce the 77% result or get >75%; the exact command (or hyperparameters you used); and any other changes you made to this code? I think some of the hyperparameters like the learning rate are different from the original paper.
Yes, it requires large GPUs. Regarding of the result, I only get 75.8%. I used cropsize 768 and RandomScale with range [0.5, 2.0]. I also used DistributedDataParallel and SyncBatchNorm. The other hyperparameters are similar to this repo. Hope this help.
Best,
from deeplabv3plus-pytorch.
My hyper-parameters:
python main.py --model deeplabv3plus_mobilenet --enable_vis --vis_port 28333 --gpu_id 0 --year 2012_aug --crop_val --lr 0.01 --crop_size 513 --batch_size 16 --output_stride 16
Tip:
please use a larger batch size (>8 data points per GPU instance) in parallel training, otherwise, the BN statistics may be incorrect.
from deeplabv3plus-pytorch.
Thank you for your infos. I was using cropsize 768, batchsize 16 and inferring on the whole pictures. Now I am able to reach mIoU 70.4% for deeplabv3+_mobilenet.
from deeplabv3plus-pytorch.
Hello, I would like to know whether you started training from scratch without loading any weight and how many epochs you have trained
from deeplabv3plus-pytorch.
from deeplabv3plus-pytorch.
Hi, I'm having trouble reproducing the DeeplabV3 and DeeplabV3+ (ResNet101) results on Cityscapes. I'm using the following command:
python main.py --model deeplabv3plus_resnet101 --dataset cityscapes --gpu_id 0,1 --lr 0.1 --val_interval 300 --crop_size 513 --batch_size 16 --output_stride 16 --data_root path_to_cs
python main.py --model deeplabv3_resnet101 --dataset cityscapes --gpu_id 0,1 --lr 0.1 --val_interval 300 --crop_size 513 --batch_size 16 --output_stride 16 --data_root path_to_cs
Using 2 Nvidia 1080 Ti GPUs.
Getting 67.35% mIoU after 30k iterations on DeeplabV3 as compared to the 77.23% in the original paper.
Getting 72.1% mIoU after 30k iterations on DeeplabV3+ as compared to ~77% as reported in this repo.
I was confused about the correct learning rate and number of iterations. In the DeeplabV3 paper, they mention they use 0.007 as the initial learning rate and train for 90k training iterations for cityscapes. I saw 0.1 in the readme and 0.01 here. Can someone please confirm reproduceable hyperparameters for cityscapes?
@VainF Could I be doing something else wrong? Has anyone been able to reproduce the results? @bb846
from deeplabv3plus-pytorch.
Is the reported result on cityscapes after initialising from an ImageNet or COCO pretrained model? @VainF
from deeplabv3plus-pytorch.
Hi, I'm having trouble reproducing the DeeplabV3 and DeeplabV3+ (ResNet101) results on Cityscapes. I'm using the following command:
python main.py --model deeplabv3plus_resnet101 --dataset cityscapes --gpu_id 0,1 --lr 0.1 --val_interval 300 --crop_size 513 --batch_size 16 --output_stride 16 --data_root path_to_cs
python main.py --model deeplabv3_resnet101 --dataset cityscapes --gpu_id 0,1 --lr 0.1 --val_interval 300 --crop_size 513 --batch_size 16 --output_stride 16 --data_root path_to_cs
Using 2 Nvidia 1080 Ti GPUs.
Getting 67.35% mIoU after 30k iterations on DeeplabV3 as compared to the 77.23% in the original paper. Getting 72.1% mIoU after 30k iterations on DeeplabV3+ as compared to ~77% as reported in this repo.
I was confused about the correct learning rate and number of iterations. In the DeeplabV3 paper, they mention they use 0.007 as the initial learning rate and train for 90k training iterations for cityscapes. I saw 0.1 in the readme and 0.01 here. Can someone please confirm reproduceable hyperparameters for cityscapes?
@VainF Could I be doing something else wrong? Has anyone been able to reproduce the results? @bb846
Try using larger crop size, for example 768.
from deeplabv3plus-pytorch.
Is the reported result on cityscapes after initialising from an ImageNet or COCO pretrained model? @VainF
I think yes. From the following codes, you can see the ResNet backbone is loading weights pretrained on ImageNet.
DeepLabV3Plus-Pytorch/network/backbone/resnet.py
Lines 216 to 222 in c8cc7b2
DeepLabV3Plus-Pytorch/network/backbone/resnet.py
Lines 14 to 24 in c8cc7b2
from deeplabv3plus-pytorch.
Should we continue to use the same number of workers (default=2 in main.py) when using multiple GPUs? Does using number_of_workers = 4*Number_of_GPUs help?
By the way, you seemed to mention the number of workers. I think this parameter will only affect the speed of data loading and has nothing to do with the model performance. For reference, you may read the following links:
https://discuss.pytorch.org/t/guidelines-for-assigning-num-workers-to-dataloader/813
from deeplabv3plus-pytorch.
Try using larger crop size, for example 768.
It gives CUDA out of memory.
@bb846 Thanks, for sharing the number of workers link. I also found the ImageNet pre-trained weights being loaded. But still can't reproduce the result. I think the issue is that BatchNorm is not synced in this repository and I'll have to use DistributedDataParallel to use the Pytorch SyncBatchNorm: https://pytorch.org/docs/master/generated/torch.nn.SyncBatchNorm.html#torch.nn.SyncBatchNorm.
So could you please share if you were able to reproduce the 77% result or get >75%; the exact command (or hyperparameters you used); and any other changes you made to this code? I think some of the hyperparameters like the learning rate are different from the original paper.
from deeplabv3plus-pytorch.
@bb846 are you able to share the command you used to run the training?
from deeplabv3plus-pytorch.
Try using larger crop size, for example 768.
It gives CUDA out of memory.
@bb846 Thanks, for sharing the number of workers link. I also found the ImageNet pre-trained weights being loaded. But still can't reproduce the result. I think the issue is that BatchNorm is not synced in this repository and I'll have to use DistributedDataParallel to use the Pytorch SyncBatchNorm: https://pytorch.org/docs/master/generated/torch.nn.SyncBatchNorm.html#torch.nn.SyncBatchNorm.
So could you please share if you were able to reproduce the 77% result or get >75%; the exact command (or hyperparameters you used); and any other changes you made to this code? I think some of the hyperparameters like the learning rate are different from the original paper.
Hello, I am wonder if you got >75%. Because my result is around 63~64%.
from deeplabv3plus-pytorch.
Related Issues (20)
- video
- Some advice on GPU choice?
- I have three categories, but my class IOU only has two
- New additional classes not training HOT 3
- RuntimeError: The size of tensor a (125) must match the size of tensor b (126) at non-singleton dimension 3
- The size of tensor a (125) must match the size of tensor b (126) at non-singleton dimension 3' will appear during the validation phase HOT 1
- When I use a model with plus, the following error always occurs
- how can I write the argument ("--input") in predict.py
- distributed training error
- ONLY TRIANED ON A SUNGLE GPU
- How to run train.py
- about dice loss
- How to use this model on iOS?
- Issue with Multi-GPU Training/Predicting using --gpu_id
- Visualization of training results
- Wrong File Name in best_deeplabv3plus_resnet101_cityscapes_os16 HOT 3
- predict
- MobileNetV2 Width_mult
- hrnet_48 pretrain model
- How To Test On Cityscapes
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from deeplabv3plus-pytorch.