From 8371434722e383013afa1d75d7a0ae5b435c6f9c Mon Sep 17 00:00:00 2001 From: Kaipeng Deng Date: Mon, 22 Mar 2021 20:43:22 +0800 Subject: [PATCH] polish weights (#2376) * unity weights --- ...ade_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml | 2 +- .../faster_rcnn_dcn_r101_vd_fpn_1x_coco.yml | 2 +- .../faster_rcnn_dcn_r50_vd_fpn_1x_coco.yml | 2 +- .../faster_rcnn_dcn_r50_vd_fpn_2x_coco.yml | 2 +- ...ter_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml | 2 +- .../dcn/mask_rcnn_dcn_r101_vd_fpn_1x_coco.yml | 2 +- .../dcn/mask_rcnn_dcn_r50_vd_fpn_2x_coco.yml | 2 +- ...ask_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml | 2 +- .../faster_rcnn/faster_rcnn_r101_1x_coco.yml | 2 +- .../faster_rcnn_r101_fpn_1x_coco.yml | 2 +- .../faster_rcnn_r101_fpn_2x_coco.yml | 2 +- .../faster_rcnn_r101_vd_fpn_1x_coco.yml | 2 +- .../faster_rcnn_r101_vd_fpn_2x_coco.yml | 2 +- .../faster_rcnn_r34_fpn_1x_coco.yml | 2 +- .../faster_rcnn_r34_vd_fpn_1x_coco.yml | 2 +- .../faster_rcnn_r50_vd_1x_coco.yml | 2 +- .../faster_rcnn_r50_vd_fpn_1x_coco.yml | 2 +- .../faster_rcnn_r50_vd_fpn_2x_coco.yml | 2 +- .../faster_rcnn_x101_vd_64x4d_fpn_1x_coco.yml | 2 +- .../faster_rcnn_x101_vd_64x4d_fpn_2x_coco.yml | 2 +- .../mask_rcnn/mask_rcnn_r101_fpn_1x_coco.yml | 2 +- .../mask_rcnn_r101_vd_fpn_1x_coco.yml | 2 +- .../mask_rcnn_r50_vd_fpn_1x_coco.yml | 2 +- .../mask_rcnn_r50_vd_fpn_2x_coco.yml | 2 +- .../mask_rcnn_x101_vd_64x4d_fpn_1x_coco.yml | 2 +- .../mask_rcnn_x101_vd_64x4d_fpn_2x_coco.yml | 2 +- .../configs/slim/prune/yolov3_prune_fpgm.yml | 2 +- .../slim/prune/yolov3_prune_l1_norm.yml | 2 +- .../slim/quant/yolov3_mobilenet_v1_qat.yml | 2 +- .../slim/quant/yolov3_mobilenet_v3_qat.yml | 2 +- dygraph/configs/ssd/_base_/ssd_vgg16_300.yml | 2 +- .../yolov3/yolov3_mobilenet_v1_roadsign.yml | 2 +- dygraph/ppdet/engine/trainer.py | 21 ++++----- dygraph/ppdet/utils/checkpoint.py | 46 +++++++++---------- dygraph/ppdet/utils/download.py | 2 +- dygraph/tools/eval.py | 2 +- dygraph/tools/export_model.py | 2 +- dygraph/tools/infer.py | 2 +- dygraph/tools/train.py | 16 +++---- 39 files changed, 74 insertions(+), 81 deletions(-) diff --git a/dygraph/configs/dcn/cascade_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml b/dygraph/configs/dcn/cascade_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml index 9476db8d6..19c5ad811 100644 --- a/dygraph/configs/dcn/cascade_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml +++ b/dygraph/configs/dcn/cascade_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'cascade_rcnn_dcn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNeXt101_vd_64x4d_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNeXt101_vd_64x4d_pretrained.pdparams weights: output/cascade_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/dcn/faster_rcnn_dcn_r101_vd_fpn_1x_coco.yml b/dygraph/configs/dcn/faster_rcnn_dcn_r101_vd_fpn_1x_coco.yml index 1a69fc7f4..274c1710b 100644 --- a/dygraph/configs/dcn/faster_rcnn_dcn_r101_vd_fpn_1x_coco.yml +++ b/dygraph/configs/dcn/faster_rcnn_dcn_r101_vd_fpn_1x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'faster_rcnn_dcn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet101_vd_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet101_vd_pretrained.pdparams weights: output/faster_rcnn_dcn_r101_vd_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/dcn/faster_rcnn_dcn_r50_vd_fpn_1x_coco.yml b/dygraph/configs/dcn/faster_rcnn_dcn_r50_vd_fpn_1x_coco.yml index 4290f566b..735edbbd1 100644 --- a/dygraph/configs/dcn/faster_rcnn_dcn_r50_vd_fpn_1x_coco.yml +++ b/dygraph/configs/dcn/faster_rcnn_dcn_r50_vd_fpn_1x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'faster_rcnn_dcn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet50_vd_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet50_vd_pretrained.pdparams weights: output/faster_rcnn_dcn_r50_vd_fpn_2x_coco/model_final ResNet: diff --git a/dygraph/configs/dcn/faster_rcnn_dcn_r50_vd_fpn_2x_coco.yml b/dygraph/configs/dcn/faster_rcnn_dcn_r50_vd_fpn_2x_coco.yml index b49ce95bb..685d96710 100644 --- a/dygraph/configs/dcn/faster_rcnn_dcn_r50_vd_fpn_2x_coco.yml +++ b/dygraph/configs/dcn/faster_rcnn_dcn_r50_vd_fpn_2x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'faster_rcnn_dcn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet50_vd_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet50_vd_pretrained.pdparams weights: output/faster_rcnn_dcn_r50_vd_fpn_2x_coco/model_final ResNet: diff --git a/dygraph/configs/dcn/faster_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml b/dygraph/configs/dcn/faster_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml index e826d6afe..2b09c7e15 100644 --- a/dygraph/configs/dcn/faster_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml +++ b/dygraph/configs/dcn/faster_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'faster_rcnn_dcn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNeXt101_vd_64x4d_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNeXt101_vd_64x4d_pretrained.pdparams weights: output/faster_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/dcn/mask_rcnn_dcn_r101_vd_fpn_1x_coco.yml b/dygraph/configs/dcn/mask_rcnn_dcn_r101_vd_fpn_1x_coco.yml index 6413ccc53..930bd8987 100644 --- a/dygraph/configs/dcn/mask_rcnn_dcn_r101_vd_fpn_1x_coco.yml +++ b/dygraph/configs/dcn/mask_rcnn_dcn_r101_vd_fpn_1x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'mask_rcnn_dcn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet101_vd_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet101_vd_pretrained.pdparams weights: output/mask_rcnn_dcn_r101_vd_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/dcn/mask_rcnn_dcn_r50_vd_fpn_2x_coco.yml b/dygraph/configs/dcn/mask_rcnn_dcn_r50_vd_fpn_2x_coco.yml index 4793dfd06..d36b5f56f 100644 --- a/dygraph/configs/dcn/mask_rcnn_dcn_r50_vd_fpn_2x_coco.yml +++ b/dygraph/configs/dcn/mask_rcnn_dcn_r50_vd_fpn_2x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'mask_rcnn_dcn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet50_vd_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet50_vd_pretrained.pdparams weights: output/mask_rcnn_dcn_r50_vd_fpn_2x_coco/model_final ResNet: diff --git a/dygraph/configs/dcn/mask_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml b/dygraph/configs/dcn/mask_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml index 72335c3c2..933e21f3f 100644 --- a/dygraph/configs/dcn/mask_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml +++ b/dygraph/configs/dcn/mask_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'mask_rcnn_dcn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNeXt101_vd_64x4d_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNeXt101_vd_64x4d_pretrained.pdparams weights: output/mask_rcnn_dcn_x101_vd_64x4d_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/faster_rcnn/faster_rcnn_r101_1x_coco.yml b/dygraph/configs/faster_rcnn/faster_rcnn_r101_1x_coco.yml index 93c3deace..8876426fb 100644 --- a/dygraph/configs/faster_rcnn/faster_rcnn_r101_1x_coco.yml +++ b/dygraph/configs/faster_rcnn/faster_rcnn_r101_1x_coco.yml @@ -2,7 +2,7 @@ _BASE_: [ 'faster_rcnn_r50_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet101_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet101_pretrained.pdparams weights: output/faster_rcnn_r101_1x_coco/model_final ResNet: diff --git a/dygraph/configs/faster_rcnn/faster_rcnn_r101_fpn_1x_coco.yml b/dygraph/configs/faster_rcnn/faster_rcnn_r101_fpn_1x_coco.yml index 94166c695..a2e5ee527 100644 --- a/dygraph/configs/faster_rcnn/faster_rcnn_r101_fpn_1x_coco.yml +++ b/dygraph/configs/faster_rcnn/faster_rcnn_r101_fpn_1x_coco.yml @@ -2,7 +2,7 @@ _BASE_: [ 'faster_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet101_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet101_pretrained.pdparams weights: output/faster_rcnn_r101_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/faster_rcnn/faster_rcnn_r101_fpn_2x_coco.yml b/dygraph/configs/faster_rcnn/faster_rcnn_r101_fpn_2x_coco.yml index 540f1fe6a..0a07dec75 100644 --- a/dygraph/configs/faster_rcnn/faster_rcnn_r101_fpn_2x_coco.yml +++ b/dygraph/configs/faster_rcnn/faster_rcnn_r101_fpn_2x_coco.yml @@ -2,7 +2,7 @@ _BASE_: [ 'faster_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet101_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet101_pretrained.pdparams weights: output/faster_rcnn_r101_fpn_2x_coco/model_final ResNet: diff --git a/dygraph/configs/faster_rcnn/faster_rcnn_r101_vd_fpn_1x_coco.yml b/dygraph/configs/faster_rcnn/faster_rcnn_r101_vd_fpn_1x_coco.yml index 38f564cef..32e308b86 100644 --- a/dygraph/configs/faster_rcnn/faster_rcnn_r101_vd_fpn_1x_coco.yml +++ b/dygraph/configs/faster_rcnn/faster_rcnn_r101_vd_fpn_1x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'faster_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet101_vd_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet101_vd_pretrained.pdparams weights: output/faster_rcnn_r101_vd_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/faster_rcnn/faster_rcnn_r101_vd_fpn_2x_coco.yml b/dygraph/configs/faster_rcnn/faster_rcnn_r101_vd_fpn_2x_coco.yml index 8ac6aca88..65b8226b9 100644 --- a/dygraph/configs/faster_rcnn/faster_rcnn_r101_vd_fpn_2x_coco.yml +++ b/dygraph/configs/faster_rcnn/faster_rcnn_r101_vd_fpn_2x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'faster_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet101_vd_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet101_vd_pretrained.pdparams weights: output/faster_rcnn_r101_vd_fpn_2x_coco/model_final ResNet: diff --git a/dygraph/configs/faster_rcnn/faster_rcnn_r34_fpn_1x_coco.yml b/dygraph/configs/faster_rcnn/faster_rcnn_r34_fpn_1x_coco.yml index b75bd40b3..f10835285 100644 --- a/dygraph/configs/faster_rcnn/faster_rcnn_r34_fpn_1x_coco.yml +++ b/dygraph/configs/faster_rcnn/faster_rcnn_r34_fpn_1x_coco.yml @@ -2,7 +2,7 @@ _BASE_: [ 'faster_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet34_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet34_pretrained.pdparams weights: output/faster_rcnn_r34_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/faster_rcnn/faster_rcnn_r34_vd_fpn_1x_coco.yml b/dygraph/configs/faster_rcnn/faster_rcnn_r34_vd_fpn_1x_coco.yml index c8ae2a681..5cf576b63 100644 --- a/dygraph/configs/faster_rcnn/faster_rcnn_r34_vd_fpn_1x_coco.yml +++ b/dygraph/configs/faster_rcnn/faster_rcnn_r34_vd_fpn_1x_coco.yml @@ -2,7 +2,7 @@ _BASE_: [ 'faster_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet34_vd_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet34_vd_pretrained.pdparams weights: output/faster_rcnn_r34_vd_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/faster_rcnn/faster_rcnn_r50_vd_1x_coco.yml b/dygraph/configs/faster_rcnn/faster_rcnn_r50_vd_1x_coco.yml index f0a0d8216..ac0e72049 100644 --- a/dygraph/configs/faster_rcnn/faster_rcnn_r50_vd_1x_coco.yml +++ b/dygraph/configs/faster_rcnn/faster_rcnn_r50_vd_1x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'faster_rcnn_r50_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet50_vd_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet50_vd_pretrained.pdparams weights: output/faster_rcnn_r50_vd_1x_coco/model_final ResNet: diff --git a/dygraph/configs/faster_rcnn/faster_rcnn_r50_vd_fpn_1x_coco.yml b/dygraph/configs/faster_rcnn/faster_rcnn_r50_vd_fpn_1x_coco.yml index bbbf44c53..6bf9d7101 100644 --- a/dygraph/configs/faster_rcnn/faster_rcnn_r50_vd_fpn_1x_coco.yml +++ b/dygraph/configs/faster_rcnn/faster_rcnn_r50_vd_fpn_1x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'faster_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet50_vd_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet50_vd_pretrained.pdparams weights: output/faster_rcnn_r50_vd_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/faster_rcnn/faster_rcnn_r50_vd_fpn_2x_coco.yml b/dygraph/configs/faster_rcnn/faster_rcnn_r50_vd_fpn_2x_coco.yml index 34f496e3f..7fc3a8835 100644 --- a/dygraph/configs/faster_rcnn/faster_rcnn_r50_vd_fpn_2x_coco.yml +++ b/dygraph/configs/faster_rcnn/faster_rcnn_r50_vd_fpn_2x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'faster_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet50_vd_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet50_vd_pretrained.pdparams weights: output/faster_rcnn_r50_vd_fpn_2x_coco/model_final ResNet: diff --git a/dygraph/configs/faster_rcnn/faster_rcnn_x101_vd_64x4d_fpn_1x_coco.yml b/dygraph/configs/faster_rcnn/faster_rcnn_x101_vd_64x4d_fpn_1x_coco.yml index 68c2c4e8a..20e38b762 100644 --- a/dygraph/configs/faster_rcnn/faster_rcnn_x101_vd_64x4d_fpn_1x_coco.yml +++ b/dygraph/configs/faster_rcnn/faster_rcnn_x101_vd_64x4d_fpn_1x_coco.yml @@ -2,7 +2,7 @@ _BASE_: [ 'faster_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNeXt101_vd_64x4d_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNeXt101_vd_64x4d_pretrained.pdparams weights: output/faster_rcnn_x101_vd_64x4d_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/faster_rcnn/faster_rcnn_x101_vd_64x4d_fpn_2x_coco.yml b/dygraph/configs/faster_rcnn/faster_rcnn_x101_vd_64x4d_fpn_2x_coco.yml index b4831719f..82e0b39f2 100644 --- a/dygraph/configs/faster_rcnn/faster_rcnn_x101_vd_64x4d_fpn_2x_coco.yml +++ b/dygraph/configs/faster_rcnn/faster_rcnn_x101_vd_64x4d_fpn_2x_coco.yml @@ -2,7 +2,7 @@ _BASE_: [ 'faster_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNeXt101_vd_64x4d_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNeXt101_vd_64x4d_pretrained.pdparams weights: output/faster_rcnn_x101_vd_64x4d_fpn_2x_coco/model_final ResNet: diff --git a/dygraph/configs/mask_rcnn/mask_rcnn_r101_fpn_1x_coco.yml b/dygraph/configs/mask_rcnn/mask_rcnn_r101_fpn_1x_coco.yml index 77f24e9d6..aae703c19 100644 --- a/dygraph/configs/mask_rcnn/mask_rcnn_r101_fpn_1x_coco.yml +++ b/dygraph/configs/mask_rcnn/mask_rcnn_r101_fpn_1x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'mask_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet101_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet101_pretrained.pdparams weights: output/mask_rcnn_r101_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/mask_rcnn/mask_rcnn_r101_vd_fpn_1x_coco.yml b/dygraph/configs/mask_rcnn/mask_rcnn_r101_vd_fpn_1x_coco.yml index 2205f1a61..58d7a7884 100644 --- a/dygraph/configs/mask_rcnn/mask_rcnn_r101_vd_fpn_1x_coco.yml +++ b/dygraph/configs/mask_rcnn/mask_rcnn_r101_vd_fpn_1x_coco.yml @@ -1,7 +1,7 @@ _BASE_: [ 'mask_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet101_vd_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet101_vd_pretrained.pdparams weights: output/mask_rcnn_r101_vd_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/mask_rcnn/mask_rcnn_r50_vd_fpn_1x_coco.yml b/dygraph/configs/mask_rcnn/mask_rcnn_r50_vd_fpn_1x_coco.yml index dcf62134e..d5387417b 100644 --- a/dygraph/configs/mask_rcnn/mask_rcnn_r50_vd_fpn_1x_coco.yml +++ b/dygraph/configs/mask_rcnn/mask_rcnn_r50_vd_fpn_1x_coco.yml @@ -2,7 +2,7 @@ _BASE_: [ 'mask_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet50_vd_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet50_vd_pretrained.pdparams weights: output/mask_rcnn_r50_vd_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/mask_rcnn/mask_rcnn_r50_vd_fpn_2x_coco.yml b/dygraph/configs/mask_rcnn/mask_rcnn_r50_vd_fpn_2x_coco.yml index 618fe5dc6..f85f0299c 100644 --- a/dygraph/configs/mask_rcnn/mask_rcnn_r50_vd_fpn_2x_coco.yml +++ b/dygraph/configs/mask_rcnn/mask_rcnn_r50_vd_fpn_2x_coco.yml @@ -2,7 +2,7 @@ _BASE_: [ 'mask_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNet50_vd_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNet50_vd_pretrained.pdparams weights: output/mask_rcnn_r50_vd_fpn_2x_coco/model_final ResNet: diff --git a/dygraph/configs/mask_rcnn/mask_rcnn_x101_vd_64x4d_fpn_1x_coco.yml b/dygraph/configs/mask_rcnn/mask_rcnn_x101_vd_64x4d_fpn_1x_coco.yml index 9c83e259d..c318e1d2a 100644 --- a/dygraph/configs/mask_rcnn/mask_rcnn_x101_vd_64x4d_fpn_1x_coco.yml +++ b/dygraph/configs/mask_rcnn/mask_rcnn_x101_vd_64x4d_fpn_1x_coco.yml @@ -2,7 +2,7 @@ _BASE_: [ 'mask_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNeXt101_vd_64x4d_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNeXt101_vd_64x4d_pretrained.pdparams weights: output/mask_rcnn_x101_vd_64x4d_fpn_1x_coco/model_final ResNet: diff --git a/dygraph/configs/mask_rcnn/mask_rcnn_x101_vd_64x4d_fpn_2x_coco.yml b/dygraph/configs/mask_rcnn/mask_rcnn_x101_vd_64x4d_fpn_2x_coco.yml index 07c097e9a..501c618a6 100644 --- a/dygraph/configs/mask_rcnn/mask_rcnn_x101_vd_64x4d_fpn_2x_coco.yml +++ b/dygraph/configs/mask_rcnn/mask_rcnn_x101_vd_64x4d_fpn_2x_coco.yml @@ -2,7 +2,7 @@ _BASE_: [ 'mask_rcnn_r50_fpn_1x_coco.yml', ] -pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/ResNeXt101_vd_64x4d_pretrained.tar +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/ResNeXt101_vd_64x4d_pretrained.pdparams weights: output/mask_rcnn_x101_vd_64x4d_fpn_2x_coco/model_final ResNet: diff --git a/dygraph/configs/slim/prune/yolov3_prune_fpgm.yml b/dygraph/configs/slim/prune/yolov3_prune_fpgm.yml index a1c72fde6..ed9495a73 100644 --- a/dygraph/configs/slim/prune/yolov3_prune_fpgm.yml +++ b/dygraph/configs/slim/prune/yolov3_prune_fpgm.yml @@ -1,5 +1,5 @@ # Weights of yolov3_mobilenet_v1_voc -pretrain_weights: https://paddlemodels.bj.bcebos.com/object_detection/dygraph/yolov3_mobilenet_v1_270e_voc.pdparams +pretrain_weights: https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_270e_voc.pdparams weight_type: resume slim: Pruner diff --git a/dygraph/configs/slim/prune/yolov3_prune_l1_norm.yml b/dygraph/configs/slim/prune/yolov3_prune_l1_norm.yml index 313ee541d..db2a616da 100644 --- a/dygraph/configs/slim/prune/yolov3_prune_l1_norm.yml +++ b/dygraph/configs/slim/prune/yolov3_prune_l1_norm.yml @@ -1,5 +1,5 @@ # Weights of yolov3_mobilenet_v1_voc -pretrain_weights: https://paddlemodels.bj.bcebos.com/object_detection/dygraph/yolov3_mobilenet_v1_270e_voc.pdparams +pretrain_weights: https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_270e_voc.pdparams weight_type: resume slim: Pruner diff --git a/dygraph/configs/slim/quant/yolov3_mobilenet_v1_qat.yml b/dygraph/configs/slim/quant/yolov3_mobilenet_v1_qat.yml index f168f40ea..dfa365c10 100644 --- a/dygraph/configs/slim/quant/yolov3_mobilenet_v1_qat.yml +++ b/dygraph/configs/slim/quant/yolov3_mobilenet_v1_qat.yml @@ -1,5 +1,5 @@ # Weights of yolov3_mobilenet_v1_coco -pretrain_weights: https://paddlemodels.bj.bcebos.com/object_detection/dygraph/yolov3_mobilenet_v1_270e_coco.pdparams +pretrain_weights: https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_270e_coco.pdparams weight_type: resume slim: QAT diff --git a/dygraph/configs/slim/quant/yolov3_mobilenet_v3_qat.yml b/dygraph/configs/slim/quant/yolov3_mobilenet_v3_qat.yml index 34a074498..288e72a10 100644 --- a/dygraph/configs/slim/quant/yolov3_mobilenet_v3_qat.yml +++ b/dygraph/configs/slim/quant/yolov3_mobilenet_v3_qat.yml @@ -1,5 +1,5 @@ # Weights of yolov3_mobilenet_v3_coco -pretrain_weights: https://paddlemodels.bj.bcebos.com/object_detection/dygraph/yolov3_mobilenet_v3_large_270e_coco.pdparams +pretrain_weights: https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v3_large_270e_coco.pdparams weight_type: resume slim: QAT diff --git a/dygraph/configs/ssd/_base_/ssd_vgg16_300.yml b/dygraph/configs/ssd/_base_/ssd_vgg16_300.yml index 3b9f039a5..59821054d 100644 --- a/dygraph/configs/ssd/_base_/ssd_vgg16_300.yml +++ b/dygraph/configs/ssd/_base_/ssd_vgg16_300.yml @@ -1,5 +1,5 @@ architecture: SSD -pretrain_weights: https://paddlemodels.bj.bcebos.com/object_detection/dygraph/VGG16_caffe_pretrained.pdparams +pretrain_weights: https://paddledet.bj.bcebos.com/models/pretrained/VGG16_caffe_pretrained.pdparams # Model Achitecture SSD: diff --git a/dygraph/configs/yolov3/yolov3_mobilenet_v1_roadsign.yml b/dygraph/configs/yolov3/yolov3_mobilenet_v1_roadsign.yml index 36936e197..c79397ddd 100644 --- a/dygraph/configs/yolov3/yolov3_mobilenet_v1_roadsign.yml +++ b/dygraph/configs/yolov3/yolov3_mobilenet_v1_roadsign.yml @@ -4,7 +4,7 @@ _BASE_: [ '_base_/yolov3_mobilenet_v1.yml', '_base_/yolov3_reader.yml', ] -pretrain_weights: https://paddlemodels.bj.bcebos.com/object_detection/dygraph/yolov3_mobilenet_v1_270e_coco.pdparams +pretrain_weights: https://paddledet.bj.bcebos.com/models/yolov3_mobilenet_v1_270e_coco.pdparams norm_type: sync_bn weights: output/yolov3_mobilenet_v1_roadsign/model_final metric: VOC diff --git a/dygraph/ppdet/engine/trainer.py b/dygraph/ppdet/engine/trainer.py index 2d409805a..57c16e4b8 100644 --- a/dygraph/ppdet/engine/trainer.py +++ b/dygraph/ppdet/engine/trainer.py @@ -58,7 +58,7 @@ class Trainer(object): # model slim build if 'slim' in cfg and cfg.slim: if self.mode == 'train': - self.load_weights(cfg.pretrain_weights, cfg.weight_type) + self.load_weights(cfg.pretrain_weights) self.slim = create(cfg.slim) self.slim(self.model) @@ -174,17 +174,14 @@ class Trainer(object): "metrics shoule be instances of subclass of Metric" self._metrics.extend(metrics) - def load_weights(self, weights, weight_type='pretrain'): - assert weight_type in ['pretrain', 'resume', 'finetune'], \ - "weight_type can only be 'pretrain', 'resume', 'finetune'" - if weight_type == 'resume': - self.start_epoch = load_weight(self.model, weights, self.optimizer) - logger.debug("Resume weights of epoch {}".format(self.start_epoch)) - else: - self.start_epoch = 0 - load_pretrain_weight(self.model, weights, weight_type) - logger.debug("Load {} weights {} to start training".format( - weight_type, weights)) + def load_weights(self, weights): + self.start_epoch = 0 + load_pretrain_weight(self.model, weights) + logger.debug("Load weights {} to start training".format(weights)) + + def resume_weights(self, weights): + self.start_epoch = load_weight(self.model, weights, self.optimizer) + logger.debug("Resume weights of epoch {}".format(self.start_epoch)) def train(self, validate=False): assert self.mode == 'train', "Model not in 'train' mode" diff --git a/dygraph/ppdet/utils/checkpoint.py b/dygraph/ppdet/utils/checkpoint.py index 193f415ad..f70cad4fc 100644 --- a/dygraph/ppdet/utils/checkpoint.py +++ b/dygraph/ppdet/utils/checkpoint.py @@ -123,8 +123,7 @@ def load_weight(model, weight, optimizer=None): assert incorrect_keys == 0, "Load weight {} incorrectly, \ {} keys unmatched, please check again.".format(weight, incorrect_keys) - logger.info('Finish loading model weight parameter: {}'.format( - pdparam_path)) + logger.info('Finish resuming model weights: {}'.format(pdparam_path)) model.set_dict(model_weight) @@ -142,9 +141,7 @@ def load_weight(model, weight, optimizer=None): return last_epoch -def load_pretrain_weight(model, pretrain_weight, weight_type='pretrain'): - - assert weight_type in ['pretrain', 'finetune'] +def load_pretrain_weight(model, pretrain_weight): if is_url(pretrain_weight): pretrain_weight = get_weights_path_dist(pretrain_weight) @@ -158,24 +155,27 @@ def load_pretrain_weight(model, pretrain_weight, weight_type='pretrain'): model_dict = model.state_dict() - param_state_dict = paddle.load(path + '.pdparams') - if weight_type == 'pretrain': - model.backbone.set_dict(param_state_dict) - else: - ignore_set = set() - for name, weight in model_dict.items(): - if name in param_state_dict.keys(): - if weight.shape != list(param_state_dict[name].shape): - logger.info( - '{} not used, shape {} unmatched with {} in model.'. - format(name, - list(param_state_dict[name].shape), - weight.shape)) - param_state_dict.pop(name, None) - else: - logger.info('Lack weight: {}'.format(name)) - model.set_dict(param_state_dict) - return + weights_path = path + '.pdparams' + param_state_dict = paddle.load(weights_path) + ignore_set = set() + lack_modules = set() + for name, weight in model_dict.items(): + if name in param_state_dict.keys(): + if weight.shape != list(param_state_dict[name].shape): + logger.info( + '{} not used, shape {} unmatched with {} in model.'.format( + name, list(param_state_dict[name].shape), weight.shape)) + param_state_dict.pop(name, None) + else: + lack_modules.add(name.split('.')[0]) + logger.debug('Lack weights: {}'.format(name)) + + if len(lack_modules) > 0: + logger.info('Lack weights of modules: {}'.format(', '.join( + list(lack_modules)))) + + model.set_dict(param_state_dict) + logger.info('Finish loading model weights: {}'.format(weights_path)) def save_model(model, optimizer, save_dir, save_name, last_epoch): diff --git a/dygraph/ppdet/utils/download.py b/dygraph/ppdet/utils/download.py index 858ce035d..3b50ddd01 100644 --- a/dygraph/ppdet/utils/download.py +++ b/dygraph/ppdet/utils/download.py @@ -92,7 +92,7 @@ DATASETS = { DOWNLOAD_RETRY_LIMIT = 3 -PPDET_WEIGHTS_DOWNLOAD_URL_PREFIX = 'https://paddlemodels.bj.bcebos.com/object_detection/' +PPDET_WEIGHTS_DOWNLOAD_URL_PREFIX = 'https://paddledet.bj.bcebos.com/' def parse_url(url): diff --git a/dygraph/tools/eval.py b/dygraph/tools/eval.py index 877d06322..8b0064762 100755 --- a/dygraph/tools/eval.py +++ b/dygraph/tools/eval.py @@ -93,7 +93,7 @@ def run(FLAGS, cfg): trainer = Trainer(cfg, mode='eval') # load weights - trainer.load_weights(cfg.weights, 'resume') + trainer.load_weights(cfg.weights) # training trainer.evaluate() diff --git a/dygraph/tools/export_model.py b/dygraph/tools/export_model.py index 656c362e4..d04422873 100644 --- a/dygraph/tools/export_model.py +++ b/dygraph/tools/export_model.py @@ -62,7 +62,7 @@ def run(FLAGS, cfg): trainer = Trainer(cfg, mode='test') # load weights - trainer.load_weights(cfg.weights, 'resume') + trainer.load_weights(cfg.weights) # export model trainer.export(FLAGS.output_dir) diff --git a/dygraph/tools/infer.py b/dygraph/tools/infer.py index 06a11c28e..9226e1eea 100755 --- a/dygraph/tools/infer.py +++ b/dygraph/tools/infer.py @@ -114,7 +114,7 @@ def run(FLAGS, cfg): trainer = Trainer(cfg, mode='test') # load weights - trainer.load_weights(cfg.weights, 'resume') + trainer.load_weights(cfg.weights) # get inference images images = get_test_images(FLAGS.infer_dir, FLAGS.infer_img) diff --git a/dygraph/tools/train.py b/dygraph/tools/train.py index 9fd55706c..e7efcd07a 100755 --- a/dygraph/tools/train.py +++ b/dygraph/tools/train.py @@ -43,17 +43,13 @@ logger = setup_logger('train') def parse_args(): parser = cli.ArgsParser() - parser.add_argument( - "--weight_type", - default='pretrain', - type=str, - help="Loading Checkpoints only support 'pretrain', 'finetune', 'resume'." - ) parser.add_argument( "--eval", action='store_true', default=False, help="Whether to perform evaluation in train") + parser.add_argument( + "-r", "--resume", default=None, help="weights path for resume") parser.add_argument( "--slim_config", default=None, @@ -101,8 +97,10 @@ def run(FLAGS, cfg): trainer = Trainer(cfg, mode='train') # load weights - if not FLAGS.slim_config and 'pretrain_weights' in cfg and cfg.pretrain_weights: - trainer.load_weights(cfg.pretrain_weights, FLAGS.weight_type) + if FLAGS.resume is not None: + trainer.resume_weights(FLAGS.resume) + elif not FLAGS.slim_config and 'pretrain_weights' in cfg and cfg.pretrain_weights: + trainer.load_weights(cfg.pretrain_weights) # training trainer.train(FLAGS.eval) @@ -120,8 +118,6 @@ def main(): if FLAGS.slim_config: slim_cfg = load_config(FLAGS.slim_config) merge_config(slim_cfg) - if 'weight_type' not in cfg: - cfg.weight_type = FLAGS.weight_type check.check_config(cfg) check.check_gpu(cfg.use_gpu) check.check_version() -- GitLab