Code Monkey home page Code Monkey logo

da-sac's People

Contributors

arnike avatar sroth-visinf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

da-sac's Issues

freeze_bn

Hi, thanks for providing this great work!!

It seems that in the implementation of DeepLab with ResNet101, no matter freeze_bn is true or false it will call self._freeze_bn so the BN will be fixed. Should line 196 be commented out?

da-sac/models/deeplabv2.py

Lines 190 to 196 in b6f0a90

# fixing BN of the backbone
if freeze_bn:
print("DeepLabv2/ResNet-101: Fixing BN")
self._freeze_bn(self)
else:
print("DeepLabv2/ResNet-101: Training BN")
self._freeze_bn(self)

Thanks:)

Seek help for some little changes

Is there any little trick or possible improvement like loss function can be used on your code? It's my coursework this term to try to optimize some work just on task GTAV->Cityscapes and I find yours. I tried some other focal loss function but failed. Maybe your team have some other ideas or solutoins just for GTAV->.

How to test online

I am a beginner in deep learning, can the author tell me how to test it online? What data needs to be uploaded? Many thanks!

ABN

Thanks for your interesting work! Have you done experiments without ABN, i.e, training souce data with fixed BN and updating BN for the second stage?

Unexcepted performance drop on GTA5 to Cityscapes (resnet101).

Hi, @arnike. Thanks for your marvelous work.

When I tried to reproduce the task GTA5 to Cityscpaes, there is an unexcepted performance drop (e.g., Epoch 96: 31.4 mIoU, Epoch 98: 32.1 mIoU) and detailed results are run-.-tag-logits_up_all_mIoU.csv. So far, the best result is 42.9 mIoU (Epoch 182), which lags behind the reported result in the paper.

And the best result of ABN stage is

Epoch >>> 94 <<<
Averaging 19 classes:
IoU: 0.388
 Pr: 0.661
 Re: 0.505
[0] Validation / val_cityscapes /  Val:  0.23m

Any suggestion for this problem? Your help is highly appreciated.

How to use custom dataset for training?

Hi,

Thanks for the super nice work!! I wonder what modifications I should do if I want to use my own dataset? Suppose I have a source domain dataset A with corresponding images/mask, and target domain dataset B with corresponding images/mask. What folder should I put them? Any advice will be appreciated! Thanks.

By the way, have you tried training the model in a relatively smaller dataset, e.g. 10K images? Would the model still achieve such good performance?

RuntimeError: CUDA error

Try to train base model on GTAV, this error occured everytime on the 3rd or 4th(if I turned down the batchsize) epoch. Tracing back to the same line. We need some help here ^-^

-- Process 1 terminated with the following error:
Traceback (most recent call last):
File "/disk1/hl/anaconda3/envs/da-sac/lib/python3.10/site-packages/torch/multiprocessing/spawn.py", line 69, in _wrap
fn(i, *args)
File "/disk1/hl/da-sac/train.py", line 518, in main_worker
score = time_call(trainer.validation, "Validation / {} / Val: ".format(val_set),
File "/disk1/hl/da-sac/train.py", line 498, in time_call
val = func(*args, **kwargs)
File "/disk1/hl/da-sac/train.py", line 378, in validation
masks_all = eval_batch(batch)
File "/disk1/hl/da-sac/train.py", line 358, in eval_batch
loss, masks = step_func(epoch, batch, train=False, visualise=False)
File "/disk1/hl/da-sac/train.py", line 151, in step
losses_ret[key] = val.mean().item()
RuntimeError: CUDA error: an illegal memory access was encountered
CUDA kernel errors might be asynchronously reported at some other API call,so the stacktrace below might be incorrect.
For debugging consider passing CUDA_LAUNCH_BLOCKING=1.

Question about the frequency of updating momentum network

Thanks for sharing the code.

Have you investigate the influence of T (frequency of updating momentum network)? There's not corresponding ablation study in paper.

Counld you please report the result of setting with different T ?

Problem of reproducing

Hi, thanks for your awesome work and sharing code.

For ResNet101-DeepLab on GTAV-to-Cityscapes UDA task, I have rerun your code with the provided pre-trained model and weights for importance sampling, however, the best mIoU on val_cityscpaes is only 50.4%, which is worse than the paper result of 53.8%.

Is the problem caused by 2 GPUs? I reproduced the experiment on 2 NVIDIA Tesla V100 with 32 GB memory. However, I have noticed that you set batch_target as 1 for each GPU in code, so the total batch size of target data is less than the setting in your environment with 4 GPUs.

If possible, can you provide the complete experiment logs? They will be helpful for me to debug. :-)

Re-initialization of the momentum

Hi,

In your code, there's an argument called reset_teacher, which re-initializes the momentum network denoted as self.slow_net.
I would like to know when does reset_teacher = True, so that the momentum gets re-initialized to the state of the actual SegmentationNet denoted as self.backbone.
Because from what I understood, the MomentumNet gets initialized from the beginning to be equal to SegmentationNet, then gets updated using the exponential moving average formula and never gets re-intialized.

Thank you very much !! 😃

How to evaluate model without using cityscapes scripts protocol

Hi, thanks for your contribution! I really like your paper. I am currently training your model in a slightly different setup (Cityscapes ---> BDD), and I see that your algorithm is already able to run an evaluation on all the validation dataloaders defined in datasets/__init__.py after finishing every epoch.

What I would like to do is to actually evaluate the resulting model on other datasets that do not participate in the training process. In order to do this, I am forced to load your model and checkpoint, and run an evaluation on the datasets that I want. Aside from generating the .txt files on the data folder, how can I run the evaluation without having to use the scripts of cityscapes?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.