From 4de8b2488133b1f7d4db1e64c5eb2063c494b55a Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Sat, 19 Feb 2022 16:48:33 +0100 Subject: [PATCH] Suppress `torch` AMP-CPU warnings (#6706) This is a torch bug, but they seem unable or unwilling to fix it so I'm creating a suppression in YOLOv5. Resolves https://github.com/ultralytics/yolov5/issues/6692 --- utils/torch_utils.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/utils/torch_utils.py b/utils/torch_utils.py index ca91ff6..c5257c6 100644 --- a/utils/torch_utils.py +++ b/utils/torch_utils.py @@ -9,6 +9,7 @@ import os import platform import subprocess import time +import warnings from contextlib import contextmanager from copy import deepcopy from pathlib import Path @@ -25,6 +26,9 @@ try: except ImportError: thop = None +# Suppress PyTorch warnings +warnings.filterwarnings('ignore', message='User provided device_type of \'cuda\', but CUDA is not available. Disabling') + @contextmanager def torch_distributed_zero_first(local_rank: int): @@ -293,13 +297,9 @@ class EarlyStopping: class ModelEMA: - """ Model Exponential Moving Average from https://github.com/rwightman/pytorch-image-models - Keep a moving average of everything in the model state_dict (parameters and buffers). - This is intended to allow functionality like - https://www.tensorflow.org/api_docs/python/tf/train/ExponentialMovingAverage - A smoothed version of the weights is necessary for some training schemes to perform well. - This class is sensitive where it is initialized in the sequence of model init, - GPU assignment and distributed training wrappers. + """ Updated Exponential Moving Average (EMA) from https://github.com/rwightman/pytorch-image-models + Keeps a moving average of everything in the model state_dict (parameters and buffers) + For EMA details see https://www.tensorflow.org/api_docs/python/tf/train/ExponentialMovingAverage """ def __init__(self, model, decay=0.9999, updates=0):