Skip to content
/ tea Public

[CVPR 2024] TEA: Test-time Energy Adaptation

Notifications You must be signed in to change notification settings

yuanyige/tea

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Feb 28, 2024
66e7ffa · Feb 28, 2024

History

31 Commits
Nov 18, 2023
Nov 24, 2023
Nov 24, 2023
Sep 19, 2023
Feb 28, 2024
Nov 18, 2023
Oct 26, 2023

Repository files navigation

TEA: Test-time Energy Adaptation

Yige Yuan, Bingbing Xu, Liang Hou, Fei Sun, Huawei Shen, Xueqi Cheng

The IEEE / CVF Computer Vision and Pattern Recognition Conference (CVPR), 2024

This is an official PyTorch implementation of paper TEA: Test-time Energy Adaptation.

Our Proposed TEA

Main Usage

CUDA_VISIBLE_DEVICES=0 python main.py --cfg cfgs/cifar10/energy.yaml

The default model using trained WRN-28-10 from RobustBench.

core/config.py defines all default settings, you can specify particular settings in cfgs/xx.yaml

Baseline Support

Our code supports running other baselines with a one-line script, the supported baselines include:

  • Source: model without any adaptation
  • PL: Pseudo-Label-The Simple and Efficient Semi-Supervised Learning Method for Deep Neural Networks (ICMLW 2013)
  • SHOT: Do We Really Need to Access the Source Data? Source Hypothesis Transfer for Unsupervised Domain Adaptation (ICML 2020)
  • BN: Improving robustness against common corruptions by covariate shift adaptation (NeurIPS 2020)
  • TENT: Tent: Fully Test-Time Adaptation by Entropy Minimization (ICLR 2021)
  • ETA: Efficient Test-Time Model Adaptation without Forgetting (ICML 2022)
  • EATA: Efficient Test-Time Model Adaptation without Forgetting (ICML 2022)
  • SAR: Towards Stable Test-time Adaptation in Dynamic Wild World (ICLR 2023)
# Baselines
CUDA_VISIBLE_DEVICES=0 python main.py --cfg cfgs/cifar10/source.yaml
CUDA_VISIBLE_DEVICES=0 python main.py --cfg cfgs/cifar10/norm.yaml
CUDA_VISIBLE_DEVICES=0 python main.py --cfg cfgs/cifar10/tent.yaml
CUDA_VISIBLE_DEVICES=0 python main.py --cfg cfgs/cifar10/eta.yaml
CUDA_VISIBLE_DEVICES=0 python main.py --cfg cfgs/cifar10/eata.yaml
CUDA_VISIBLE_DEVICES=0 python main.py --cfg cfgs/cifar10/sar.yaml
CUDA_VISIBLE_DEVICES=0 python main.py --cfg cfgs/cifar10/pl.yaml
CUDA_VISIBLE_DEVICES=0 python main.py --cfg cfgs/cifar10/shot.yaml

Reference

If you find our work useful, please consider citing our paper:

@article{yuan2023tea,
  title={TEA: Test-time Energy Adaptation},
  author={Yuan, Yige and Xu, Bingbing and Hou, Liang and Sun, Fei and Shen, Huawei and Cheng, Xueqi},
  journal={arXiv preprint arXiv:2311.14402},
  year={2023}
}

About

[CVPR 2024] TEA: Test-time Energy Adaptation

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages