## Implementation
Our current cifar10 implementation is partially based on [this codebase](https://github.com/yueatsprograms/ttt_cifar_release).

## Dataset
1. CIFAR10
2. CIFAR10c (Download [link](https://github.com/hendrycks/robustness))
## Model Pretrain
1. Run `pretrain.sh`
## Evaluate the Test Time Robustness of DANN
1. Transfer Attack: run `transfer.sh`
2. (Fixed Point) Adaptive Attack: run `FPA.sh`
## Evaluate the Test Time Robustness of Test Time Adaptation Algorithm
1. Transfer attack: See `experiments/transfer_TTT` 
2. (Fixed point) adaptive attack: See `experiments/TTT_FPA`
## Results
1. `plot/plot_cifar10_homo_tsize.py`: Plot the effect target dataset size of DANN on the its test time robustenss.
3. `plot/plot_DANN_FPA.py`: Show the effectiveness of Adaptive fixed point attack against DANN for both homogenous and inhomogeneous scenario.
4. `plot/plot_transfer_attack_cifar10c.py`: Plot the test time robustness of DANN evaluated on all cifar10-c datasets.