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
renzhc
mmpretrain-mmcv
Commits
d476eeba
Commit
d476eeba
authored
Sep 02, 2024
by
renzhc
Browse files
upload mmpretrain
parent
62b8498e
Pipeline
#1662
failed with stages
in 0 seconds
Changes
1000
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
1091 additions
and
0 deletions
+1091
-0
configs/mae/benchmarks/vit-huge-p14_8xb128-ds-coslr-50e_in1k.py
...s/mae/benchmarks/vit-huge-p14_8xb128-ds-coslr-50e_in1k.py
+31
-0
configs/mae/benchmarks/vit-huge-p14_8xb128-fsdp-coslr-50e_in1k.py
...mae/benchmarks/vit-huge-p14_8xb128-fsdp-coslr-50e_in1k.py
+13
-0
configs/mae/benchmarks/vit-large-p16_8xb128-coslr-50e_in1k.py
...igs/mae/benchmarks/vit-large-p16_8xb128-coslr-50e_in1k.py
+115
-0
configs/mae/benchmarks/vit-large-p16_8xb128-ds-coslr-50e_in1k.py
.../mae/benchmarks/vit-large-p16_8xb128-ds-coslr-50e_in1k.py
+31
-0
configs/mae/benchmarks/vit-large-p16_8xb128-fsdp-coslr-50e_in1k.py
...ae/benchmarks/vit-large-p16_8xb128-fsdp-coslr-50e_in1k.py
+13
-0
configs/mae/benchmarks/vit-large-p16_8xb2048-linear-coslr-90e_in1k.py
...benchmarks/vit-large-p16_8xb2048-linear-coslr-90e_in1k.py
+64
-0
configs/mae/mae_hivit-base-p16_8xb512-amp-coslr-1600e_in1k.py
...igs/mae/mae_hivit-base-p16_8xb512-amp-coslr-1600e_in1k.py
+56
-0
configs/mae/mae_hivit-base-p16_8xb512-amp-coslr-400e_in1k.py
configs/mae/mae_hivit-base-p16_8xb512-amp-coslr-400e_in1k.py
+56
-0
configs/mae/mae_hivit-base-p16_8xb512-amp-coslr-800e_in1k.py
configs/mae/mae_hivit-base-p16_8xb512-amp-coslr-800e_in1k.py
+56
-0
configs/mae/mae_hivit-large-p16_8xb512-amp-coslr-1600e_in1k.py
...gs/mae/mae_hivit-large-p16_8xb512-amp-coslr-1600e_in1k.py
+61
-0
configs/mae/mae_hivit-large-p16_8xb512-amp-coslr-400e_in1k.py
...igs/mae/mae_hivit-large-p16_8xb512-amp-coslr-400e_in1k.py
+61
-0
configs/mae/mae_hivit-large-p16_8xb512-amp-coslr-800e_in1k.py
...igs/mae/mae_hivit-large-p16_8xb512-amp-coslr-800e_in1k.py
+61
-0
configs/mae/mae_vit-base-p16_8xb512-amp-coslr-1600e_in1k.py
configs/mae/mae_vit-base-p16_8xb512-amp-coslr-1600e_in1k.py
+56
-0
configs/mae/mae_vit-base-p16_8xb512-amp-coslr-300e_in1k.py
configs/mae/mae_vit-base-p16_8xb512-amp-coslr-300e_in1k.py
+56
-0
configs/mae/mae_vit-base-p16_8xb512-amp-coslr-400e_in1k.py
configs/mae/mae_vit-base-p16_8xb512-amp-coslr-400e_in1k.py
+56
-0
configs/mae/mae_vit-base-p16_8xb512-amp-coslr-800e_in1k.py
configs/mae/mae_vit-base-p16_8xb512-amp-coslr-800e_in1k.py
+56
-0
configs/mae/mae_vit-huge-p14_8xb512-amp-coslr-1600e_in1k.py
configs/mae/mae_vit-huge-p14_8xb512-amp-coslr-1600e_in1k.py
+66
-0
configs/mae/mae_vit-large-p16_8xb512-amp-coslr-1600e_in1k.py
configs/mae/mae_vit-large-p16_8xb512-amp-coslr-1600e_in1k.py
+61
-0
configs/mae/mae_vit-large-p16_8xb512-amp-coslr-300e_in1k.py
configs/mae/mae_vit-large-p16_8xb512-amp-coslr-300e_in1k.py
+61
-0
configs/mae/mae_vit-large-p16_8xb512-amp-coslr-400e_in1k.py
configs/mae/mae_vit-large-p16_8xb512-amp-coslr-400e_in1k.py
+61
-0
No files found.
Too many changes to show.
To preserve performance only
1000 of 1000+
files are displayed.
Plain diff
Email patch
configs/mae/benchmarks/vit-huge-p14_8xb128-ds-coslr-50e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'./vit-huge-p14_8xb128-coslr-50e_in1k.py'
]
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'DeepSpeedOptimWrapper'
)
# training strategy
strategy
=
dict
(
type
=
'DeepSpeedStrategy'
,
fp16
=
dict
(
enabled
=
True
,
fp16_master_weights_and_grads
=
False
,
loss_scale
=
0
,
loss_scale_window
=
500
,
hysteresis
=
2
,
min_loss_scale
=
1
,
initial_scale_power
=
15
,
),
inputs_to_half
=
[
'inputs'
],
zero_optimization
=
dict
(
stage
=
1
,
allgather_partitions
=
True
,
reduce_scatter
=
True
,
allgather_bucket_size
=
50000000
,
reduce_bucket_size
=
50000000
,
overlap_comm
=
True
,
contiguous_gradients
=
True
,
cpu_offload
=
False
,
))
# runner which supports strategies
runner_type
=
'FlexibleRunner'
configs/mae/benchmarks/vit-huge-p14_8xb128-fsdp-coslr-50e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'./vit-huge-p14_8xb128-coslr-50e_in1k.py'
]
strategy
=
dict
(
type
=
'FSDPStrategy'
,
model_wrapper
=
dict
(
auto_wrap_policy
=
dict
(
type
=
'torch.distributed.fsdp.wrap.size_based_auto_wrap_policy'
,
min_num_params
=
1e7
)))
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
)
# runner which supports strategies
runner_type
=
'FlexibleRunner'
configs/mae/benchmarks/vit-large-p16_8xb128-coslr-50e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../../_base_/datasets/imagenet_bs64_swin_224.py'
,
'../../_base_/schedules/imagenet_bs1024_adamw_swin.py'
,
'../../_base_/default_runtime.py'
]
# dataset settings
train_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
),
dict
(
type
=
'RandomResizedCrop'
,
scale
=
224
,
backend
=
'pillow'
,
interpolation
=
'bicubic'
),
dict
(
type
=
'RandomFlip'
,
prob
=
0.5
,
direction
=
'horizontal'
),
dict
(
type
=
'RandAugment'
,
policies
=
'timm_increasing'
,
num_policies
=
2
,
total_level
=
10
,
magnitude_level
=
9
,
magnitude_std
=
0.5
,
hparams
=
dict
(
pad_val
=
[
104
,
116
,
124
],
interpolation
=
'bicubic'
)),
dict
(
type
=
'RandomErasing'
,
erase_prob
=
0.25
,
mode
=
'rand'
,
min_area_ratio
=
0.02
,
max_area_ratio
=
0.3333333333333333
,
fill_color
=
[
103.53
,
116.28
,
123.675
],
fill_std
=
[
57.375
,
57.12
,
58.395
]),
dict
(
type
=
'PackInputs'
)
]
test_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
),
dict
(
type
=
'ResizeEdge'
,
scale
=
256
,
edge
=
'short'
,
backend
=
'pillow'
,
interpolation
=
'bicubic'
),
dict
(
type
=
'CenterCrop'
,
crop_size
=
224
),
dict
(
type
=
'PackInputs'
)
]
train_dataloader
=
dict
(
batch_size
=
128
,
dataset
=
dict
(
pipeline
=
train_pipeline
))
val_dataloader
=
dict
(
batch_size
=
128
,
dataset
=
dict
(
pipeline
=
test_pipeline
))
test_dataloader
=
val_dataloader
# model settings
model
=
dict
(
type
=
'ImageClassifier'
,
backbone
=
dict
(
type
=
'VisionTransformer'
,
arch
=
'large'
,
img_size
=
224
,
patch_size
=
16
,
drop_path_rate
=
0.2
,
# set to 0.2
out_type
=
'avg_featmap'
,
final_norm
=
False
,
init_cfg
=
dict
(
type
=
'Pretrained'
,
checkpoint
=
''
,
prefix
=
'backbone.'
)),
neck
=
None
,
head
=
dict
(
type
=
'LinearClsHead'
,
num_classes
=
1000
,
in_channels
=
1024
,
loss
=
dict
(
type
=
'LabelSmoothLoss'
,
label_smooth_val
=
0.1
,
mode
=
'original'
),
init_cfg
=
[
dict
(
type
=
'TruncNormal'
,
layer
=
'Linear'
,
std
=
2e-5
)]),
train_cfg
=
dict
(
augments
=
[
dict
(
type
=
'Mixup'
,
alpha
=
0.8
),
dict
(
type
=
'CutMix'
,
alpha
=
1.0
)
]))
# optimizer wrapper
# learning rate and layer decay rate are set to 0.004 and 0.75 respectively
optim_wrapper
=
dict
(
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
4e-3
,
weight_decay
=
0.05
,
betas
=
(
0.9
,
0.999
)),
constructor
=
'LearningRateDecayOptimWrapperConstructor'
,
paramwise_cfg
=
dict
(
layer_decay_rate
=
0.75
,
custom_keys
=
{
'.ln'
:
dict
(
decay_mult
=
0.0
),
'.bias'
:
dict
(
decay_mult
=
0.0
),
'.cls_token'
:
dict
(
decay_mult
=
0.0
),
'.pos_embed'
:
dict
(
decay_mult
=
0.0
)
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
1e-4
,
by_epoch
=
True
,
begin
=
0
,
end
=
5
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
45
,
by_epoch
=
True
,
begin
=
5
,
end
=
50
,
eta_min
=
1e-6
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
by_epoch
=
True
,
max_epochs
=
50
)
default_hooks
=
dict
(
# save checkpoint per epoch.
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
configs/mae/benchmarks/vit-large-p16_8xb128-ds-coslr-50e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'./vit-large-p16_8xb128-coslr-50e_in1k.py'
]
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'DeepSpeedOptimWrapper'
)
# training strategy
strategy
=
dict
(
type
=
'DeepSpeedStrategy'
,
fp16
=
dict
(
enabled
=
True
,
fp16_master_weights_and_grads
=
False
,
loss_scale
=
0
,
loss_scale_window
=
500
,
hysteresis
=
2
,
min_loss_scale
=
1
,
initial_scale_power
=
15
,
),
inputs_to_half
=
[
'inputs'
],
zero_optimization
=
dict
(
stage
=
1
,
allgather_partitions
=
True
,
reduce_scatter
=
True
,
allgather_bucket_size
=
50000000
,
reduce_bucket_size
=
50000000
,
overlap_comm
=
True
,
contiguous_gradients
=
True
,
cpu_offload
=
False
,
))
# runner which supports strategies
runner_type
=
'FlexibleRunner'
configs/mae/benchmarks/vit-large-p16_8xb128-fsdp-coslr-50e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'./vit-large-p16_8xb128-coslr-50e_in1k.py'
]
strategy
=
dict
(
type
=
'FSDPStrategy'
,
model_wrapper
=
dict
(
auto_wrap_policy
=
dict
(
type
=
'torch.distributed.fsdp.wrap.size_based_auto_wrap_policy'
,
min_num_params
=
1e7
)))
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
)
# runner which supports strategies
runner_type
=
'FlexibleRunner'
configs/mae/benchmarks/vit-large-p16_8xb2048-linear-coslr-90e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../../_base_/datasets/imagenet_bs32_pil_resize.py'
,
'../../_base_/schedules/imagenet_bs1024_adamw_swin.py'
,
'../../_base_/default_runtime.py'
]
# dataset settings
train_dataloader
=
dict
(
batch_size
=
2048
,
drop_last
=
True
)
val_dataloader
=
dict
(
drop_last
=
False
)
test_dataloader
=
dict
(
drop_last
=
False
)
# model settings
model
=
dict
(
type
=
'ImageClassifier'
,
backbone
=
dict
(
type
=
'VisionTransformer'
,
arch
=
'large'
,
img_size
=
224
,
patch_size
=
16
,
frozen_stages
=
24
,
out_type
=
'cls_token'
,
final_norm
=
True
,
init_cfg
=
dict
(
type
=
'Pretrained'
,
checkpoint
=
''
,
prefix
=
'backbone.'
)),
neck
=
dict
(
type
=
'ClsBatchNormNeck'
,
input_features
=
1024
),
head
=
dict
(
type
=
'VisionTransformerClsHead'
,
num_classes
=
1000
,
in_channels
=
1024
,
loss
=
dict
(
type
=
'CrossEntropyLoss'
),
init_cfg
=
[
dict
(
type
=
'TruncNormal'
,
layer
=
'Linear'
,
std
=
0.01
)]))
# optimizer
optim_wrapper
=
dict
(
_delete_
=
True
,
type
=
'AmpOptimWrapper'
,
optimizer
=
dict
(
type
=
'LARS'
,
lr
=
6.4
,
weight_decay
=
0.0
,
momentum
=
0.9
))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
1e-4
,
by_epoch
=
True
,
begin
=
0
,
end
=
10
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
80
,
by_epoch
=
True
,
begin
=
10
,
end
=
90
,
eta_min
=
0.0
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
by_epoch
=
True
,
max_epochs
=
90
)
default_hooks
=
dict
(
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
),
logger
=
dict
(
type
=
'LoggerHook'
,
interval
=
10
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
configs/mae/mae_hivit-base-p16_8xb512-amp-coslr-1600e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../_base_/models/mae_hivit-base-p16.py'
,
'../_base_/datasets/imagenet_bs512_mae.py'
,
'../_base_/default_runtime.py'
,
]
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
loss_scale
=
'dynamic'
,
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
1.5e-4
*
4096
/
256
,
betas
=
(
0.9
,
0.95
),
weight_decay
=
0.05
),
paramwise_cfg
=
dict
(
custom_keys
=
{
'norm'
:
dict
(
decay_mult
=
0.0
),
'bias'
:
dict
(
decay_mult
=
0.0
),
'pos_embed'
:
dict
(
decay_mult
=
0.
),
'mask_token'
:
dict
(
decay_mult
=
0.
),
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
1e-4
,
by_epoch
=
True
,
begin
=
0
,
end
=
40
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
1560
,
by_epoch
=
True
,
begin
=
40
,
end
=
1600
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
1600
)
default_hooks
=
dict
(
# only keeps the latest 3 checkpoints
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
# auto resume
resume
=
True
find_unused_parameters
=
True
# NOTE: `auto_scale_lr` is for automatically scaling LR
# based on the actual training batch size.
auto_scale_lr
=
dict
(
base_batch_size
=
4096
)
configs/mae/mae_hivit-base-p16_8xb512-amp-coslr-400e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../_base_/models/mae_hivit-base-p16.py'
,
'../_base_/datasets/imagenet_bs512_mae.py'
,
'../_base_/default_runtime.py'
,
]
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
loss_scale
=
'dynamic'
,
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
1.5e-4
*
4096
/
256
,
betas
=
(
0.9
,
0.95
),
weight_decay
=
0.05
),
paramwise_cfg
=
dict
(
custom_keys
=
{
'norm'
:
dict
(
decay_mult
=
0.0
),
'bias'
:
dict
(
decay_mult
=
0.0
),
'pos_embed'
:
dict
(
decay_mult
=
0.
),
'mask_token'
:
dict
(
decay_mult
=
0.
),
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
1e-4
,
by_epoch
=
True
,
begin
=
0
,
end
=
40
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
360
,
by_epoch
=
True
,
begin
=
40
,
end
=
400
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
400
)
default_hooks
=
dict
(
# only keeps the latest 3 checkpoints
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
# auto resume
resume
=
True
find_unused_parameters
=
True
# NOTE: `auto_scale_lr` is for automatically scaling LR
# based on the actual training batch size.
auto_scale_lr
=
dict
(
base_batch_size
=
4096
)
configs/mae/mae_hivit-base-p16_8xb512-amp-coslr-800e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../_base_/models/mae_hivit-base-p16.py'
,
'../_base_/datasets/imagenet_bs512_mae.py'
,
'../_base_/default_runtime.py'
,
]
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
loss_scale
=
'dynamic'
,
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
1.5e-4
*
4096
/
256
,
betas
=
(
0.9
,
0.95
),
weight_decay
=
0.05
),
paramwise_cfg
=
dict
(
custom_keys
=
{
'norm'
:
dict
(
decay_mult
=
0.0
),
'bias'
:
dict
(
decay_mult
=
0.0
),
'pos_embed'
:
dict
(
decay_mult
=
0.
),
'mask_token'
:
dict
(
decay_mult
=
0.
),
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
1e-4
,
by_epoch
=
True
,
begin
=
0
,
end
=
40
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
760
,
by_epoch
=
True
,
begin
=
40
,
end
=
800
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
800
)
default_hooks
=
dict
(
# only keeps the latest 3 checkpoints
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
# auto resume
resume
=
True
find_unused_parameters
=
True
# NOTE: `auto_scale_lr` is for automatically scaling LR
# based on the actual training batch size.
auto_scale_lr
=
dict
(
base_batch_size
=
4096
)
configs/mae/mae_hivit-large-p16_8xb512-amp-coslr-1600e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../_base_/models/mae_hivit-base-p16.py'
,
'../_base_/datasets/imagenet_bs512_mae.py'
,
'../_base_/default_runtime.py'
,
]
# model settings
model
=
dict
(
backbone
=
dict
(
type
=
'MAEHiViT'
,
arch
=
'large'
),
neck
=
dict
(
type
=
'MAEPretrainDecoder'
,
embed_dim
=
768
))
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
loss_scale
=
'dynamic'
,
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
1.5e-4
*
4096
/
256
,
betas
=
(
0.9
,
0.95
),
weight_decay
=
0.05
),
paramwise_cfg
=
dict
(
custom_keys
=
{
'norm'
:
dict
(
decay_mult
=
0.0
),
'bias'
:
dict
(
decay_mult
=
0.0
),
'pos_embed'
:
dict
(
decay_mult
=
0.
),
'mask_token'
:
dict
(
decay_mult
=
0.
),
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.0001
,
by_epoch
=
True
,
begin
=
0
,
end
=
40
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
1560
,
by_epoch
=
True
,
begin
=
40
,
end
=
1600
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
1600
)
default_hooks
=
dict
(
# only keeps the latest 3 checkpoints
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
# auto resume
resume
=
True
find_unused_parameters
=
True
# NOTE: `auto_scale_lr` is for automatically scaling LR
# based on the actual training batch size.
auto_scale_lr
=
dict
(
base_batch_size
=
4096
)
configs/mae/mae_hivit-large-p16_8xb512-amp-coslr-400e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../_base_/models/mae_hivit-base-p16.py'
,
'../_base_/datasets/imagenet_bs512_mae.py'
,
'../_base_/default_runtime.py'
,
]
# model settings
model
=
dict
(
backbone
=
dict
(
type
=
'MAEHiViT'
,
arch
=
'large'
),
neck
=
dict
(
type
=
'MAEPretrainDecoder'
,
embed_dim
=
768
))
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
loss_scale
=
'dynamic'
,
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
1.5e-4
*
4096
/
256
,
betas
=
(
0.9
,
0.95
),
weight_decay
=
0.05
),
paramwise_cfg
=
dict
(
custom_keys
=
{
'norm'
:
dict
(
decay_mult
=
0.0
),
'bias'
:
dict
(
decay_mult
=
0.0
),
'pos_embed'
:
dict
(
decay_mult
=
0.
),
'mask_token'
:
dict
(
decay_mult
=
0.
),
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.0001
,
by_epoch
=
True
,
begin
=
0
,
end
=
40
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
360
,
by_epoch
=
True
,
begin
=
40
,
end
=
400
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
400
)
default_hooks
=
dict
(
# only keeps the latest 3 checkpoints
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
# auto resume
resume
=
True
find_unused_parameters
=
True
# NOTE: `auto_scale_lr` is for automatically scaling LR
# based on the actual training batch size.
auto_scale_lr
=
dict
(
base_batch_size
=
4096
)
configs/mae/mae_hivit-large-p16_8xb512-amp-coslr-800e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../_base_/models/mae_hivit-base-p16.py'
,
'../_base_/datasets/imagenet_bs512_mae.py'
,
'../_base_/default_runtime.py'
,
]
# model settings
model
=
dict
(
backbone
=
dict
(
type
=
'MAEHiViT'
,
arch
=
'large'
),
neck
=
dict
(
type
=
'MAEPretrainDecoder'
,
embed_dim
=
768
))
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
loss_scale
=
'dynamic'
,
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
1.5e-4
*
4096
/
256
,
betas
=
(
0.9
,
0.95
),
weight_decay
=
0.05
),
paramwise_cfg
=
dict
(
custom_keys
=
{
'norm'
:
dict
(
decay_mult
=
0.0
),
'bias'
:
dict
(
decay_mult
=
0.0
),
'pos_embed'
:
dict
(
decay_mult
=
0.
),
'mask_token'
:
dict
(
decay_mult
=
0.
),
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.0001
,
by_epoch
=
True
,
begin
=
0
,
end
=
40
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
760
,
by_epoch
=
True
,
begin
=
40
,
end
=
800
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
800
)
default_hooks
=
dict
(
# only keeps the latest 3 checkpoints
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
# auto resume
resume
=
True
find_unused_parameters
=
True
# NOTE: `auto_scale_lr` is for automatically scaling LR
# based on the actual training batch size.
auto_scale_lr
=
dict
(
base_batch_size
=
4096
)
configs/mae/mae_vit-base-p16_8xb512-amp-coslr-1600e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../_base_/models/mae_vit-base-p16.py'
,
'../_base_/datasets/imagenet_bs512_mae.py'
,
'../_base_/default_runtime.py'
,
]
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
loss_scale
=
'dynamic'
,
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
1.5e-4
*
4096
/
256
,
betas
=
(
0.9
,
0.95
),
weight_decay
=
0.05
),
paramwise_cfg
=
dict
(
custom_keys
=
{
'ln'
:
dict
(
decay_mult
=
0.0
),
'bias'
:
dict
(
decay_mult
=
0.0
),
'pos_embed'
:
dict
(
decay_mult
=
0.
),
'mask_token'
:
dict
(
decay_mult
=
0.
),
'cls_token'
:
dict
(
decay_mult
=
0.
)
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.0001
,
by_epoch
=
True
,
begin
=
0
,
end
=
40
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
1560
,
by_epoch
=
True
,
begin
=
40
,
end
=
1600
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
1600
)
default_hooks
=
dict
(
# only keeps the latest 3 checkpoints
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
# auto resume
resume
=
True
# NOTE: `auto_scale_lr` is for automatically scaling LR
# based on the actual training batch size.
auto_scale_lr
=
dict
(
base_batch_size
=
4096
)
configs/mae/mae_vit-base-p16_8xb512-amp-coslr-300e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../_base_/models/mae_vit-base-p16.py'
,
'../_base_/datasets/imagenet_bs512_mae.py'
,
'../_base_/default_runtime.py'
,
]
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
loss_scale
=
'dynamic'
,
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
1.5e-4
*
4096
/
256
,
betas
=
(
0.9
,
0.95
),
weight_decay
=
0.05
),
paramwise_cfg
=
dict
(
custom_keys
=
{
'ln'
:
dict
(
decay_mult
=
0.0
),
'bias'
:
dict
(
decay_mult
=
0.0
),
'pos_embed'
:
dict
(
decay_mult
=
0.
),
'mask_token'
:
dict
(
decay_mult
=
0.
),
'cls_token'
:
dict
(
decay_mult
=
0.
)
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.0001
,
by_epoch
=
True
,
begin
=
0
,
end
=
40
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
260
,
by_epoch
=
True
,
begin
=
40
,
end
=
300
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
300
)
default_hooks
=
dict
(
# only keeps the latest 3 checkpoints
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
# auto resume
resume
=
True
# NOTE: `auto_scale_lr` is for automatically scaling LR
# based on the actual training batch size.
auto_scale_lr
=
dict
(
base_batch_size
=
4096
)
configs/mae/mae_vit-base-p16_8xb512-amp-coslr-400e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../_base_/models/mae_vit-base-p16.py'
,
'../_base_/datasets/imagenet_bs512_mae.py'
,
'../_base_/default_runtime.py'
,
]
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
loss_scale
=
'dynamic'
,
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
1.5e-4
*
4096
/
256
,
betas
=
(
0.9
,
0.95
),
weight_decay
=
0.05
),
paramwise_cfg
=
dict
(
custom_keys
=
{
'ln'
:
dict
(
decay_mult
=
0.0
),
'bias'
:
dict
(
decay_mult
=
0.0
),
'pos_embed'
:
dict
(
decay_mult
=
0.
),
'mask_token'
:
dict
(
decay_mult
=
0.
),
'cls_token'
:
dict
(
decay_mult
=
0.
)
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
1e-4
,
by_epoch
=
True
,
begin
=
0
,
end
=
40
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
360
,
by_epoch
=
True
,
begin
=
40
,
end
=
400
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
400
)
default_hooks
=
dict
(
# only keeps the latest 3 checkpoints
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
# auto resume
resume
=
True
# NOTE: `auto_scale_lr` is for automatically scaling LR
# based on the actual training batch size.
auto_scale_lr
=
dict
(
base_batch_size
=
4096
)
configs/mae/mae_vit-base-p16_8xb512-amp-coslr-800e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../_base_/models/mae_vit-base-p16.py'
,
'../_base_/datasets/imagenet_bs512_mae.py'
,
'../_base_/default_runtime.py'
,
]
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
loss_scale
=
'dynamic'
,
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
1.5e-4
*
4096
/
256
,
betas
=
(
0.9
,
0.95
),
weight_decay
=
0.05
),
paramwise_cfg
=
dict
(
custom_keys
=
{
'ln'
:
dict
(
decay_mult
=
0.0
),
'bias'
:
dict
(
decay_mult
=
0.0
),
'pos_embed'
:
dict
(
decay_mult
=
0.
),
'mask_token'
:
dict
(
decay_mult
=
0.
),
'cls_token'
:
dict
(
decay_mult
=
0.
)
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.000000001
,
by_epoch
=
True
,
begin
=
0
,
end
=
40
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
760
,
by_epoch
=
True
,
begin
=
40
,
end
=
800
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
800
)
default_hooks
=
dict
(
# only keeps the latest 3 checkpoints
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
# auto resume
resume
=
True
# NOTE: `auto_scale_lr` is for automatically scaling LR
# based on the actual training batch size.
auto_scale_lr
=
dict
(
base_batch_size
=
4096
)
configs/mae/mae_vit-huge-p14_8xb512-amp-coslr-1600e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../_base_/models/mae_vit-base-p16.py'
,
'../_base_/datasets/imagenet_bs512_mae.py'
,
'../_base_/default_runtime.py'
,
]
# model settings
model
=
dict
(
backbone
=
dict
(
type
=
'MAEViT'
,
arch
=
'h'
,
patch_size
=
14
),
neck
=
dict
(
type
=
'MAEPretrainDecoder'
,
embed_dim
=
1280
,
patch_size
=
14
,
num_patches
=
256
),
head
=
dict
(
patch_size
=
14
))
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
loss_scale
=
'dynamic'
,
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
1.5e-4
*
4096
/
256
,
betas
=
(
0.9
,
0.95
),
weight_decay
=
0.05
),
paramwise_cfg
=
dict
(
custom_keys
=
{
'ln'
:
dict
(
decay_mult
=
0.0
),
'bias'
:
dict
(
decay_mult
=
0.0
),
'pos_embed'
:
dict
(
decay_mult
=
0.
),
'mask_token'
:
dict
(
decay_mult
=
0.
),
'cls_token'
:
dict
(
decay_mult
=
0.
)
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
1e-4
,
by_epoch
=
True
,
begin
=
0
,
end
=
40
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
1560
,
by_epoch
=
True
,
begin
=
40
,
end
=
1600
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
1600
)
default_hooks
=
dict
(
# only keeps the latest 3 checkpoints
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
# auto resume
resume
=
True
# NOTE: `auto_scale_lr` is for automatically scaling LR
# based on the actual training batch size.
auto_scale_lr
=
dict
(
base_batch_size
=
4096
)
configs/mae/mae_vit-large-p16_8xb512-amp-coslr-1600e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../_base_/models/mae_vit-base-p16.py'
,
'../_base_/datasets/imagenet_bs512_mae.py'
,
'../_base_/default_runtime.py'
,
]
# model settings
model
=
dict
(
backbone
=
dict
(
type
=
'MAEViT'
,
arch
=
'l'
),
neck
=
dict
(
type
=
'MAEPretrainDecoder'
,
embed_dim
=
1024
))
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
loss_scale
=
'dynamic'
,
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
1.5e-4
*
4096
/
256
,
betas
=
(
0.9
,
0.95
),
weight_decay
=
0.05
),
paramwise_cfg
=
dict
(
custom_keys
=
{
'ln'
:
dict
(
decay_mult
=
0.0
),
'bias'
:
dict
(
decay_mult
=
0.0
),
'pos_embed'
:
dict
(
decay_mult
=
0.
),
'mask_token'
:
dict
(
decay_mult
=
0.
),
'cls_token'
:
dict
(
decay_mult
=
0.
)
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.0001
,
by_epoch
=
True
,
begin
=
0
,
end
=
40
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
1560
,
by_epoch
=
True
,
begin
=
40
,
end
=
1600
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
1600
)
default_hooks
=
dict
(
# only keeps the latest 3 checkpoints
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
# auto resume
resume
=
True
# NOTE: `auto_scale_lr` is for automatically scaling LR
# based on the actual training batch size.
auto_scale_lr
=
dict
(
base_batch_size
=
4096
)
configs/mae/mae_vit-large-p16_8xb512-amp-coslr-300e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../_base_/models/mae_vit-base-p16.py'
,
'../_base_/datasets/imagenet_bs512_mae.py'
,
'../_base_/default_runtime.py'
,
]
# model settings
model
=
dict
(
backbone
=
dict
(
type
=
'MAEViT'
,
arch
=
'l'
),
neck
=
dict
(
type
=
'MAEPretrainDecoder'
,
embed_dim
=
1024
))
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
loss_scale
=
'dynamic'
,
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
1.5e-4
*
4096
/
256
,
betas
=
(
0.9
,
0.95
),
weight_decay
=
0.05
),
paramwise_cfg
=
dict
(
custom_keys
=
{
'ln'
:
dict
(
decay_mult
=
0.0
),
'bias'
:
dict
(
decay_mult
=
0.0
),
'pos_embed'
:
dict
(
decay_mult
=
0.
),
'mask_token'
:
dict
(
decay_mult
=
0.
),
'cls_token'
:
dict
(
decay_mult
=
0.
)
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
0.0001
,
by_epoch
=
True
,
begin
=
0
,
end
=
40
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
260
,
by_epoch
=
True
,
begin
=
40
,
end
=
300
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
300
)
default_hooks
=
dict
(
# only keeps the latest 3 checkpoints
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
# auto resume
resume
=
True
# NOTE: `auto_scale_lr` is for automatically scaling LR
# based on the actual training batch size.
auto_scale_lr
=
dict
(
base_batch_size
=
4096
)
configs/mae/mae_vit-large-p16_8xb512-amp-coslr-400e_in1k.py
0 → 100644
View file @
d476eeba
_base_
=
[
'../_base_/models/mae_vit-base-p16.py'
,
'../_base_/datasets/imagenet_bs512_mae.py'
,
'../_base_/default_runtime.py'
,
]
# model settings
model
=
dict
(
backbone
=
dict
(
type
=
'MAEViT'
,
arch
=
'l'
),
neck
=
dict
(
type
=
'MAEPretrainDecoder'
,
embed_dim
=
1024
))
# optimizer wrapper
optim_wrapper
=
dict
(
type
=
'AmpOptimWrapper'
,
loss_scale
=
'dynamic'
,
optimizer
=
dict
(
type
=
'AdamW'
,
lr
=
1.5e-4
*
4096
/
256
,
betas
=
(
0.9
,
0.95
),
weight_decay
=
0.05
),
paramwise_cfg
=
dict
(
custom_keys
=
{
'ln'
:
dict
(
decay_mult
=
0.0
),
'bias'
:
dict
(
decay_mult
=
0.0
),
'pos_embed'
:
dict
(
decay_mult
=
0.
),
'mask_token'
:
dict
(
decay_mult
=
0.
),
'cls_token'
:
dict
(
decay_mult
=
0.
)
}))
# learning rate scheduler
param_scheduler
=
[
dict
(
type
=
'LinearLR'
,
start_factor
=
1e-4
,
by_epoch
=
True
,
begin
=
0
,
end
=
40
,
convert_to_iter_based
=
True
),
dict
(
type
=
'CosineAnnealingLR'
,
T_max
=
360
,
by_epoch
=
True
,
begin
=
40
,
end
=
400
,
convert_to_iter_based
=
True
)
]
# runtime settings
train_cfg
=
dict
(
type
=
'EpochBasedTrainLoop'
,
max_epochs
=
400
)
default_hooks
=
dict
(
# only keeps the latest 3 checkpoints
checkpoint
=
dict
(
type
=
'CheckpointHook'
,
interval
=
1
,
max_keep_ckpts
=
3
))
randomness
=
dict
(
seed
=
0
,
diff_rank_seed
=
True
)
# auto resume
resume
=
True
# NOTE: `auto_scale_lr` is for automatically scaling LR
# based on the actual training batch size.
auto_scale_lr
=
dict
(
base_batch_size
=
4096
)
Prev
1
…
28
29
30
31
32
33
34
35
36
…
50
Next
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