Skip to content
This repository has been archived by the owner on Mar 19, 2024. It is now read-only.

WandB support #268

Open
pclucas14 opened this issue Apr 5, 2021 · 5 comments
Open

WandB support #268

pclucas14 opened this issue Apr 5, 2021 · 5 comments
Assignees
Labels
enhancement New feature or request in-progress

Comments

@pclucas14
Copy link

🚀 Feature

Now that we can use Weights and Biases on the Facebook cluster, it would be really neat if there was support for it within VISSL.

Motivation & Examples

WandB is like TensorBoard on steroids, and provides a more user-friendly interface.

Tell us why the feature is useful.

Should be used exactly like the current Tensorboard logger within VISSL

Note

I this is something the VISSL team would consider adding, I can try and submit a PR :)

@prigoyal
Copy link
Contributor

prigoyal commented Apr 5, 2021

thank you @pclucas14 , this is a nice feature to add to VISSL. Please go ahead and submit a PR :) also you can grab this issue (update the Assignees) if you are moving forward :)

@prigoyal prigoyal added the enhancement New feature or request label Apr 5, 2021
facebook-github-bot pushed a commit that referenced this issue May 13, 2022
Summary:
A first implementation of iBOT in VISSL:
- configuration for pre-training on IN1K for ViT/S16
- configurations for evaluation on KNN / linear evaluation on IN1K
- hook / loss / metrics / masking augmentation & token

Tests:
- [x] Integration tests on iBOT to check that functionality works
- [x] Short 100 epochs run on 1node (with curves comparison to the iBOT official repository)
- [x] 300 epochs run on ViT-S/16

X-link: fairinternal/ssl_scaling#268

Reviewed By: mannatsingh

Differential Revision: D36283151

Pulled By: QuentinDuval

fbshipit-source-id: 570dbc1d8e15b19a471575f86f4963c4db015143
@surajpaib
Copy link

Hi @pclucas14 @prigoyal ,

It would be great to have W&B support as I'm very keen on using it to track my experiments. I see that this issue has been stale for a while, are there any updates on the status of this integration?

Thanks!

@pclucas14
Copy link
Author

Hi @surajpaib,

No I don't think anyone is actively working on this :/ The issue back then was how to properly log with DDP iirc. You can probably check how pytorch-lightning does it and implement something similar.

Best of luck!

@surajpaib
Copy link

Thanks for letting me know!
I was able to setup wandb to mimic what the tensorboard hook does. @prigoyal Would you still be interested in a PR for this?

I've handled the DDP as mentioned on the wandb logs by logging solely from the primary rank. Source: https://docs.wandb.ai/guides/track/advanced/distributed-training

You can find the implementation on my fork: surajpaib@022fade

@surajpaib
Copy link

#271

Okay, so I just found this PR. On going through it, I see that the only difference that makes it work is that I run wandb.init() call after DDP is initialized (https://github.com/surajpaib/vissl/blob/022fade7ce7db063e4b170834e8fe5f59f832729/vissl/hooks/wandb_hook.py#L55)

If I follow correctly, the consensus on the PR was to add a new is_primary definition separate from the ClassyVision one. This should circumvent the need for that

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request in-progress
Projects
None yet
Development

No branches or pull requests

3 participants