-
Notifications
You must be signed in to change notification settings - Fork 179
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Vibcreg #182
Vibcreg #182
Conversation
Hey @Froskekongen thanks a lot for contributing. I'll take a look at the paper first to get the general idea. |
Hi @Froskekongen! We appreciate your initiative. Did you happen to run CIFAR100 as well? |
@DonkeyShot21: I will run CIFAR-100 overnight. EDIT: I will run it overnight if I manage to download the dataset. There appears to be a 500 error from the site hosting the dataset right now. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I found some small things that would be good to be fixed before merging.
Also, can you add the loss to solo/losses/__init__.py
?
TODO:
- implement tests
- add method to the docs
- add tests
- add results/checkpoints to README
- black files (the bot seems to have failed for some reason)
) # whiten matrix: the matrix inverse of Sigma, i.e., Sigma^{-1/2} | ||
|
||
running_mean.copy_(momentum * mean + (1.0 - momentum) * running_mean) | ||
running_wmat.copy_(momentum * wm + (1.0 - momentum) * running_wmat) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm getting this error. It's probably related to the clone()
that I said we could remove. Sorry about that.
E RuntimeError: unsupported operation: more than one element of the written-to tensor refers to a single memory location. Please clone() the tensor before performing the operation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I reintroduced the .clone().
@Froskekongen I cleaned a bit, added some placeholders for results in the readme and fixed part of the tests. We are still getting an error which I assume is due to the |
Codecov Report
*This pull request uses carry forward flags. Click here to find out more.
|
I'll take care of the documents. @Froskekongen are you running/planning to run the experiments? |
@vturrisi: I ran the experiments for cifar10 and cifar100 |
Ok! I'll create some folders so that you can upload the checkpoints, k? About imagenet100, are you running or planning to run? |
Yes, I can upload the trained models to some folders. I didn't plan to run imagenet100 - at least not right now. |
@Froskekongen just to confirm we are missing the checkpoints and Imagenet-100 results. EDIT: just realised that I put the same link twice. I already moved the files to the correct folders. |
I have added the args and checkpoints to the drive folder. |
Hey @Froskekongen. I'll run on imagenet-100. Can I use the same parameters as in VICReg? |
@vturrisi: The only thing that needs to be changed are the loss weights, which should be:
|
@Froskekongen just started with imagenet-100. When this is done and I run offline linear eval, I'll merge the PR (that should be tomorrow or Monday). |
Merging it now. Thanks again @Froskekongen for contributing. |
Implementation of VIbCReg (https://arxiv.org/abs/2109.00783), which was originally developed for times series modeling.
The performance without tuning parameters and using the same parameters as VICReg gets a performance of 91.18 acc@1 online, and 99.74 acc@5 online.