Skip to content
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

[Refactory] Merge BEiT and ConvNext 's LR decay optimizer constructors #1438

Merged
merged 36 commits into from
Apr 27, 2022
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
f71cef5
move layer_decay_optimizer_constructor
linfangjian01 Mar 31, 2022
6aa86d2
fix
linfangjian01 Mar 31, 2022
936ab01
fix
linfangjian01 Mar 31, 2022
102c54f
merge test_core
linfangjian01 Mar 31, 2022
16e0b2f
fix
linfangjian01 Apr 1, 2022
d7c0d67
add DeprecationWarning
linfangjian01 Apr 1, 2022
2e7e579
fix DeprecationWarning
linfangjian01 Apr 1, 2022
278fc81
fix
linfangjian01 Apr 2, 2022
e57d79e
fix
linfangjian01 Apr 2, 2022
4d8131d
fix
linfangjian01 Apr 3, 2022
29ebc06
fix
linfangjian01 Apr 5, 2022
14d2026
fix
linfangjian01 Apr 5, 2022
db10656
fix
linfangjian01 Apr 6, 2022
e8a6a6b
fix
linfangjian01 Apr 6, 2022
f8eb1b7
fix
linfangjian01 Apr 6, 2022
1f58c69
fix
linfangjian01 Apr 7, 2022
c931d33
fix
linfangjian01 Apr 12, 2022
b2bac1f
Merge branch 'open-mmlab:master' into moveoptim
linfangjian01 Apr 13, 2022
c7e461f
Merge branch 'open-mmlab:master' into moveoptim
linfangjian01 Apr 13, 2022
e9b1999
fix
linfangjian01 Apr 25, 2022
1b71c3c
fix
linfangjian01 Apr 25, 2022
f7d1f44
fix
linfangjian01 Apr 25, 2022
3052fe7
fix test
linfangjian01 Apr 25, 2022
5a056fe
fix
linfangjian01 Apr 25, 2022
875d047
fix
linfangjian01 Apr 25, 2022
6eb5bc0
fix
linfangjian01 Apr 25, 2022
f99eb9a
fix
linfangjian01 Apr 26, 2022
97fb999
fix ut
MeowZheng Apr 26, 2022
60eff24
fix ut
MeowZheng Apr 26, 2022
2acb909
fix
linfangjian01 Apr 26, 2022
494c8ac
fix
linfangjian01 Apr 26, 2022
50d56c6
Update tests/test_core/test_layer_decay_optimizer_constructor.py
MeowZheng Apr 26, 2022
4d13e41
fix
linfangjian01 Apr 26, 2022
6285ae8
fix
linfangjian01 Apr 26, 2022
8e11179
fix
linfangjian01 Apr 26, 2022
23b920d
fix
linfangjian01 Apr 26, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
fix
  • Loading branch information
linfangjian01 committed Apr 5, 2022
commit 14d2026f1b401a2ad172a1bf1094d07b9e9094c2
24 changes: 15 additions & 9 deletions mmseg/core/optimizers/layer_decay_optimizer_constructor.py
Original file line number Diff line number Diff line change
Expand Up @@ -135,16 +135,22 @@ def add_params(self, params, module):
else:
group_name = 'decay'
this_weight_decay = weight_decay
if decay_type == 'layer_wise':
layer_id = get_num_layer_layer_wise(
name, self.paramwise_cfg.get('num_layers'))
logger.info(f'set param {name} as id {layer_id}')
elif decay_type == 'layer_wise_vit':
layer_id = get_num_layer_for_vit(name, num_layers)
logger.info(f'set param {name} as id {layer_id}')
if 'layer_wise' in decay_type:
if 'ConvNeXt' in module.__class__.__name__:
layer_id = get_num_layer_layer_wise(
linfangjian01 marked this conversation as resolved.
Show resolved Hide resolved
name, self.paramwise_cfg.get('num_layers'))
logger.info(f'set param {name} as id {layer_id}')
elif 'BEiT' in module.__class__.__name__:
layer_id = get_num_layer_for_vit(name, num_layers)
logger.info(f'set param {name} as id {layer_id}')
else:
raise NotImplementedError()
elif decay_type == 'stage_wise':
layer_id = get_num_layer_stage_wise(name, num_layers)
logger.info(f'set param {name} as id {layer_id}')
if 'ConvNeXt' in module.__class__.__name__:
layer_id = get_num_layer_stage_wise(name, num_layers)
linfangjian01 marked this conversation as resolved.
Show resolved Hide resolved
logger.info(f'set param {name} as id {layer_id}')
else:
raise NotImplementedError()
group_name = f'layer_{layer_id}_{group_name}'

if group_name not in parameter_groups:
Expand Down
2 changes: 1 addition & 1 deletion tests/test_core/test_layer_decay_optimizer_constructor.py
Original file line number Diff line number Diff line change
Expand Up @@ -215,7 +215,7 @@ def check_beit_adamw_optimizer(optimizer, gt_lst):

def test_beit_layer_decay_optimizer_constructor():

# paramwise_cfg with ConvNeXtExampleModel
# paramwise_cfg with BEiTExampleModel
model = BEiTExampleModel(depth=3)
optimizer_cfg = dict(
type='AdamW', lr=1, betas=(0.9, 0.999), weight_decay=0.05)
Expand Down