-
Notifications
You must be signed in to change notification settings - Fork 273
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
Refactor IJEPA to use timm. #1612
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #1612 +/- ##
==========================================
+ Coverage 85.49% 85.61% +0.11%
==========================================
Files 147 148 +1
Lines 6281 6333 +52
==========================================
+ Hits 5370 5422 +52
Misses 911 911 ☔ View full report in Codecov by Sentry. |
Hi! Thanks a lot for this extensive PR, it looks really well made! Looking at the code I see many parallels to our What I imagine is something like this:
|
Hi @guarin. I think you are correct and we can reuse the |
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.
Awesome, thanks so much!
Created two follow-up issues: Closes: #1367 |
Changes
This PR adresses #1367. I have refactored IJEPA to use timm. I have tried to stay closer to the original implementation, and also added typing. There might be some structural changes needed - for instance the
apply_masks
function should probably be moved toutils
? Any suggestions on how to improve this are welcome.Also like the MAE timm implementation, I have created a separate file, instead of directly replacing the
torchvision
implementation. I assume once this is benchmarked the plan would be to completely replace it.How was it tested?
Unit tests for the predictor, encoder and backbone classes.