-
Notifications
You must be signed in to change notification settings - Fork 517
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 utilities to plot datasets to Weights & Biases + Add callback to log validation predictions to Weights & Biases #1167
Add utilities to plot datasets to Weights & Biases + Add callback to log validation predictions to Weights & Biases #1167
Conversation
Hi @ofrimasad |
Hi @ofrimasad & team, we'd really appreciate feedback on the PR, thanks so much! Darek from W&B |
Hi @BloodAxe @ofrimasad @shaydeci @Louis-Dupont |
Thanks for your PR, that is really nice addition. Pardon for delays with reviewing it as we were pretty busy recently preparing a new release.
|
…tionPredictionLoggerCallback
…image_detection_prediction_on_wandb
Hi @BloodAxe Also a couple of questions...
|
No
This is due to padding when preparing samples in dataset. If your input images has aspect ratio 16:9 (example) but the dataset transforms output images in 640x64 (aspect 1:1) then you would get this issue. The right solution is to use the resolution during training that matches (more or less) the aspect ratio of the images in dataset. So I'm not sure whether there is any action is required. |
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.
LGTM
Changes made in this PR
Fixes #1136
👇 Here's a sample training code that works with the changes made in this PR
👇 Here's a Weights & Biases run that demonstrates the changes made in this PR:
https://wandb.ai/geekyrakshit/yolo-nas-integration-2/runs/3lcpxzti
Plot datasets to Weights & Biases
This PR adds a function
plot_detection_dataset_on_wandb()
which can be used to plot and visualize asuper_gradients.training.datasets.detection_datasets.DetectionDataset
to Weights & Biases as awandb.Table
which can be used for interactive exploratory analysis of respective datasets.Here's a sample code:
This would log the dataset to be visualized as a Table in a Weights & Biases dashboard.
Here's a video of how to interact with the table UI on Weights & Biases 👇
Screen.Recording.2023-06-13.at.8.45.49.PM.mov
Log validation prediction as a table on Weights & Biases
This PR also includes a callback
WandBDetectionValidationPredictionLoggerCallback
that logs object detection predictions to a Weights & Biases Table with interactive bounding-box overlays during training on an epoch-wise basis.Here's a sample code:
This would log the validation predictions to be visualized as a Table in a Weights & Biases dashboard.
Here's a video of how to interact with the table UI on Weights & Biases 👇
Screen.Recording.2023-06-13.at.8.48.22.PM.mov