Skip to content
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

Add Weights and Baises Integration #383

Open
wants to merge 16 commits into
base: main
Choose a base branch
from
Open

Conversation

AyushExel
Copy link

@AyushExel AyushExel commented Jan 7, 2022

This PR adds support for Weights and Biases Metric and evaluation logging.

How to use?

  • pass --use-wandb flag with tools/train.py
  • Set number of interactive evaluations samples to be logged at each validation step by setting --eval-samples <int>

Tables

Tables Inspect, filter, query, and compare your model prediction to better debug
ezgif com-gif-maker (1)

In the current implementation, the wandb arguments are directly passed in the Base Logger. We can refactor it out into a more suitable place if needed. There are more points of integration such as model checkpointing on cloud, interactive inference logging which can be built on top of this

@RangiLyu
Copy link
Owner

RangiLyu commented Jan 8, 2022

Thanks for your contribution! I'll review this PR as soon as possible!

@RangiLyu
Copy link
Owner

RangiLyu commented Jan 8, 2022

In the current implementation, the wandb arguments are directly passed in the Base Logger. We can refactor it out into a more suitable place if needed.

I think you can create a new class called WandbLogger and provide the same api as the NanoDetLightningLogger.

And currently, the logging logic in task.py is not designed for other loggers (e.g. I used tensorboard's add_scalars api in task.py ).

You can provide a draft code and I'll refactor base on it.

@AyushExel
Copy link
Author

@RangiLyu I'm using the baselogger's API to create a new WandbLogger. I'll make the task accept a list of loggers so users can implement and add their own loggers later on.
Hopefully the only change needed weill be to replace
self.logger.xxx
to

for logger in self.loggers:
     logger.xxx

@AyushExel
Copy link
Author

@RangiLyu hey, any updates on this?

@RangiLyu
Copy link
Owner

@RangiLyu hey, any updates on this?

I'll create another PR based on this. Some refactoring and unit tests should be added. I'll do it this week.

@AyushExel
Copy link
Author

Hey, is there a blocker here or something that we can help with?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants