From 9d5b417f07cc189cd0d5517603f3872537c54af8 Mon Sep 17 00:00:00 2001
From: Yixiao Fang <36138628+fangyixiao18@users.noreply.github.com>
Date: Sat, 19 Nov 2022 10:39:19 +0800
Subject: [PATCH] [Fix] Fix T_max may be None in CosineAnnealingParamScheduler
 (#735)

---
 mmengine/optim/scheduler/param_scheduler.py | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/mmengine/optim/scheduler/param_scheduler.py b/mmengine/optim/scheduler/param_scheduler.py
index 7b4ca4ff..31101dce 100644
--- a/mmengine/optim/scheduler/param_scheduler.py
+++ b/mmengine/optim/scheduler/param_scheduler.py
@@ -639,7 +639,7 @@ class CosineAnnealingParamScheduler(_ParamScheduler):
     @classmethod
     def build_iter_from_epoch(cls,
                               *args,
-                              T_max,
+                              T_max=None,
                               begin=0,
                               end=INF,
                               by_epoch=True,
@@ -653,7 +653,8 @@ class CosineAnnealingParamScheduler(_ParamScheduler):
             f'`epoch_length` must be a positive integer, ' \
             f'but got {epoch_length}.'
         by_epoch = False
-        T_max = T_max * epoch_length
+        if T_max is not None:
+            T_max = T_max * epoch_length
         begin = int(begin * epoch_length)
         if end != INF:
             end = int(end * epoch_length)
-- 
GitLab