# Copyright (c) OpenMMLab. All rights reserved. model = dict( type='ImageClassifier', backbone=dict( type='ResNet', depth=18, num_stages=4, out_indices=(3, ), style='pytorch'), neck=dict(type='GlobalAveragePooling'), head=dict( type='LinearClsHead', num_classes=1000, in_channels=512, loss=dict(type='CrossEntropyLoss', loss_weight=1.0), topk=(1, 5))) dataset_type = 'ImageNet' data_preprocessor = dict( num_classes=1000, mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) train_pipeline = [ dict(type='LoadImageFromFile'), dict(type='RandomResizedCrop', scale=224), dict(type='RandomFlip', prob=0.5, direction='horizontal'), dict(type='PackClsInputs') ] test_pipeline = [ dict(type='LoadImageFromFile'), dict(type='ResizeEdge', scale=256, edge='short'), dict(type='CenterCrop', crop_size=224), dict(type='PackClsInputs') ] train_dataloader = dict( batch_size=2, num_workers=1, dataset=dict( type='ImageNet', data_root='tests/test_codebase/test_mmcls/data/imgs', ann_file='ann.txt', data_prefix='train', pipeline=[ dict(type='LoadImageFromFile'), dict(type='RandomResizedCrop', scale=224), dict(type='RandomFlip', prob=0.5, direction='horizontal'), dict(type='PackClsInputs') ]), sampler=dict(type='DefaultSampler', shuffle=True)) val_dataloader = dict( batch_size=2, num_workers=1, dataset=dict( type='ImageNet', data_root='tests/test_codebase/test_mmcls/data/imgs', ann_file='ann.txt', data_prefix='val', pipeline=[ dict(type='LoadImageFromFile'), dict(type='ResizeEdge', scale=256, edge='short'), dict(type='CenterCrop', crop_size=224), dict(type='PackClsInputs') ]), sampler=dict(type='DefaultSampler', shuffle=False)) val_evaluator = dict(type='Accuracy', topk=(1, 5)) test_dataloader = dict( batch_size=2, num_workers=1, dataset=dict( type='ImageNet', data_root='tests/test_codebase/test_mmcls/data/imgs', ann_file='ann.txt', data_prefix='val', pipeline=[ dict(type='LoadImageFromFile'), dict(type='ResizeEdge', scale=256, edge='short'), dict(type='CenterCrop', crop_size=224), dict(type='PackClsInputs') ]), sampler=dict(type='DefaultSampler', shuffle=False)) test_evaluator = dict(type='Accuracy', topk=(1, 5)) optim_wrapper = dict( optimizer=dict(type='SGD', lr=0.1, momentum=0.9, weight_decay=0.0001)) param_scheduler = dict( type='MultiStepLR', by_epoch=True, milestones=[30, 60, 90], gamma=0.1) train_cfg = dict(by_epoch=True, max_epochs=100, val_interval=1) val_cfg = dict() test_cfg = dict() auto_scale_lr = dict(base_batch_size=256) default_scope = 'mmcls' default_hooks = dict( timer=dict(type='IterTimerHook'), logger=dict(type='LoggerHook', interval=100), param_scheduler=dict(type='ParamSchedulerHook'), checkpoint=dict(type='CheckpointHook', interval=1), sampler_seed=dict(type='DistSamplerSeedHook'), visualization=dict(type='VisualizationHook', enable=False)) env_cfg = dict( cudnn_benchmark=False, mp_cfg=dict(mp_start_method='fork', opencv_num_threads=0), dist_cfg=dict(backend='nccl')) vis_backends = [dict(type='LocalVisBackend')] visualizer = dict( type='ClsVisualizer', vis_backends=[dict(type='LocalVisBackend')]) log_level = 'INFO' load_from = None resume = False randomness = dict(seed=None, deterministic=False)