Giter Club home page Giter Club logo

shrinkmatch's Introduction

ShrinkMatch

PWC PWC PWC PWC

[Paper] [Logs] [BibTeX]

This codebase provides the official PyTorch implementation of our ICCV 2023 paper:

Shrinking Class Space for Enhanced Certainty in Semi-Supervised Learning
Lihe Yang, Zhen Zhao, Lei Qi, Yu Qiao, Yinghuan Shi, Hengshuang Zhao
In International Conference on Computer Vision (ICCV), 2023

Summary

In semi-supervised learning, to mitigate potentially incorrect pseudo labels, recent frameworks mostly set a fixed confidence threshold to discard uncertain samples. This practice ensures high-quality pseudo labels, but incurs a relatively low utilization of the whole unlabeled set.

Our key insight is that these uncertain samples can be turned into certain ones, as long as the confusion classes for the top-1 class are detected and removed. For each uncertain sample, our proposed ShrinkMatch adaptively seeks a shrunk class space, which merely contains the original top-1 class as well as remaining less likely classes, to satisfy the pre-defined threshold, e.g., 0.95. We then impose a consistency regularization in this shrunk space. Furthermore, considering the varied reliability among uncertain samples and the gradually improved model during training, we correspondingly design two reweighting principles for our uncertain loss.

Results

We provide all training logs. You can refer to them when reproducing.

CIFAR-10 @40 labels

Seed 0 1 2 3 4 Mean
SimMatch 95.34 95.16 92.63 93.76 95.10 94.39
ShrinkMatch 95.09 94.66 95.12 94.78 94.95 94.92

CIFAR-100 @400 labels

Seed 0 1 2 3 4 Mean
SimMatch 62.06 60.19 59.89 64.88 63.92 62.19
ShrinkMatch 65.00 63.47 63.77 66.42 64.52 64.64

STL-10 @40 labels

Seed 0 1 2 Mean
FlexMatch 76.71 68.28 67.55 70.85
ShrinkMatch 85.75 85.64 86.55 85.98

SVHN @40 labels

Seed 0 1 2 Mean
FlexMatch 89.19 89.93 96.32 91.81
FixMatch 94.53 96.90 97.14 96.19
ShrinkMatch 97.96 97.81 96.70 97.49

ImageNet-1K

Accuracy Top-1 @1% labels Top-1 @10% labels Top-5 @1% labels Top-5 @10% labels
SimMatch* 67.0 74.1 86.9 91.5
ShrinkMatch 67.5 74.5 87.4 91.9

*Reproduced in our environment

Usage

Please enter the corresponding directory according to your dataset.

Acknowledgment

Many thanks to SimMatch, TorchSSL, and FixMatch-PyTorch for sharing their codebases and training logs.

Citation

If you find this project useful, please consider citing:

@inproceedings{shrinkmatch,
  title={Shrinking Class Space for Enhanced Certainty in Semi-Supervised Learning},
  author={Yang, Lihe and Zhao, Zhen and Qi, Lei and Qiao, Yu and Shi, Yinghuan and Zhao, Hengshuang},
  booktitle={ICCV},
  year={2023}
}

shrinkmatch's People

Contributors

liheyoung 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

Watchers

 avatar  avatar  avatar

shrinkmatch's Issues

Confusing questions

I've read your paper very carefully and it's very inspiring, but I'm confused about one thing, for uncertain samples, each time you choose the class with the highest category probability and the remaining low-probability classes, which makes the network focus on the Top-1 classes only. If the Top-1 classes are wrongly predicted at the beginning, wouldn't the model be more severely biased when it is trained later on? Looking forward to hearing from you! Thank you!

Releasing ImageNet weights ?

Hi,

Thank you for releasing the code for this state of the art method. I am working on a comparative study across various Semi-Supervised learning methods, for which purpose availability of pre-trained ImageNet models for your method would ensure best possible evaluation.

Would it be possible for you to release your ImageNet models ?

Thanks.

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.