-
-
Notifications
You must be signed in to change notification settings - Fork 16.5k
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
Comet Logging and Visualization Integration #9232
Comet Logging and Visualization Integration #9232
Conversation
@glenn-jocher @AyushExel Here is the new PR without any external formatting. |
@DN6 thanks for opening another PR. We're trying to limit any changes to core files except utils/loggers for logging use case and we'll do the same for existing loggers later this year.
|
Hi @AyushExel. Regarding the first point [ ] Adds support for logging metrics, hyperparameters, model predictions, checkpoints, and datasets from the YOLOv5 train.py script. Logging model predictions (logging the Confusion Matrix, Images, Predictions and GT-Labels) requires updating the callback args in We can definitely prioritize the features you listed first, I'd just like to know how to proceed on the remaining ones, since they are quite useful. Are there any specific changes in the core files that are an issue? |
@DN6 confusion matrix and other results are being logged to all loggers in this function https://github.com/ultralytics/yolov5/blob/master/utils/loggers/__init__.py#L201 |
We are logging an interactive confusion matrix, which requires accessing the matrix object from inside YOLO. |
@DN6 I want to make another change. The logic should be this:
|
can you take a look at my dashboard https://www.comet.com/ayushexel/yolov5/4ddf2a99b0d74b629ef4b02a053c5946?experiment-tab=chart&showOutliers=true&smoothing=0&transformY=smoothing&xAxis=step |
Hi @AyushExel. I can't see your project, you'll have to change the project permissions (manage -> Project Visibility -> Change to Public -> Save Changes) The Image Panel has to be added in by the user. It doesn't auto-populate. In the Panel dashboard page, go to Regarding |
@DN6 we have 2 options if epochs is leass than 10.. Either log for all steps or log for none. Here's the flow:
|
I see. So image logging will always be enabled? Will there be any way to disable it? Also, is the |
@DN6 no.. Ideally the same images should be logged for each step because then its easier to see the progress of the model. |
Got it. I'm good with that change then. I'll make the relevant change shortly. |
@AyushExel Changes for |
Hi @AyushExel. Just following up. When do you anticipate we can merge this PR? |
@DN6 soon. I've only taken a look at the core files and those look good to me now. |
@DN6 @AyushExel got it, thanks guys, taking a look today. |
@DN6 @AyushExel cleaned up the notebook changes. Before was +1970 - 591, now +1343 - 22. |
@DN6 do you have a square Comet logo PNG? All I can find online is rectangle shape, but I need a square with the right empty area top and bottom to match the other logos, i.e.: EDIT: Nevermind, I'm all good. |
@DN6 @AyushExel PR is merged. Thank you for your contributions to YOLOv5 🚀 and Vision AI ⭐ |
Thank you for merging and adding the logo @glenn-jocher! Can we also link to the Comet tutorial README from the tutorials section in the main YOLOv5 README ? (I can add this as a separate PR if needed) And could we also make an update to the YOLOV5 wiki to include the Comet section mentioned in the |
@DN6 perfect, yes please submit README PR and I'll update wiki. |
* add comet to logger interface * add comet logger * add support for updated parameters * clean up offline logger creation * update callback args for comet logger * add comet optimizer * add optimizer config * add comet README * update tutorial notebook with Comet section * add option to log class level metrics * add support for class level metrics and confusion matrix * handle errors when adding files to artifacts * fix typo * clean resume workflow * updates for HPO * update comet README * fix typo in comet README * update code snippets in comet README * update comet links in tutorial * updated links * change optimizer batch size param and update comet README image * update comet section in tutorial * use prexisting cmd line flags to configure logger * update artifact upload/download flow * remove come remove comet logger specific cmd line args * move downloading weights into comet logger code * remove extra argparse * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * change checkpoint logging flow to follow offline logger * update resume flow * add comet logger to remote dataset property * update cmd line args in hpo * set types for integer/float env variables * update README * fix typo in README * default to always logging model predictions * Update tutorial.ipynb * Update train.py * Add Comet to Integrations table * Update README.md * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci Co-authored-by: Ayush Chaurasia <ayush.chaurarsia@gmail.com> Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
This PR:
train.py
script.train.py
script.tutorials.ipynb
utils/loggers/comet
to explain the features of the integration🛠️ PR Summary
Made with ❤️ by Ultralytics Actions
🌟 Summary
Enhancements to YOLOv5 with the integration of Comet ML for logging and visualization.
📊 Key Changes
🎯 Purpose & Impact