Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
OpenDAS
MMCV
Commits
26c095dc
Unverified
Commit
26c095dc
authored
Jan 27, 2022
by
Hakjin Lee
Committed by
GitHub
Jan 27, 2022
Browse files
[Fix] Fix the undefined name error (#1695)
parent
1231ef1c
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
34 additions
and
34 deletions
+34
-34
tests/test_runner/test_hooks.py
tests/test_runner/test_hooks.py
+34
-34
No files found.
tests/test_runner/test_hooks.py
View file @
26c095dc
...
@@ -361,7 +361,7 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
...
@@ -361,7 +361,7 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
"""xdoctest -m tests/test_hooks.py test_momentum_runner_hook."""
"""xdoctest -m tests/test_hooks.py test_momentum_runner_hook."""
sys
.
modules
[
'pavi'
]
=
MagicMock
()
sys
.
modules
[
'pavi'
]
=
MagicMock
()
loader
=
DataLoader
(
torch
.
ones
((
10
,
2
)))
loader
=
DataLoader
(
torch
.
ones
((
10
,
2
)))
runner
=
_build_demo_runner
(
multi_optim
z
iers
=
multi_optimizers
)
runner
=
_build_demo_runner
(
multi_optimi
z
ers
=
multi_optimizers
)
# add momentum scheduler
# add momentum scheduler
hook_cfg
=
dict
(
hook_cfg
=
dict
(
...
@@ -438,7 +438,7 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
...
@@ -438,7 +438,7 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
# test constant momentum warmup
# test constant momentum warmup
sys
.
modules
[
'pavi'
]
=
MagicMock
()
sys
.
modules
[
'pavi'
]
=
MagicMock
()
runner
=
_build_demo_runner
(
multi_optim
z
iers
=
multi_optim
z
iers
)
runner
=
_build_demo_runner
(
multi_optimi
z
ers
=
multi_optimi
z
ers
)
# add momentum scheduler
# add momentum scheduler
hook_cfg
=
dict
(
hook_cfg
=
dict
(
...
@@ -458,7 +458,7 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
...
@@ -458,7 +458,7 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
shutil
.
rmtree
(
runner
.
work_dir
)
shutil
.
rmtree
(
runner
.
work_dir
)
assert
hasattr
(
hook
,
'writer'
)
assert
hasattr
(
hook
,
'writer'
)
if
multi_optim
z
iers
:
if
multi_optimi
z
ers
:
calls
=
[
calls
=
[
call
(
call
(
'train'
,
{
'train'
,
{
...
@@ -502,7 +502,7 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
...
@@ -502,7 +502,7 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
# test linear momentum warmup
# test linear momentum warmup
sys
.
modules
[
'pavi'
]
=
MagicMock
()
sys
.
modules
[
'pavi'
]
=
MagicMock
()
runner
=
_build_demo_runner
(
multi_optim
z
iers
=
multi_optim
z
iers
)
runner
=
_build_demo_runner
(
multi_optimi
z
ers
=
multi_optimi
z
ers
)
# add momentum scheduler
# add momentum scheduler
hook_cfg
=
dict
(
hook_cfg
=
dict
(
...
@@ -522,7 +522,7 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
...
@@ -522,7 +522,7 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
shutil
.
rmtree
(
runner
.
work_dir
)
shutil
.
rmtree
(
runner
.
work_dir
)
assert
hasattr
(
hook
,
'writer'
)
assert
hasattr
(
hook
,
'writer'
)
if
multi_optim
z
iers
:
if
multi_optimi
z
ers
:
calls
=
[
calls
=
[
call
(
call
(
'train'
,
{
'train'
,
{
...
@@ -566,7 +566,7 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
...
@@ -566,7 +566,7 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
# test exponentially momentum warmup
# test exponentially momentum warmup
sys
.
modules
[
'pavi'
]
=
MagicMock
()
sys
.
modules
[
'pavi'
]
=
MagicMock
()
runner
=
_build_demo_runner
(
multi_optim
z
iers
=
multi_optim
z
iers
)
runner
=
_build_demo_runner
(
multi_optimi
z
ers
=
multi_optimi
z
ers
)
# add momentum scheduler
# add momentum scheduler
hook_cfg
=
dict
(
hook_cfg
=
dict
(
...
@@ -586,7 +586,7 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
...
@@ -586,7 +586,7 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
shutil
.
rmtree
(
runner
.
work_dir
)
shutil
.
rmtree
(
runner
.
work_dir
)
assert
hasattr
(
hook
,
'writer'
)
assert
hasattr
(
hook
,
'writer'
)
if
multi_optim
z
iers
:
if
multi_optimi
z
ers
:
calls
=
[
calls
=
[
call
(
call
(
'train'
,
{
'train'
,
{
...
@@ -629,12 +629,12 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
...
@@ -629,12 +629,12 @@ def test_momentum_runner_hook(multi_optimizers, max_iters, gamma,
hook
.
writer
.
add_scalars
.
assert_has_calls
(
calls
,
any_order
=
True
)
hook
.
writer
.
add_scalars
.
assert_has_calls
(
calls
,
any_order
=
True
)
@
pytest
.
mark
.
parametrize
(
'multi_optim
z
iers'
,
(
True
,
False
))
@
pytest
.
mark
.
parametrize
(
'multi_optimi
z
ers'
,
(
True
,
False
))
def
test_cosine_runner_hook
(
multi_optim
z
iers
):
def
test_cosine_runner_hook
(
multi_optimi
z
ers
):
"""xdoctest -m tests/test_hooks.py test_cosine_runner_hook."""
"""xdoctest -m tests/test_hooks.py test_cosine_runner_hook."""
sys
.
modules
[
'pavi'
]
=
MagicMock
()
sys
.
modules
[
'pavi'
]
=
MagicMock
()
loader
=
DataLoader
(
torch
.
ones
((
10
,
2
)))
loader
=
DataLoader
(
torch
.
ones
((
10
,
2
)))
runner
=
_build_demo_runner
(
multi_optim
z
iers
=
multi_optim
z
iers
)
runner
=
_build_demo_runner
(
multi_optimi
z
ers
=
multi_optimi
z
ers
)
# add momentum scheduler
# add momentum scheduler
hook_cfg
=
dict
(
hook_cfg
=
dict
(
...
@@ -663,7 +663,7 @@ def test_cosine_runner_hook(multi_optimziers):
...
@@ -663,7 +663,7 @@ def test_cosine_runner_hook(multi_optimziers):
# TODO: use a more elegant way to check values
# TODO: use a more elegant way to check values
assert
hasattr
(
hook
,
'writer'
)
assert
hasattr
(
hook
,
'writer'
)
if
multi_optim
z
iers
:
if
multi_optimi
z
ers
:
calls
=
[
calls
=
[
call
(
call
(
'train'
,
{
'train'
,
{
...
@@ -706,17 +706,17 @@ def test_cosine_runner_hook(multi_optimziers):
...
@@ -706,17 +706,17 @@ def test_cosine_runner_hook(multi_optimziers):
hook
.
writer
.
add_scalars
.
assert_has_calls
(
calls
,
any_order
=
True
)
hook
.
writer
.
add_scalars
.
assert_has_calls
(
calls
,
any_order
=
True
)
@
pytest
.
mark
.
parametrize
(
'multi_optim
z
iers, by_epoch'
,
[(
False
,
False
),
@
pytest
.
mark
.
parametrize
(
'multi_optimi
z
ers, by_epoch'
,
[(
False
,
False
),
(
True
,
False
),
(
True
,
False
),
(
False
,
True
),
(
False
,
True
),
(
True
,
True
)])
(
True
,
True
)])
def
test_flat_cosine_runner_hook
(
multi_optim
z
iers
,
by_epoch
):
def
test_flat_cosine_runner_hook
(
multi_optimi
z
ers
,
by_epoch
):
"""xdoctest -m tests/test_hooks.py test_flat_cosine_runner_hook."""
"""xdoctest -m tests/test_hooks.py test_flat_cosine_runner_hook."""
sys
.
modules
[
'pavi'
]
=
MagicMock
()
sys
.
modules
[
'pavi'
]
=
MagicMock
()
loader
=
DataLoader
(
torch
.
ones
((
10
,
2
)))
loader
=
DataLoader
(
torch
.
ones
((
10
,
2
)))
max_epochs
=
10
if
by_epoch
else
1
max_epochs
=
10
if
by_epoch
else
1
runner
=
_build_demo_runner
(
runner
=
_build_demo_runner
(
multi_optim
z
iers
=
multi_optim
z
iers
,
max_epochs
=
max_epochs
)
multi_optimi
z
ers
=
multi_optimi
z
ers
,
max_epochs
=
max_epochs
)
with
pytest
.
raises
(
ValueError
):
with
pytest
.
raises
(
ValueError
):
# start_percent: expected float between 0 and 1
# start_percent: expected float between 0 and 1
...
@@ -742,7 +742,7 @@ def test_flat_cosine_runner_hook(multi_optimziers, by_epoch):
...
@@ -742,7 +742,7 @@ def test_flat_cosine_runner_hook(multi_optimziers, by_epoch):
# TODO: use a more elegant way to check values
# TODO: use a more elegant way to check values
assert
hasattr
(
hook
,
'writer'
)
assert
hasattr
(
hook
,
'writer'
)
if
multi_optim
z
iers
:
if
multi_optimi
z
ers
:
if
by_epoch
:
if
by_epoch
:
calls
=
[
calls
=
[
call
(
call
(
...
@@ -847,10 +847,10 @@ def test_flat_cosine_runner_hook(multi_optimziers, by_epoch):
...
@@ -847,10 +847,10 @@ def test_flat_cosine_runner_hook(multi_optimziers, by_epoch):
hook
.
writer
.
add_scalars
.
assert_has_calls
(
calls
,
any_order
=
True
)
hook
.
writer
.
add_scalars
.
assert_has_calls
(
calls
,
any_order
=
True
)
@
pytest
.
mark
.
parametrize
(
'multi_optim
z
iers, max_iters'
,
[(
True
,
10
),
(
True
,
2
),
@
pytest
.
mark
.
parametrize
(
'multi_optimi
z
ers, max_iters'
,
[(
True
,
10
),
(
True
,
2
),
(
False
,
10
),
(
False
,
10
),
(
False
,
2
)])
(
False
,
2
)])
def
test_one_cycle_runner_hook
(
multi_optim
z
iers
,
max_iters
):
def
test_one_cycle_runner_hook
(
multi_optimi
z
ers
,
max_iters
):
"""Test OneCycleLrUpdaterHook and OneCycleMomentumUpdaterHook."""
"""Test OneCycleLrUpdaterHook and OneCycleMomentumUpdaterHook."""
with
pytest
.
raises
(
AssertionError
):
with
pytest
.
raises
(
AssertionError
):
# by_epoch should be False
# by_epoch should be False
...
@@ -866,7 +866,7 @@ def test_one_cycle_runner_hook(multi_optimziers, max_iters):
...
@@ -866,7 +866,7 @@ def test_one_cycle_runner_hook(multi_optimziers, max_iters):
sys
.
modules
[
'pavi'
]
=
MagicMock
()
sys
.
modules
[
'pavi'
]
=
MagicMock
()
loader
=
DataLoader
(
torch
.
ones
((
10
,
2
)))
loader
=
DataLoader
(
torch
.
ones
((
10
,
2
)))
runner
=
_build_demo_runner
(
multi_optim
z
iers
=
multi_optim
z
iers
)
runner
=
_build_demo_runner
(
multi_optimi
z
ers
=
multi_optimi
z
ers
)
# add momentum scheduler
# add momentum scheduler
hook_cfg
=
dict
(
hook_cfg
=
dict
(
...
@@ -898,7 +898,7 @@ def test_one_cycle_runner_hook(multi_optimziers, max_iters):
...
@@ -898,7 +898,7 @@ def test_one_cycle_runner_hook(multi_optimziers, max_iters):
# TODO: use a more elegant way to check values
# TODO: use a more elegant way to check values
assert
hasattr
(
hook
,
'writer'
)
assert
hasattr
(
hook
,
'writer'
)
if
multi_optim
z
iers
:
if
multi_optimi
z
ers
:
calls
=
[
calls
=
[
call
(
call
(
'train'
,
{
'train'
,
{
...
@@ -975,8 +975,8 @@ def test_one_cycle_runner_hook(multi_optimziers, max_iters):
...
@@ -975,8 +975,8 @@ def test_one_cycle_runner_hook(multi_optimziers, max_iters):
assert
lr_target
[
-
1
]
==
lr_last
[
0
]
assert
lr_target
[
-
1
]
==
lr_last
[
0
]
@
pytest
.
mark
.
parametrize
(
'multi_optim
z
iers'
,
(
True
,
False
))
@
pytest
.
mark
.
parametrize
(
'multi_optimi
z
ers'
,
(
True
,
False
))
def
test_cosine_restart_lr_update_hook
(
multi_optim
z
iers
):
def
test_cosine_restart_lr_update_hook
(
multi_optimi
z
ers
):
"""Test CosineRestartLrUpdaterHook."""
"""Test CosineRestartLrUpdaterHook."""
with
pytest
.
raises
(
AssertionError
):
with
pytest
.
raises
(
AssertionError
):
# either `min_lr` or `min_lr_ratio` should be specified
# either `min_lr` or `min_lr_ratio` should be specified
...
@@ -1018,7 +1018,7 @@ def test_cosine_restart_lr_update_hook(multi_optimziers):
...
@@ -1018,7 +1018,7 @@ def test_cosine_restart_lr_update_hook(multi_optimziers):
sys
.
modules
[
'pavi'
]
=
MagicMock
()
sys
.
modules
[
'pavi'
]
=
MagicMock
()
loader
=
DataLoader
(
torch
.
ones
((
10
,
2
)))
loader
=
DataLoader
(
torch
.
ones
((
10
,
2
)))
runner
=
_build_demo_runner
(
multi_optim
z
iers
=
multi_optim
z
iers
)
runner
=
_build_demo_runner
(
multi_optimi
z
ers
=
multi_optimi
z
ers
)
# add cosine restart LR scheduler
# add cosine restart LR scheduler
hook
=
CosineRestartLrUpdaterHook
(
hook
=
CosineRestartLrUpdaterHook
(
...
@@ -1037,7 +1037,7 @@ def test_cosine_restart_lr_update_hook(multi_optimziers):
...
@@ -1037,7 +1037,7 @@ def test_cosine_restart_lr_update_hook(multi_optimziers):
# TODO: use a more elegant way to check values
# TODO: use a more elegant way to check values
assert
hasattr
(
hook
,
'writer'
)
assert
hasattr
(
hook
,
'writer'
)
if
multi_optim
z
iers
:
if
multi_optimi
z
ers
:
calls
=
[
calls
=
[
call
(
call
(
'train'
,
{
'train'
,
{
...
@@ -1079,8 +1079,8 @@ def test_cosine_restart_lr_update_hook(multi_optimziers):
...
@@ -1079,8 +1079,8 @@ def test_cosine_restart_lr_update_hook(multi_optimziers):
hook
.
writer
.
add_scalars
.
assert_has_calls
(
calls
,
any_order
=
True
)
hook
.
writer
.
add_scalars
.
assert_has_calls
(
calls
,
any_order
=
True
)
@
pytest
.
mark
.
parametrize
(
'multi_optim
z
iers'
,
(
True
,
False
))
@
pytest
.
mark
.
parametrize
(
'multi_optimi
z
ers'
,
(
True
,
False
))
def
test_step_runner_hook
(
multi_optim
z
iers
):
def
test_step_runner_hook
(
multi_optimi
z
ers
):
"""Test StepLrUpdaterHook."""
"""Test StepLrUpdaterHook."""
with
pytest
.
raises
(
TypeError
):
with
pytest
.
raises
(
TypeError
):
# `step` should be specified
# `step` should be specified
...
@@ -1095,7 +1095,7 @@ def test_step_runner_hook(multi_optimziers):
...
@@ -1095,7 +1095,7 @@ def test_step_runner_hook(multi_optimziers):
# test StepLrUpdaterHook with int `step` value
# test StepLrUpdaterHook with int `step` value
sys
.
modules
[
'pavi'
]
=
MagicMock
()
sys
.
modules
[
'pavi'
]
=
MagicMock
()
loader
=
DataLoader
(
torch
.
ones
((
30
,
2
)))
loader
=
DataLoader
(
torch
.
ones
((
30
,
2
)))
runner
=
_build_demo_runner
(
multi_optim
z
iers
=
multi_optim
z
iers
)
runner
=
_build_demo_runner
(
multi_optimi
z
ers
=
multi_optimi
z
ers
)
# add momentum scheduler
# add momentum scheduler
hook_cfg
=
dict
(
hook_cfg
=
dict
(
...
@@ -1119,7 +1119,7 @@ def test_step_runner_hook(multi_optimziers):
...
@@ -1119,7 +1119,7 @@ def test_step_runner_hook(multi_optimziers):
# TODO: use a more elegant way to check values
# TODO: use a more elegant way to check values
assert
hasattr
(
hook
,
'writer'
)
assert
hasattr
(
hook
,
'writer'
)
if
multi_optim
z
iers
:
if
multi_optimi
z
ers
:
calls
=
[
calls
=
[
call
(
call
(
'train'
,
{
'train'
,
{
...
@@ -1196,7 +1196,7 @@ def test_step_runner_hook(multi_optimziers):
...
@@ -1196,7 +1196,7 @@ def test_step_runner_hook(multi_optimziers):
# test StepLrUpdaterHook with list[int] `step` value
# test StepLrUpdaterHook with list[int] `step` value
sys
.
modules
[
'pavi'
]
=
MagicMock
()
sys
.
modules
[
'pavi'
]
=
MagicMock
()
loader
=
DataLoader
(
torch
.
ones
((
10
,
2
)))
loader
=
DataLoader
(
torch
.
ones
((
10
,
2
)))
runner
=
_build_demo_runner
(
multi_optim
z
iers
=
multi_optim
z
iers
)
runner
=
_build_demo_runner
(
multi_optimi
z
ers
=
multi_optimi
z
ers
)
# add momentum scheduler
# add momentum scheduler
hook_cfg
=
dict
(
hook_cfg
=
dict
(
...
@@ -1219,7 +1219,7 @@ def test_step_runner_hook(multi_optimziers):
...
@@ -1219,7 +1219,7 @@ def test_step_runner_hook(multi_optimziers):
# TODO: use a more elegant way to check values
# TODO: use a more elegant way to check values
assert
hasattr
(
hook
,
'writer'
)
assert
hasattr
(
hook
,
'writer'
)
if
multi_optim
z
iers
:
if
multi_optimi
z
ers
:
calls
=
[
calls
=
[
call
(
call
(
'train'
,
{
'train'
,
{
...
@@ -1305,7 +1305,7 @@ def test_cyclic_lr_update_hook(multi_optimizers, max_iters, gamma,
...
@@ -1305,7 +1305,7 @@ def test_cyclic_lr_update_hook(multi_optimizers, max_iters, gamma,
runner_type
=
'IterBasedRunner'
,
runner_type
=
'IterBasedRunner'
,
max_epochs
=
None
,
max_epochs
=
None
,
max_iters
=
max_iters
,
max_iters
=
max_iters
,
multi_optim
z
iers
=
multi_optimizers
)
multi_optimi
z
ers
=
multi_optimizers
)
# add cyclic LR scheduler
# add cyclic LR scheduler
schedule_hook
=
CyclicLrUpdaterHook
(
schedule_hook
=
CyclicLrUpdaterHook
(
...
@@ -1472,7 +1472,7 @@ def test_dvclive_hook_model_file(tmp_path):
...
@@ -1472,7 +1472,7 @@ def test_dvclive_hook_model_file(tmp_path):
def
_build_demo_runner_without_hook
(
runner_type
=
'EpochBasedRunner'
,
def
_build_demo_runner_without_hook
(
runner_type
=
'EpochBasedRunner'
,
max_epochs
=
1
,
max_epochs
=
1
,
max_iters
=
None
,
max_iters
=
None
,
multi_optim
z
iers
=
False
):
multi_optimi
z
ers
=
False
):
class
Model
(
nn
.
Module
):
class
Model
(
nn
.
Module
):
...
@@ -1492,7 +1492,7 @@ def _build_demo_runner_without_hook(runner_type='EpochBasedRunner',
...
@@ -1492,7 +1492,7 @@ def _build_demo_runner_without_hook(runner_type='EpochBasedRunner',
model
=
Model
()
model
=
Model
()
if
multi_optim
z
iers
:
if
multi_optimi
z
ers
:
optimizer
=
{
optimizer
=
{
'model1'
:
'model1'
:
torch
.
optim
.
SGD
(
model
.
linear
.
parameters
(),
lr
=
0.02
,
momentum
=
0.95
),
torch
.
optim
.
SGD
(
model
.
linear
.
parameters
(),
lr
=
0.02
,
momentum
=
0.95
),
...
@@ -1518,14 +1518,14 @@ def _build_demo_runner_without_hook(runner_type='EpochBasedRunner',
...
@@ -1518,14 +1518,14 @@ def _build_demo_runner_without_hook(runner_type='EpochBasedRunner',
def
_build_demo_runner
(
runner_type
=
'EpochBasedRunner'
,
def
_build_demo_runner
(
runner_type
=
'EpochBasedRunner'
,
max_epochs
=
1
,
max_epochs
=
1
,
max_iters
=
None
,
max_iters
=
None
,
multi_optim
z
iers
=
False
):
multi_optimi
z
ers
=
False
):
log_config
=
dict
(
log_config
=
dict
(
interval
=
1
,
hooks
=
[
interval
=
1
,
hooks
=
[
dict
(
type
=
'TextLoggerHook'
),
dict
(
type
=
'TextLoggerHook'
),
])
])
runner
=
_build_demo_runner_without_hook
(
runner_type
,
max_epochs
,
runner
=
_build_demo_runner_without_hook
(
runner_type
,
max_epochs
,
max_iters
,
multi_optim
z
iers
)
max_iters
,
multi_optimi
z
ers
)
runner
.
register_checkpoint_hook
(
dict
(
interval
=
1
))
runner
.
register_checkpoint_hook
(
dict
(
interval
=
1
))
runner
.
register_logger_hooks
(
log_config
)
runner
.
register_logger_hooks
(
log_config
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment