TTT++ on the synthetic inter-twinning two moons problem.
To install requirements:
pip install -r requirements.txt
To quickly compare the TTT and our TTT++ quantitatively, run the following line:
python main.py
To visualize the results, run the following line:
python main.py --figdir='figures'
Model | IID | Test | Vanilla TTT | Our TTT++ |
---|---|---|---|---|
Accuracy | 100.0% | 50.0% | 50.0% | 88.2% |
IID | Test | Vanilla TTT | Our TTT++ |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
The detailed problem setting can be controlled as follows:
- distributional shift between training and test: translation
--tran
and/or rotation--rot
of all data points, - label agreement between the main and SSL task: interleaving distance
--sep
between the two moons.
python main.py --tran=<translation> --rot=<rotation> --sep=<distance>