Giter Site home page Giter Site logo

Reproduce results about unimatch HOT 10 CLOSED

liheyoung avatar liheyoung commented on September 24, 2024
Reproduce results

from unimatch.

Comments (10)

LiheYoung avatar LiheYoung commented on September 24, 2024 1

The ignore_mask is to mark:
(1) ignored region provided in Pascal GT mask,
(2) padded region during pre-processing.

The mask == 254 is indeed our padded region (see here). It does not use value 255 for unlabeled images in the first place because we want to tell it from the officially provided 255 values in GT masks, which we should not leverage on unlabeled images.

from unimatch.

LiheYoung avatar LiheYoung commented on September 24, 2024
  • Previously, we have re-run our Pascal experiments three times under each data partition. Below are the results and corresponding training logs. Not that, all results are obtained with ResNet-101 and training size 321. The reported results in our paper are listed in the last row for clear comparison. I think it is easy to reproduce them. Any PyTorch version >= 1.8 should be okay.
Pascal 92 183 366 732 1464 1/16 1/8 1/4
Run 1 75.46 76.75 78.51 79.98 80.78 76.91 77.46 77.54
Run 2 74.78 78.17 78.69 80.21 80.71 76.98 77.74 77.21
Run 3 74.74 77.69 78.42 79.48 81.01 77.15 77.05 77.44
Mean (std) 74.99 (0.40) 77.54 (0.72) 78.54 (0.14) 79.89 (0.37) 80.83 (0.16) 77.01 (0.12) 77.42 (0.35) 77.40 (0.17)
Paper 75.2 77.2 78.8 79.9 81.2 76.5 77.0 77.2
  • Indeed, we have clarified the online hard example mining loss (OHEM) in the Cityscapes paragraph of Section 4.2 in our main paper. To use it, you can follow the Cityscapes config file.

from unimatch.

LiheYoung avatar LiheYoung commented on September 24, 2024

I will close this issue. Feel free to re-open it if you have any further questions.

from unimatch.

zhibotian avatar zhibotian commented on September 24, 2024

Hi, as your method in the paper, you also do experiments to use Dual-Stream Feature-Level Perturbations, can you tell me the details about it, using two different weak perturbations feeding to the network to get different Feature-Level perturbations results or just use one weak perturbations but return two after the encoder g. Thanks.

from unimatch.

LiheYoung avatar LiheYoung commented on September 24, 2024

It is the latter one as you described. We only use a single weak view, but perform twice random feature-level perturbations (Dropout) on it.

Briefly, the code should be changed from:

if need_fp:
outs = self._decode(torch.cat((c1, nn.Dropout2d(0.5)(c1))),
torch.cat((c4, nn.Dropout2d(0.5)(c4))))
outs = F.interpolate(outs, size=(h, w), mode="bilinear", align_corners=True)
out, out_fp = outs.chunk(2)
return out, out_fp
to:

if need_fp:
    outs = self._decode(torch.cat((c1, nn.Dropout2d(0.5)(c1), nn.Dropout2d(0.5)(c1))),
                        torch.cat((c4, nn.Dropout2d(0.5)(c4), nn.Dropout2d(0.5)(c4))))
    outs = F.interpolate(outs, size=(h, w), mode="bilinear", align_corners=True)
    out, out_fp1, out_fp2 = outs.chunk(3)

    return out, out_fp1, out_fp2

Besides, the original loss function loss_u_w_fp should also be averaged on the dual views of out_fp1 and out_fp2.

from unimatch.

zhibotian avatar zhibotian commented on September 24, 2024

Okay, get it, thank you very much for your patient reply.

from unimatch.

zhibotian avatar zhibotian commented on September 24, 2024

Hi, Sorry to bother you again, Can you tell me the purpose of this code ignore_mask[mask == 254] = 255 and the role of the variable ignore_mask in the code in semi.py, thanks a lot.

from unimatch.

zhibotian avatar zhibotian commented on September 24, 2024

1676951312958
Hello, I noticed that the findings of Resnet101 spilt 1/6, 1/8, 1/4, for U2PL in your work deviate from the original paper; have you recreated this result? (The first image is the outcome of your paper.)1676951714776

from unimatch.

LiheYoung avatar LiheYoung commented on September 24, 2024

Please refer to Haochen-Wang409/U2PL#3 for detail.

from unimatch.

zhibotian avatar zhibotian commented on September 24, 2024

Soga! Thanks.

from unimatch.

Related Issues (20)

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.