Update Comet integration (#11648)
* Update Comet * Update Comet * Update Comet * Add default Experiment Name * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update tutorial.ipynb Signed-off-by: Glenn Jocher <glenn.jocher@ultralytics.com> * Update tutorial.ipynb Signed-off-by: Glenn Jocher <glenn.jocher@ultralytics.com> * Update tutorial.ipynb Signed-off-by: Glenn Jocher <glenn.jocher@ultralytics.com> * Update tutorial.ipynb Signed-off-by: Glenn Jocher <glenn.jocher@ultralytics.com> --------- Signed-off-by: Glenn Jocher <glenn.jocher@ultralytics.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>pull/11708/head
parent
a199480ba6
commit
98acd111b1
|
@ -63,7 +63,7 @@
|
||||||
"source": [
|
"source": [
|
||||||
"!git clone https://github.com/ultralytics/yolov5 # clone\n",
|
"!git clone https://github.com/ultralytics/yolov5 # clone\n",
|
||||||
"%cd yolov5\n",
|
"%cd yolov5\n",
|
||||||
"%pip install -qr requirements.txt # install\n",
|
"%pip install -qr requirements.txt comet_ml # install\n",
|
||||||
"\n",
|
"\n",
|
||||||
"import torch\n",
|
"import torch\n",
|
||||||
"import utils\n",
|
"import utils\n",
|
||||||
|
|
5
train.py
5
train.py
|
@ -26,6 +26,11 @@ from copy import deepcopy
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
|
try:
|
||||||
|
import comet_ml # must be imported before torch (if installed)
|
||||||
|
except ImportError:
|
||||||
|
comet_ml = None
|
||||||
|
|
||||||
import numpy as np
|
import numpy as np
|
||||||
import torch
|
import torch
|
||||||
import torch.distributed as dist
|
import torch.distributed as dist
|
||||||
|
|
|
@ -59,7 +59,7 @@
|
||||||
"source": [
|
"source": [
|
||||||
"!git clone https://github.com/ultralytics/yolov5 # clone\n",
|
"!git clone https://github.com/ultralytics/yolov5 # clone\n",
|
||||||
"%cd yolov5\n",
|
"%cd yolov5\n",
|
||||||
"%pip install -qr requirements.txt # install\n",
|
"%pip install -qr requirements.txt comet_ml # install\n",
|
||||||
"\n",
|
"\n",
|
||||||
"import torch\n",
|
"import torch\n",
|
||||||
"import utils\n",
|
"import utils\n",
|
||||||
|
|
|
@ -54,7 +54,7 @@ def notebook_init(verbose=True):
|
||||||
import os
|
import os
|
||||||
import shutil
|
import shutil
|
||||||
|
|
||||||
from utils.general import check_font, check_requirements, is_colab
|
from utils.general import check_font, is_colab
|
||||||
from utils.torch_utils import select_device # imports
|
from utils.torch_utils import select_device # imports
|
||||||
|
|
||||||
check_font()
|
check_font()
|
||||||
|
|
|
@ -46,15 +46,15 @@ except (ImportError, AssertionError):
|
||||||
clearml = None
|
clearml = None
|
||||||
|
|
||||||
try:
|
try:
|
||||||
if RANK not in [0, -1]:
|
if RANK in {0, -1}:
|
||||||
comet_ml = None
|
|
||||||
else:
|
|
||||||
import comet_ml
|
import comet_ml
|
||||||
|
|
||||||
assert hasattr(comet_ml, '__version__') # verify package import not local dir
|
assert hasattr(comet_ml, '__version__') # verify package import not local dir
|
||||||
from utils.loggers.comet import CometLogger
|
from utils.loggers.comet import CometLogger
|
||||||
|
|
||||||
except (ModuleNotFoundError, ImportError, AssertionError):
|
else:
|
||||||
|
comet_ml = None
|
||||||
|
except (ImportError, AssertionError):
|
||||||
comet_ml = None
|
comet_ml = None
|
||||||
|
|
||||||
|
|
||||||
|
@ -88,10 +88,6 @@ class Loggers():
|
||||||
self.csv = True # always log to csv
|
self.csv = True # always log to csv
|
||||||
|
|
||||||
# Messages
|
# Messages
|
||||||
if not clearml:
|
|
||||||
prefix = colorstr('ClearML: ')
|
|
||||||
s = f"{prefix}run 'pip install clearml' to automatically track, visualize and remotely train YOLOv5 🚀 in ClearML"
|
|
||||||
self.logger.info(s)
|
|
||||||
if not comet_ml:
|
if not comet_ml:
|
||||||
prefix = colorstr('Comet: ')
|
prefix = colorstr('Comet: ')
|
||||||
s = f"{prefix}run 'pip install comet_ml' to automatically track and visualize YOLOv5 🚀 runs in Comet"
|
s = f"{prefix}run 'pip install comet_ml' to automatically track and visualize YOLOv5 🚀 runs in Comet"
|
||||||
|
|
|
@ -18,7 +18,7 @@ try:
|
||||||
# Project Configuration
|
# Project Configuration
|
||||||
config = comet_ml.config.get_config()
|
config = comet_ml.config.get_config()
|
||||||
COMET_PROJECT_NAME = config.get_string(os.getenv('COMET_PROJECT_NAME'), 'comet.project_name', default='yolov5')
|
COMET_PROJECT_NAME = config.get_string(os.getenv('COMET_PROJECT_NAME'), 'comet.project_name', default='yolov5')
|
||||||
except (ModuleNotFoundError, ImportError):
|
except ImportError:
|
||||||
comet_ml = None
|
comet_ml = None
|
||||||
COMET_PROJECT_NAME = None
|
COMET_PROJECT_NAME = None
|
||||||
|
|
||||||
|
@ -82,7 +82,7 @@ class CometLogger:
|
||||||
self.comet_log_batch_interval = COMET_BATCH_LOGGING_INTERVAL
|
self.comet_log_batch_interval = COMET_BATCH_LOGGING_INTERVAL
|
||||||
|
|
||||||
# Dataset Artifact Settings
|
# Dataset Artifact Settings
|
||||||
self.upload_dataset = self.opt.upload_dataset if self.opt.upload_dataset else COMET_UPLOAD_DATASET
|
self.upload_dataset = self.opt.upload_dataset or COMET_UPLOAD_DATASET
|
||||||
self.resume = self.opt.resume
|
self.resume = self.opt.resume
|
||||||
|
|
||||||
# Default parameters to pass to Experiment objects
|
# Default parameters to pass to Experiment objects
|
||||||
|
@ -93,6 +93,7 @@ class CometLogger:
|
||||||
'project_name': COMET_PROJECT_NAME,}
|
'project_name': COMET_PROJECT_NAME,}
|
||||||
self.default_experiment_kwargs.update(experiment_kwargs)
|
self.default_experiment_kwargs.update(experiment_kwargs)
|
||||||
self.experiment = self._get_experiment(self.comet_mode, run_id)
|
self.experiment = self._get_experiment(self.comet_mode, run_id)
|
||||||
|
self.experiment.set_name(self.opt.name)
|
||||||
|
|
||||||
self.data_dict = self.check_dataset(self.opt.data)
|
self.data_dict = self.check_dataset(self.opt.data)
|
||||||
self.class_names = self.data_dict['names']
|
self.class_names = self.data_dict['names']
|
||||||
|
|
Loading…
Reference in New Issue