From e272b4e9fecd80c5924085044f3a58117a21f378 Mon Sep 17 00:00:00 2001 From: gzalessk Date: Mon, 14 Mar 2022 23:39:12 +0300 Subject: [PATCH 1/5] add person detection templates, update configs, compression configs --- .../compression_config.json | 6 +- .../person-detection-0200/model.py | 8 +-- .../template_experimental.yaml | 56 +++++++++++++++++++ .../compression_config.json | 6 +- .../person-detection-0201/model.py | 8 +-- .../template_experimental.yaml | 56 +++++++++++++++++++ .../compression_config.json | 6 +- .../person-detection-0202/model.py | 8 +-- .../template_experimental.yaml | 56 +++++++++++++++++++ .../compression_config.json | 6 +- .../person-detection-0203/model.py | 8 +-- .../template_experimental.yaml | 56 +++++++++++++++++++ 12 files changed, 248 insertions(+), 32 deletions(-) create mode 100644 configs/ote/person-detection/person-detection-0200/template_experimental.yaml create mode 100644 configs/ote/person-detection/person-detection-0201/template_experimental.yaml create mode 100644 configs/ote/person-detection/person-detection-0202/template_experimental.yaml create mode 100644 configs/ote/person-detection/person-detection-0203/template_experimental.yaml diff --git a/configs/ote/person-detection/person-detection-0200/compression_config.json b/configs/ote/person-detection/person-detection-0200/compression_config.json index 1fc6868979d..fa7b87948a2 100644 --- a/configs/ote/person-detection/person-detection-0200/compression_config.json +++ b/configs/ote/person-detection/person-detection-0200/compression_config.json @@ -21,11 +21,9 @@ "momentum": 0.9, "weight_decay": 0.0005 }, - "lr_config": { - "_delete_": true, - "policy": "fixed" + "runner": { + "max_epochs": 2 }, - "total_epochs": 2, "nncf_config": { "compression": [ { diff --git a/configs/ote/person-detection/person-detection-0200/model.py b/configs/ote/person-detection/person-detection-0200/model.py index b5ec4926c0a..ce8523c41c8 100644 --- a/configs/ote/person-detection/person-detection-0200/model.py +++ b/configs/ote/person-detection/person-detection-0200/model.py @@ -152,10 +152,10 @@ ]) # yapf:enable # runtime settings -total_epochs = 20 +runner = dict(type='EpochBasedRunner', max_epochs=20) dist_params = dict(backend='nccl') log_level = 'INFO' -work_dir = 'outputs/person-detection-0200' -load_from = None +work_dir = 'output' +load_from = 'https://download.01.org/opencv/openvino_training_extensions/models/object_detection/v2/person-detection-0200-1.pth' resume_from = None -workflow = [('train', 1)] +workflow = [('train', 1)] \ No newline at end of file diff --git a/configs/ote/person-detection/person-detection-0200/template_experimental.yaml b/configs/ote/person-detection/person-detection-0200/template_experimental.yaml new file mode 100644 index 00000000000..86b1eb4c56d --- /dev/null +++ b/configs/ote/person-detection/person-detection-0200/template_experimental.yaml @@ -0,0 +1,56 @@ +# Description. +model_template_id: Person_Detection_0200 +name: person-detection-0200 +task_type: DETECTION +task_family: VISION +instantiation: "CLASS" +summary: Fastest Person Detection model for large and simple objects (MobileNetV2-SSD). +application: + ~ + +# Algo backend. +framework: OTEDetection v2.9.1 + +# Task implementations. +entrypoints: + base: mmdet.apis.ote.apis.detection.OTEDetectionTrainingTask + openvino: mmdet.apis.ote.apis.detection.OpenVINODetectionTask + nncf: mmdet.apis.ote.apis.detection.OTEDetectionNNCFTask + +# Capabilities. +capabilities: + - compute_representations + +# Hyperparameters. +hyper_parameters: + base_path: ../../../../mmdet/apis/ote/apis/detection/configuration.yaml + parameter_overrides: + learning_parameters: + batch_size: + default_value: 122 + learning_rate: + default_value: 0.05 + learning_rate_warmup_iters: + default_value: 1200 + num_iters: + default_value: 20 + nncf_optimization: + enable_quantization: + default_value: false + enable_pruning: + default_value: false + maximal_accuracy_degradation: + default_value: 0.01 + +# Training resources. +max_nodes: 1 +training_targets: + - GPU + - CPU + +# Stats. +gigaflops: 0.82 #to be checked with model-analyzer +size: 1.83 + +# Obsolete +# gpu_nums: 2 diff --git a/configs/ote/person-detection/person-detection-0201/compression_config.json b/configs/ote/person-detection/person-detection-0201/compression_config.json index 3d5064b6cc0..35a22a6b267 100644 --- a/configs/ote/person-detection/person-detection-0201/compression_config.json +++ b/configs/ote/person-detection/person-detection-0201/compression_config.json @@ -21,11 +21,9 @@ "momentum": 0.9, "weight_decay": 0.0005 }, - "lr_config": { - "_delete_": true, - "policy": "fixed" + "runner": { + "max_epochs": 2 }, - "total_epochs": 2, "nncf_config": { "compression": [ { diff --git a/configs/ote/person-detection/person-detection-0201/model.py b/configs/ote/person-detection/person-detection-0201/model.py index 4e25a54727c..24fceb03511 100644 --- a/configs/ote/person-detection/person-detection-0201/model.py +++ b/configs/ote/person-detection/person-detection-0201/model.py @@ -152,10 +152,10 @@ ]) # yapf:enable # runtime settings -total_epochs = 20 +runner = dict(type='EpochBasedRunner', max_epochs=20) dist_params = dict(backend='nccl') log_level = 'INFO' -work_dir = 'outputs/person-detection-0201' -load_from = None +work_dir = 'output' +load_from = 'https://download.01.org/opencv/openvino_training_extensions/models/object_detection/v2/person-detection-0201-1.pth' resume_from = None -workflow = [('train', 1)] +workflow = [('train', 1)] \ No newline at end of file diff --git a/configs/ote/person-detection/person-detection-0201/template_experimental.yaml b/configs/ote/person-detection/person-detection-0201/template_experimental.yaml new file mode 100644 index 00000000000..330003a6c97 --- /dev/null +++ b/configs/ote/person-detection/person-detection-0201/template_experimental.yaml @@ -0,0 +1,56 @@ +# Description. +model_template_id: Person_Detection_0201 +name: person-detection-0201 +task_type: DETECTION +task_family: VISION +instantiation: "CLASS" +summary: Fast Person Detection models (MobileNetV2-SSD). +application: + ~ + +# Algo backend. +framework: OTEDetection v2.9.1 + +# Task implementations. +entrypoints: + base: mmdet.apis.ote.apis.detection.OTEDetectionTrainingTask + openvino: mmdet.apis.ote.apis.detection.OpenVINODetectionTask + nncf: mmdet.apis.ote.apis.detection.OTEDetectionNNCFTask + +# Capabilities. +capabilities: + - compute_representations + +# Hyperparameters. +hyper_parameters: + base_path: ../../../../mmdet/apis/ote/apis/detection/configuration.yaml + parameter_overrides: + learning_parameters: + batch_size: + default_value: 84 + learning_rate: + default_value: 0.05 + learning_rate_warmup_iters: + default_value: 1200 + num_iters: + default_value: 20 + nncf_optimization: + enable_quantization: + default_value: false + enable_pruning: + default_value: false + maximal_accuracy_degradation: + default_value: 0.01 + +# Training resources. +max_nodes: 1 +training_targets: + - GPU + - CPU + +# Stats. +gigaflops: 1.84 #to be checked with model-analyzer +size: 1.83 + +# Obsolete +# gpu_nums: 4 diff --git a/configs/ote/person-detection/person-detection-0202/compression_config.json b/configs/ote/person-detection/person-detection-0202/compression_config.json index 5a1ceafc2df..390711bdeec 100644 --- a/configs/ote/person-detection/person-detection-0202/compression_config.json +++ b/configs/ote/person-detection/person-detection-0202/compression_config.json @@ -21,11 +21,9 @@ "momentum": 0.9, "weight_decay": 0.0005 }, - "lr_config": { - "_delete_": true, - "policy": "fixed" + "runner": { + "max_epochs": 2 }, - "total_epochs": 2, "nncf_config": { "compression": [ { diff --git a/configs/ote/person-detection/person-detection-0202/model.py b/configs/ote/person-detection/person-detection-0202/model.py index 735fb336eeb..8664da7927c 100644 --- a/configs/ote/person-detection/person-detection-0202/model.py +++ b/configs/ote/person-detection/person-detection-0202/model.py @@ -152,10 +152,10 @@ ]) # yapf:enable # runtime settings -total_epochs = 20 +runner = dict(type='EpochBasedRunner', max_epochs=20) dist_params = dict(backend='nccl') log_level = 'INFO' -work_dir = 'outputs/person-detection-0202' -load_from = None +work_dir = 'output' +load_from = 'https://download.01.org/opencv/openvino_training_extensions/models/object_detection/v2/person-detection-0202-1.pth' resume_from = None -workflow = [('train', 1)] +workflow = [('train', 1)] \ No newline at end of file diff --git a/configs/ote/person-detection/person-detection-0202/template_experimental.yaml b/configs/ote/person-detection/person-detection-0202/template_experimental.yaml new file mode 100644 index 00000000000..c5322e70ef4 --- /dev/null +++ b/configs/ote/person-detection/person-detection-0202/template_experimental.yaml @@ -0,0 +1,56 @@ +# Description. +model_template_id: Person_Detection_0202 +name: person-detection-0202 +task_type: DETECTION +task_family: VISION +instantiation: "CLASS" +summary: Medium Person Detection model (MobileNetV2-SSD). +application: + ~ + +# Algo backend. +framework: OTEDetection v2.9.1 + +# Task implementations. +entrypoints: + base: mmdet.apis.ote.apis.detection.OTEDetectionTrainingTask + openvino: mmdet.apis.ote.apis.detection.OpenVINODetectionTask + nncf: mmdet.apis.ote.apis.detection.OTEDetectionNNCFTask + +# Capabilities. +capabilities: + - compute_representations + +# Hyperparameters. +hyper_parameters: + base_path: ../../../../mmdet/apis/ote/apis/detection/configuration.yaml + parameter_overrides: + learning_parameters: + batch_size: + default_value: 30 + learning_rate: + default_value: 0.05 + learning_rate_warmup_iters: + default_value: 1200 + num_iters: + default_value: 20 + nncf_optimization: + enable_quantization: + default_value: false + enable_pruning: + default_value: false + maximal_accuracy_degradation: + default_value: 0.01 + +# Training resources. +max_nodes: 1 +training_targets: + - GPU + - CPU + +# Stats. +gigaflops: 2.52 #to be checked with model-analyzer +size: 1.83 + +# Obsolete +# gpu_nums: 2 diff --git a/configs/ote/person-detection/person-detection-0203/compression_config.json b/configs/ote/person-detection/person-detection-0203/compression_config.json index 8ff1f9b4ba6..671a8e47ac3 100755 --- a/configs/ote/person-detection/person-detection-0203/compression_config.json +++ b/configs/ote/person-detection/person-detection-0203/compression_config.json @@ -21,11 +21,9 @@ "momentum": 0.9, "weight_decay": 0.0005 }, - "lr_config": { - "_delete_": true, - "policy": "fixed" + "runner": { + "max_epochs": 1 }, - "total_epochs": 1, "nncf_config": { "compression": [ { diff --git a/configs/ote/person-detection/person-detection-0203/model.py b/configs/ote/person-detection/person-detection-0203/model.py index b0257dd96f6..27e41dd5a31 100644 --- a/configs/ote/person-detection/person-detection-0203/model.py +++ b/configs/ote/person-detection/person-detection-0203/model.py @@ -148,10 +148,10 @@ ]) # yapf:enable # runtime settings -total_epochs = 20 +runner = dict(type='EpochBasedRunner', max_epochs=20) dist_params = dict(backend='nccl') log_level = 'INFO' -work_dir = 'outputs/person-detection-0203' -load_from = None +work_dir = 'output' +load_from = 'https://download.01.org/opencv/openvino_training_extensions/models/object_detection/v2/person-detection-0203.pth' resume_from = None -workflow = [('train', 1)] +workflow = [('train', 1)] \ No newline at end of file diff --git a/configs/ote/person-detection/person-detection-0203/template_experimental.yaml b/configs/ote/person-detection/person-detection-0203/template_experimental.yaml new file mode 100644 index 00000000000..28a0fa5b2ea --- /dev/null +++ b/configs/ote/person-detection/person-detection-0203/template_experimental.yaml @@ -0,0 +1,56 @@ +# Description. +model_template_id: Person_Detection_0203 +name: person-detection-0203 +task_type: DETECTION +task_family: VISION +instantiation: "CLASS" +summary: Medium Person Detection model for small and hard objects (MobileNetV2-ATSS). +application: + ~ + +# Algo backend. +framework: OTEDetection v2.9.1 + +# Task implementations. +entrypoints: + base: mmdet.apis.ote.apis.detection.OTEDetectionTrainingTask + openvino: mmdet.apis.ote.apis.detection.OpenVINODetectionTask + nncf: mmdet.apis.ote.apis.detection.OTEDetectionNNCFTask + +# Capabilities. +capabilities: + - compute_representations + +# Hyperparameters. +hyper_parameters: + base_path: ../../../../mmdet/apis/ote/apis/detection/configuration.yaml + parameter_overrides: + learning_parameters: + batch_size: + default_value: 14 + learning_rate: + default_value: 0.025 + learning_rate_warmup_iters: + default_value: 500 + num_iters: + default_value: 20 + nncf_optimization: + enable_quantization: + default_value: false + enable_pruning: + default_value: false + maximal_accuracy_degradation: + default_value: 0.01 + +# Training resources. +max_nodes: 1 +training_targets: + - GPU + - CPU + +# Stats. +gigaflops: 6.74 #to be checked with model-analyzer +size: 1.83 + +# Obsolete +# gpu_nums: 2 From d9e95499ac669804ae7b37cacdfc6d6f9879cccc Mon Sep 17 00:00:00 2001 From: gzalessk Date: Tue, 15 Mar 2022 16:45:19 +0300 Subject: [PATCH 2/5] decrease lr proportionally to the batchsize decrease --- .../person-detection-0200/template_experimental.yaml | 3 ++- .../person-detection-0201/template_experimental.yaml | 3 ++- .../person-detection-0202/template_experimental.yaml | 3 ++- .../person-detection-0203/template_experimental.yaml | 3 ++- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/configs/ote/person-detection/person-detection-0200/template_experimental.yaml b/configs/ote/person-detection/person-detection-0200/template_experimental.yaml index 86b1eb4c56d..8637bb8a223 100644 --- a/configs/ote/person-detection/person-detection-0200/template_experimental.yaml +++ b/configs/ote/person-detection/person-detection-0200/template_experimental.yaml @@ -28,8 +28,9 @@ hyper_parameters: learning_parameters: batch_size: default_value: 122 + # LR reduction proportionally to the batch size decrease (because gpu_num=1) learning_rate: - default_value: 0.05 + default_value: 0.025 learning_rate_warmup_iters: default_value: 1200 num_iters: diff --git a/configs/ote/person-detection/person-detection-0201/template_experimental.yaml b/configs/ote/person-detection/person-detection-0201/template_experimental.yaml index 330003a6c97..6c9ba980a1f 100644 --- a/configs/ote/person-detection/person-detection-0201/template_experimental.yaml +++ b/configs/ote/person-detection/person-detection-0201/template_experimental.yaml @@ -28,8 +28,9 @@ hyper_parameters: learning_parameters: batch_size: default_value: 84 + # LR reduction proportionally to the batch size decrease (because gpu_num=1) learning_rate: - default_value: 0.05 + default_value: 0.0125 learning_rate_warmup_iters: default_value: 1200 num_iters: diff --git a/configs/ote/person-detection/person-detection-0202/template_experimental.yaml b/configs/ote/person-detection/person-detection-0202/template_experimental.yaml index c5322e70ef4..98c484563bf 100644 --- a/configs/ote/person-detection/person-detection-0202/template_experimental.yaml +++ b/configs/ote/person-detection/person-detection-0202/template_experimental.yaml @@ -28,8 +28,9 @@ hyper_parameters: learning_parameters: batch_size: default_value: 30 + # LR reduction proportionally to the batch size decrease (because gpu_num=1) learning_rate: - default_value: 0.05 + default_value: 0.025 learning_rate_warmup_iters: default_value: 1200 num_iters: diff --git a/configs/ote/person-detection/person-detection-0203/template_experimental.yaml b/configs/ote/person-detection/person-detection-0203/template_experimental.yaml index 28a0fa5b2ea..2925f646c67 100644 --- a/configs/ote/person-detection/person-detection-0203/template_experimental.yaml +++ b/configs/ote/person-detection/person-detection-0203/template_experimental.yaml @@ -28,8 +28,9 @@ hyper_parameters: learning_parameters: batch_size: default_value: 14 + # LR reduction proportionally to the batch size decrease (because gpu_num=1) learning_rate: - default_value: 0.025 + default_value: 0.0125 learning_rate_warmup_iters: default_value: 500 num_iters: From a39e6af0fc6fb84f3a7e905b9d8132545410aa10 Mon Sep 17 00:00:00 2001 From: gzalessk Date: Tue, 15 Mar 2022 20:05:06 +0300 Subject: [PATCH 3/5] update text detection templates --- .../compression_config.json | 6 +- .../horizontal-text-detection-0001/model.py | 8 +-- .../template_experimental.yaml | 57 +++++++++++++++++++ 3 files changed, 63 insertions(+), 8 deletions(-) create mode 100644 configs/ote/horizontal-text-detection/horizontal-text-detection-0001/template_experimental.yaml diff --git a/configs/ote/horizontal-text-detection/horizontal-text-detection-0001/compression_config.json b/configs/ote/horizontal-text-detection/horizontal-text-detection-0001/compression_config.json index 0639ace0c8e..7c785dfeabb 100755 --- a/configs/ote/horizontal-text-detection/horizontal-text-detection-0001/compression_config.json +++ b/configs/ote/horizontal-text-detection/horizontal-text-detection-0001/compression_config.json @@ -13,11 +13,9 @@ "optimizer": { "lr": 0.0001 }, - "lr_config": { - "_delete_": true, - "policy": "fixed" + "runner": { + "max_epochs": 2 }, - "total_epochs": 2, "nncf_config": { "compression": [ { diff --git a/configs/ote/horizontal-text-detection/horizontal-text-detection-0001/model.py b/configs/ote/horizontal-text-detection/horizontal-text-detection-0001/model.py index 289ee50ee51..6193fbd5d43 100644 --- a/configs/ote/horizontal-text-detection/horizontal-text-detection-0001/model.py +++ b/configs/ote/horizontal-text-detection/horizontal-text-detection-0001/model.py @@ -50,7 +50,7 @@ score_thr=0.25, nms=dict(type='nms', iou_threshold=0.5), max_per_img=100)) -evaluation = dict(interval=1, metric=['bbox', 'f1'], score_thr=0.25) +evaluation = dict(interval=1, metric='mAP') # dataset settings dataset_type = 'CocoDataset' data_root = 'data/text-dataset/' @@ -140,11 +140,11 @@ ]) # yapf:enable # runtime settings -total_epochs = 25 +runner = dict(type='EpochBasedRunner', max_epochs=25) device_ids = range(4) dist_params = dict(backend='nccl') log_level = 'INFO' -work_dir = 'outputs/horizontal-text-detection' -load_from = None +work_dir = 'output' +load_from = 'https://download.01.org/opencv/openvino_training_extensions/models/object_detection/v2/horizontal-text-detection-0001.pth' resume_from = None workflow = [('train', 1)] diff --git a/configs/ote/horizontal-text-detection/horizontal-text-detection-0001/template_experimental.yaml b/configs/ote/horizontal-text-detection/horizontal-text-detection-0001/template_experimental.yaml new file mode 100644 index 00000000000..5fe0a788a64 --- /dev/null +++ b/configs/ote/horizontal-text-detection/horizontal-text-detection-0001/template_experimental.yaml @@ -0,0 +1,57 @@ +# Description. +model_template_id: Horizontal_Text_Detection_0001 +name: horizontal-text-detection +task_type: DETECTION +task_family: VISION +instantiation: "CLASS" +summary: Horizontal Text Detection model (MobileNetV2-FCOS). +application: + ~ + +# Algo backend. +framework: OTEDetection v2.9.1 + +# Task implementations. +entrypoints: + base: mmdet.apis.ote.apis.detection.OTEDetectionTrainingTask + openvino: mmdet.apis.ote.apis.detection.OpenVINODetectionTask + nncf: mmdet.apis.ote.apis.detection.OTEDetectionNNCFTask + +# Capabilities. +capabilities: + - compute_representations + +# Hyperparameters. +hyper_parameters: + base_path: ../../../../mmdet/apis/ote/apis/detection/configuration.yaml + parameter_overrides: + learning_parameters: + batch_size: + default_value: 8 + # LR reduction proportionally to the batch size decrease (because gpu_num=1) + learning_rate: + default_value: 0.005 + learning_rate_warmup_iters: + default_value: 500 + num_iters: + default_value: 25 + nncf_optimization: + enable_quantization: + default_value: false + enable_pruning: + default_value: false + maximal_accuracy_degradation: + default_value: 0.01 + +# Training resources. +max_nodes: 1 +training_targets: + - GPU + - CPU + +# Stats. +gigaflops: 8.0 #to be checked with model-analyzer +size: 1.95 + +# Obsolete +# gpu_nums: 2 \ No newline at end of file From 99702818d192342cb240d890212e4396f9f24080 Mon Sep 17 00:00:00 2001 From: gzalessk Date: Tue, 15 Mar 2022 21:37:57 +0300 Subject: [PATCH 4/5] update person vehicle bike templates --- .../compression_config.json | 6 +- .../model.py | 6 +- .../template_experimental.yaml | 57 +++++++++++++++++++ .../compression_config.json | 6 +- .../model.py | 6 +- .../template_experimental.yaml | 57 +++++++++++++++++++ .../compression_config.json | 6 +- .../model.py | 6 +- .../template_experimental.yaml | 57 +++++++++++++++++++ .../model.py | 6 +- .../template_experimental.yaml | 57 +++++++++++++++++++ .../model.py | 6 +- .../template_experimental.yaml | 57 +++++++++++++++++++ 13 files changed, 306 insertions(+), 27 deletions(-) create mode 100644 configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2000/template_experimental.yaml create mode 100644 configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2001/template_experimental.yaml create mode 100644 configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2002/template_experimental.yaml create mode 100644 configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2003/template_experimental.yaml create mode 100644 configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2004/template_experimental.yaml diff --git a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2000/compression_config.json b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2000/compression_config.json index 1fc6868979d..fa7b87948a2 100644 --- a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2000/compression_config.json +++ b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2000/compression_config.json @@ -21,11 +21,9 @@ "momentum": 0.9, "weight_decay": 0.0005 }, - "lr_config": { - "_delete_": true, - "policy": "fixed" + "runner": { + "max_epochs": 2 }, - "total_epochs": 2, "nncf_config": { "compression": [ { diff --git a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2000/model.py b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2000/model.py index fb3a0f0664e..a7ec9a90095 100644 --- a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2000/model.py +++ b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2000/model.py @@ -150,10 +150,10 @@ ]) # yapf:enable # runtime settings -total_epochs = 20 +runner = dict(type='EpochBasedRunner', max_epochs=20) dist_params = dict(backend='nccl') log_level = 'INFO' -work_dir = 'outputs/person-vehicle-bike-detection-2000' -load_from = None +work_dir = 'output' +load_from = 'https://download.01.org/opencv/openvino_training_extensions/models/object_detection/v2/vehicle-person-bike-detection-2000-1.pth' resume_from = None workflow = [('train', 1)] diff --git a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2000/template_experimental.yaml b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2000/template_experimental.yaml new file mode 100644 index 00000000000..6cd3af4e1c9 --- /dev/null +++ b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2000/template_experimental.yaml @@ -0,0 +1,57 @@ +# Description. +model_template_id: Person_Vehicle_Bike_Detection_2000 +name: person-vehicle-bike-detection-2000 +task_type: DETECTION +task_family: VISION +instantiation: "CLASS" +summary: The fastest Person Vehicle Bike Detection for easy and large objects (MobileNetV2-SSD). +application: + ~ + +# Algo backend. +framework: OTEDetection v2.9.1 + +# Task implementations. +entrypoints: + base: mmdet.apis.ote.apis.detection.OTEDetectionTrainingTask + openvino: mmdet.apis.ote.apis.detection.OpenVINODetectionTask + nncf: mmdet.apis.ote.apis.detection.OTEDetectionNNCFTask + +# Capabilities. +capabilities: + - compute_representations + +# Hyperparameters. +hyper_parameters: + base_path: ../../../../mmdet/apis/ote/apis/detection/configuration.yaml + parameter_overrides: + learning_parameters: + batch_size: + default_value: 192 + # LR reduction proportionally to the batch size decrease (because gpu_num=1) + learning_rate: + default_value: 0.0125 + learning_rate_warmup_iters: + default_value: 1200 + num_iters: + default_value: 20 + nncf_optimization: + enable_quantization: + default_value: true + enable_pruning: + default_value: false + maximal_accuracy_degradation: + default_value: 0.01 + +# Training resources. +max_nodes: 1 +training_targets: + - GPU + - CPU + +# Stats. +gigaflops: 0.82 #to be checked with model-analyzer +size: 1.84 + +# Obsolete +# gpu_nums: 4 diff --git a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2001/compression_config.json b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2001/compression_config.json index 3d5064b6cc0..35a22a6b267 100644 --- a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2001/compression_config.json +++ b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2001/compression_config.json @@ -21,11 +21,9 @@ "momentum": 0.9, "weight_decay": 0.0005 }, - "lr_config": { - "_delete_": true, - "policy": "fixed" + "runner": { + "max_epochs": 2 }, - "total_epochs": 2, "nncf_config": { "compression": [ { diff --git a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2001/model.py b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2001/model.py index 697e0a9924c..9696475ea89 100644 --- a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2001/model.py +++ b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2001/model.py @@ -150,10 +150,10 @@ ]) # yapf:enable # runtime settings -total_epochs = 20 +runner = dict(type='EpochBasedRunner', max_epochs=20) dist_params = dict(backend='nccl') log_level = 'INFO' -work_dir = 'outputs/person-vehicle-bike-detection-2001' -load_from = None +work_dir = 'output' +load_from = 'https://download.01.org/opencv/openvino_training_extensions/models/object_detection/v2/vehicle-person-bike-detection-2001-1.pth' resume_from = None workflow = [('train', 1)] diff --git a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2001/template_experimental.yaml b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2001/template_experimental.yaml new file mode 100644 index 00000000000..dfb515bb706 --- /dev/null +++ b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2001/template_experimental.yaml @@ -0,0 +1,57 @@ +# Description. +model_template_id: Person_Vehicle_Bike_Detection_2001 +name: person-vehicle-bike-detection-2001 +task_type: DETECTION +task_family: VISION +instantiation: "CLASS" +summary: Fast Person Vehicle Bike Detection model (MobileNetV2-SSD). +application: + ~ + +# Algo backend. +framework: OTEDetection v2.9.1 + +# Task implementations. +entrypoints: + base: mmdet.apis.ote.apis.detection.OTEDetectionTrainingTask + openvino: mmdet.apis.ote.apis.detection.OpenVINODetectionTask + nncf: mmdet.apis.ote.apis.detection.OTEDetectionNNCFTask + +# Capabilities. +capabilities: + - compute_representations + +# Hyperparameters. +hyper_parameters: + base_path: ../../../../mmdet/apis/ote/apis/detection/configuration.yaml + parameter_overrides: + learning_parameters: + batch_size: + default_value: 54 + # LR reduction proportionally to the batch size decrease (because gpu_num=1) + learning_rate: + default_value: 0.0125 + learning_rate_warmup_iters: + default_value: 1200 + num_iters: + default_value: 20 + nncf_optimization: + enable_quantization: + default_value: true + enable_pruning: + default_value: false + maximal_accuracy_degradation: + default_value: 0.01 + +# Training resources. +max_nodes: 1 +training_targets: + - GPU + - CPU + +# Stats. +gigaflops: 1.86 #to be checked with model-analyzer +size: 1.84 + +# Obsolete +# gpu_nums: 4 diff --git a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2002/compression_config.json b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2002/compression_config.json index 5a1ceafc2df..390711bdeec 100644 --- a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2002/compression_config.json +++ b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2002/compression_config.json @@ -21,11 +21,9 @@ "momentum": 0.9, "weight_decay": 0.0005 }, - "lr_config": { - "_delete_": true, - "policy": "fixed" + "runner": { + "max_epochs": 2 }, - "total_epochs": 2, "nncf_config": { "compression": [ { diff --git a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2002/model.py b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2002/model.py index 270b930139b..1948728a671 100644 --- a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2002/model.py +++ b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2002/model.py @@ -150,10 +150,10 @@ ]) # yapf:enable # runtime settings -total_epochs = 20 +runner = dict(type='EpochBasedRunner', max_epochs=20) dist_params = dict(backend='nccl') log_level = 'INFO' -work_dir = 'outputs/person-vehicle-bike-detection-2002' -load_from = None +work_dir = 'output' +load_from = 'https://download.01.org/opencv/openvino_training_extensions/models/object_detection/v2/vehicle-person-bike-detection-2002-1.pth' resume_from = None workflow = [('train', 1)] diff --git a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2002/template_experimental.yaml b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2002/template_experimental.yaml new file mode 100644 index 00000000000..e10eecc641f --- /dev/null +++ b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2002/template_experimental.yaml @@ -0,0 +1,57 @@ +# Description. +model_template_id: Person_Vehicle_Bike_Detection_2002 +name: person-vehicle-bike-detection-2002 +task_type: DETECTION +task_family: VISION +instantiation: "CLASS" +summary: Medium Person Vehicle Bike Detection model (MobileNetV2-SSD). +application: + ~ + +# Algo backend. +framework: OTEDetection v2.9.1 + +# Task implementations. +entrypoints: + base: mmdet.apis.ote.apis.detection.OTEDetectionTrainingTask + openvino: mmdet.apis.ote.apis.detection.OpenVINODetectionTask + nncf: mmdet.apis.ote.apis.detection.OTEDetectionNNCFTask + +# Capabilities. +capabilities: + - compute_representations + +# Hyperparameters. +hyper_parameters: + base_path: ../../../../mmdet/apis/ote/apis/detection/configuration.yaml + parameter_overrides: + learning_parameters: + batch_size: + default_value: 30 + # LR reduction proportionally to the batch size decrease (because gpu_num=1) + learning_rate: + default_value: 0.0125 + learning_rate_warmup_iters: + default_value: 1200 + num_iters: + default_value: 20 + nncf_optimization: + enable_quantization: + default_value: false + enable_pruning: + default_value: false + maximal_accuracy_degradation: + default_value: 0.01 + +# Training resources. +max_nodes: 1 +training_targets: + - GPU + - CPU + +# Stats. +gigaflops: 3.30 #to be checked with model-analyzer +size: 1.84 + +# Obsolete +# gpu_nums: 4 diff --git a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2003/model.py b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2003/model.py index 28f1c1a0d8f..4d4be7558a4 100644 --- a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2003/model.py +++ b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2003/model.py @@ -149,10 +149,10 @@ ]) # yapf:enable # runtime settings -total_epochs = 20 +runner = dict(type='EpochBasedRunner', max_epochs=20) dist_params = dict(backend='nccl') log_level = 'INFO' -work_dir = 'outputs/person-vehicle-bike-detection-2003' -load_from = None +work_dir = 'output' +load_from = 'https://storage.openvinotoolkit.org/repositories/openvino_training_extensions/models/object_detection/v2/vehicle-person-bike-detection-2003.pth' resume_from = None workflow = [('train', 1)] diff --git a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2003/template_experimental.yaml b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2003/template_experimental.yaml new file mode 100644 index 00000000000..53e2ac318c3 --- /dev/null +++ b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2003/template_experimental.yaml @@ -0,0 +1,57 @@ +# Description. +model_template_id: Person_Vehicle_Bike_Detection_2003 +name: person-vehicle-bike-detection-2003 +task_type: DETECTION +task_family: VISION +instantiation: "CLASS" +summary: The most accurate Person Vehicle Bike Detection model for small and difficult objects (MobileNetV2-ATSS). +application: + ~ + +# Algo backend. +framework: OTEDetection v2.9.1 + +# Task implementations. +entrypoints: + base: mmdet.apis.ote.apis.detection.OTEDetectionTrainingTask + openvino: mmdet.apis.ote.apis.detection.OpenVINODetectionTask + nncf: mmdet.apis.ote.apis.detection.OTEDetectionNNCFTask + +# Capabilities. +capabilities: + - compute_representations + +# Hyperparameters. +hyper_parameters: + base_path: ../../../../mmdet/apis/ote/apis/detection/configuration.yaml + parameter_overrides: + learning_parameters: + batch_size: + default_value: 14 + # LR reduction proportionally to the batch size decrease (because gpu_num=1) + learning_rate: + default_value: 0.0125 + learning_rate_warmup_iters: + default_value: 500 + num_iters: + default_value: 20 + nncf_optimization: + enable_quantization: + default_value: true + enable_pruning: + default_value: false + maximal_accuracy_degradation: + default_value: 0.01 + +# Training resources. +max_nodes: 1 +training_targets: + - GPU +# - CPU + +# Stats. +gigaflops: 6.78 #to be checked with model-analyzer +size: 1.95 + +# Obsolete +# gpu_nums: 2 diff --git a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2004/model.py b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2004/model.py index ab7662b7cc5..466d58fd164 100644 --- a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2004/model.py +++ b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2004/model.py @@ -149,10 +149,10 @@ ]) # yapf:enable # runtime settings -total_epochs = 20 +runner = dict(type='EpochBasedRunner', max_epochs=20) dist_params = dict(backend='nccl') log_level = 'INFO' -work_dir = 'outputs/person-vehicle-bike-detection-2004' -load_from = None +work_dir = 'output' +load_from = 'https://storage.openvinotoolkit.org/repositories/openvino_training_extensions/models/object_detection/v2/vehicle-person-bike-detection-2004.pth' resume_from = None workflow = [('train', 1)] diff --git a/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2004/template_experimental.yaml b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2004/template_experimental.yaml new file mode 100644 index 00000000000..f137e99a413 --- /dev/null +++ b/configs/ote/person-vehicle-bike-detection/person-vehicle-bike-detection-2004/template_experimental.yaml @@ -0,0 +1,57 @@ +# Description. +model_template_id: Person_Vehicle_Bike_Detection_2004 +name: person-vehicle-bike-detection-2004 +task_type: DETECTION +task_family: VISION +instantiation: "CLASS" +summary: Medium accurate Person Vehicle Bike Detection model (MobileNetV2-ATSS). +application: + ~ + +# Algo backend. +framework: OTEDetection v2.9.1 + +# Task implementations. +entrypoints: + base: mmdet.apis.ote.apis.detection.OTEDetectionTrainingTask + openvino: mmdet.apis.ote.apis.detection.OpenVINODetectionTask + nncf: mmdet.apis.ote.apis.detection.OTEDetectionNNCFTask + +# Capabilities. +capabilities: + - compute_representations + +# Hyperparameters. +hyper_parameters: + base_path: ../../../../mmdet/apis/ote/apis/detection/configuration.yaml + parameter_overrides: + learning_parameters: + batch_size: + default_value: 54 + # LR reduction proportionally to the batch size decrease (because gpu_num=1) + learning_rate: + default_value: 0.1 + learning_rate_warmup_iters: + default_value: 500 + num_iters: + default_value: 20 + nncf_optimization: + enable_quantization: + default_value: true + enable_pruning: + default_value: false + maximal_accuracy_degradation: + default_value: 0.01 + +# Training resources. +max_nodes: 1 +training_targets: + - GPU + - CPU + +# Stats. +gigaflops: 1.88 #to be checked with model-analyzer +size: 1.95 + +# Obsolete +# gpu_nums: 2 From 7f8c6212947d7cbcb7f77e6bce9391c3b9a99a74 Mon Sep 17 00:00:00 2001 From: gzalessk Date: Tue, 15 Mar 2022 21:51:35 +0300 Subject: [PATCH 5/5] update vehicle templates --- .../compression_config.json | 6 +- .../vehicle-detection-0200/model.py | 6 +- .../template_experimental.yaml | 57 +++++++++++++++++++ .../compression_config.json | 6 +- .../vehicle-detection-0201/model.py | 6 +- .../template_experimental.yaml | 57 +++++++++++++++++++ .../compression_config.json | 6 +- .../vehicle-detection-0202/model.py | 6 +- .../template_experimental.yaml | 57 +++++++++++++++++++ .../vehicle-detection-0203/model.py | 8 +-- .../template_experimental.yaml | 57 +++++++++++++++++++ 11 files changed, 247 insertions(+), 25 deletions(-) create mode 100644 configs/ote/vehicle-detection/vehicle-detection-0200/template_experimental.yaml create mode 100644 configs/ote/vehicle-detection/vehicle-detection-0201/template_experimental.yaml create mode 100644 configs/ote/vehicle-detection/vehicle-detection-0202/template_experimental.yaml create mode 100644 configs/ote/vehicle-detection/vehicle-detection-0203/template_experimental.yaml diff --git a/configs/ote/vehicle-detection/vehicle-detection-0200/compression_config.json b/configs/ote/vehicle-detection/vehicle-detection-0200/compression_config.json index 1fc6868979d..fa7b87948a2 100644 --- a/configs/ote/vehicle-detection/vehicle-detection-0200/compression_config.json +++ b/configs/ote/vehicle-detection/vehicle-detection-0200/compression_config.json @@ -21,11 +21,9 @@ "momentum": 0.9, "weight_decay": 0.0005 }, - "lr_config": { - "_delete_": true, - "policy": "fixed" + "runner": { + "max_epochs": 2 }, - "total_epochs": 2, "nncf_config": { "compression": [ { diff --git a/configs/ote/vehicle-detection/vehicle-detection-0200/model.py b/configs/ote/vehicle-detection/vehicle-detection-0200/model.py index 1b8a3f9aac8..4b153a1ab37 100644 --- a/configs/ote/vehicle-detection/vehicle-detection-0200/model.py +++ b/configs/ote/vehicle-detection/vehicle-detection-0200/model.py @@ -150,10 +150,10 @@ ]) # yapf:enable # runtime settings -total_epochs = 20 +runner = dict(type='EpochBasedRunner', max_epochs=20) dist_params = dict(backend='nccl') log_level = 'INFO' -work_dir = 'outputs/vehicle-detection-0200' -load_from = None +work_dir = 'output' +load_from = 'https://download.01.org/opencv/openvino_training_extensions/models/object_detection/v2/vehicle-detection-0200-1.pth' resume_from = None workflow = [('train', 1)] diff --git a/configs/ote/vehicle-detection/vehicle-detection-0200/template_experimental.yaml b/configs/ote/vehicle-detection/vehicle-detection-0200/template_experimental.yaml new file mode 100644 index 00000000000..955d6ab546c --- /dev/null +++ b/configs/ote/vehicle-detection/vehicle-detection-0200/template_experimental.yaml @@ -0,0 +1,57 @@ +# Description. +model_template_id: Vehicle_Detection_0200 +name: vehicle-detection-0200 +task_type: DETECTION +task_family: VISION +instantiation: "CLASS" +summary: The fastest Vehicle Detection models for easy and large objects (MobileNetV2-SSD). +application: + ~ + +# Algo backend. +framework: OTEDetection v2.9.1 + +# Task implementations. +entrypoints: + base: mmdet.apis.ote.apis.detection.OTEDetectionTrainingTask + openvino: mmdet.apis.ote.apis.detection.OpenVINODetectionTask + nncf: mmdet.apis.ote.apis.detection.OTEDetectionNNCFTask + +# Capabilities. +capabilities: + - compute_representations + +# Hyperparameters. +hyper_parameters: + base_path: ../../../../mmdet/apis/ote/apis/detection/configuration.yaml + parameter_overrides: + learning_parameters: + batch_size: + default_value: 185 + # LR reduction proportionally to the batch size decrease (because gpu_num=1) + learning_rate: + default_value: 0.0125 + learning_rate_warmup_iters: + default_value: 1200 + num_iters: + default_value: 20 + nncf_optimization: + enable_quantization: + default_value: true + enable_pruning: + default_value: false + maximal_accuracy_degradation: + default_value: 0.01 + +# Training resources. +max_nodes: 1 +training_targets: + - GPU + - CPU + +# Stats. +gigaflops: 0.82 #to be checked with model-analyzer +size: 1.83 + +# Obsolete +# gpu_nums: 4 diff --git a/configs/ote/vehicle-detection/vehicle-detection-0201/compression_config.json b/configs/ote/vehicle-detection/vehicle-detection-0201/compression_config.json index 3d5064b6cc0..35a22a6b267 100644 --- a/configs/ote/vehicle-detection/vehicle-detection-0201/compression_config.json +++ b/configs/ote/vehicle-detection/vehicle-detection-0201/compression_config.json @@ -21,11 +21,9 @@ "momentum": 0.9, "weight_decay": 0.0005 }, - "lr_config": { - "_delete_": true, - "policy": "fixed" + "runner": { + "max_epochs": 2 }, - "total_epochs": 2, "nncf_config": { "compression": [ { diff --git a/configs/ote/vehicle-detection/vehicle-detection-0201/model.py b/configs/ote/vehicle-detection/vehicle-detection-0201/model.py index 46390b983ee..1e6cdf8c04d 100644 --- a/configs/ote/vehicle-detection/vehicle-detection-0201/model.py +++ b/configs/ote/vehicle-detection/vehicle-detection-0201/model.py @@ -150,10 +150,10 @@ ]) # yapf:enable # runtime settings -total_epochs = 20 +runner = dict(type='EpochBasedRunner', max_epochs=20) dist_params = dict(backend='nccl') log_level = 'INFO' -work_dir = 'outputs/vehicle-detection-0201' -load_from = None +work_dir = 'output' +load_from = 'https://download.01.org/opencv/openvino_training_extensions/models/object_detection/v2/vehicle-detection-0201-1.pth' resume_from = None workflow = [('train', 1)] diff --git a/configs/ote/vehicle-detection/vehicle-detection-0201/template_experimental.yaml b/configs/ote/vehicle-detection/vehicle-detection-0201/template_experimental.yaml new file mode 100644 index 00000000000..3c8b8bf5a29 --- /dev/null +++ b/configs/ote/vehicle-detection/vehicle-detection-0201/template_experimental.yaml @@ -0,0 +1,57 @@ +# Description. +model_template_id: Vehicle_Detection_0201 +name: vehicle-detection-0201 +task_type: DETECTION +task_family: VISION +instantiation: "CLASS" +summary: Fast Vehicle Detection model (MobileNetV2-SSD). +application: + ~ + +# Algo backend. +framework: OTEDetection v2.9.1 + +# Task implementations. +entrypoints: + base: mmdet.apis.ote.apis.detection.OTEDetectionTrainingTask + openvino: mmdet.apis.ote.apis.detection.OpenVINODetectionTask + nncf: mmdet.apis.ote.apis.detection.OTEDetectionNNCFTask + +# Capabilities. +capabilities: + - compute_representations + +# Hyperparameters. +hyper_parameters: + base_path: ../../../../mmdet/apis/ote/apis/detection/configuration.yaml + parameter_overrides: + learning_parameters: + batch_size: + default_value: 82 + # LR reduction proportionally to the batch size decrease (because gpu_num=1) + learning_rate: + default_value: 0.0125 + learning_rate_warmup_iters: + default_value: 1200 + num_iters: + default_value: 20 + nncf_optimization: + enable_quantization: + default_value: true + enable_pruning: + default_value: false + maximal_accuracy_degradation: + default_value: 0.01 + +# Training resources. +max_nodes: 1 +training_targets: + - GPU + - CPU + +# Stats. +gigaflops: 1.84 #to be checked with model-analyzer +size: 1.83 + +# Obsolete +# gpu_nums: 4 diff --git a/configs/ote/vehicle-detection/vehicle-detection-0202/compression_config.json b/configs/ote/vehicle-detection/vehicle-detection-0202/compression_config.json index 5a1ceafc2df..390711bdeec 100644 --- a/configs/ote/vehicle-detection/vehicle-detection-0202/compression_config.json +++ b/configs/ote/vehicle-detection/vehicle-detection-0202/compression_config.json @@ -21,11 +21,9 @@ "momentum": 0.9, "weight_decay": 0.0005 }, - "lr_config": { - "_delete_": true, - "policy": "fixed" + "runner": { + "max_epochs": 2 }, - "total_epochs": 2, "nncf_config": { "compression": [ { diff --git a/configs/ote/vehicle-detection/vehicle-detection-0202/model.py b/configs/ote/vehicle-detection/vehicle-detection-0202/model.py index ed1648132d0..5ce07b2cdd4 100644 --- a/configs/ote/vehicle-detection/vehicle-detection-0202/model.py +++ b/configs/ote/vehicle-detection/vehicle-detection-0202/model.py @@ -150,10 +150,10 @@ ]) # yapf:enable # runtime settings -total_epochs = 20 +runner = dict(type='EpochBasedRunner', max_epochs=20) dist_params = dict(backend='nccl') log_level = 'INFO' -work_dir = 'outputs/vehicle-detection-0202' -load_from = None +work_dir = 'output' +load_from = 'https://download.01.org/opencv/openvino_training_extensions/models/object_detection/v2/vehicle-detection-0202-1.pth' resume_from = None workflow = [('train', 1)] diff --git a/configs/ote/vehicle-detection/vehicle-detection-0202/template_experimental.yaml b/configs/ote/vehicle-detection/vehicle-detection-0202/template_experimental.yaml new file mode 100644 index 00000000000..64f8c5ae9dc --- /dev/null +++ b/configs/ote/vehicle-detection/vehicle-detection-0202/template_experimental.yaml @@ -0,0 +1,57 @@ +# Description. +model_template_id: Vehicle_Detection_0202 +name: vehicle-detection-0202 +task_type: DETECTION +task_family: VISION +instantiation: "CLASS" +summary: Medium Vehicle Detection model (MobileNetV2-SSD). +application: + ~ + +# Algo backend. +framework: OTEDetection v2.9.1 + +# Task implementations. +entrypoints: + base: mmdet.apis.ote.apis.detection.OTEDetectionTrainingTask + openvino: mmdet.apis.ote.apis.detection.OpenVINODetectionTask + nncf: mmdet.apis.ote.apis.detection.OTEDetectionNNCFTask + +# Capabilities. +capabilities: + - compute_representations + +# Hyperparameters. +hyper_parameters: + base_path: ../../../../mmdet/apis/ote/apis/detection/configuration.yaml + parameter_overrides: + learning_parameters: + batch_size: + default_value: 30 + # LR reduction proportionally to the batch size decrease (because gpu_num=1) + learning_rate: + default_value: 0.0125 + learning_rate_warmup_iters: + default_value: 1200 + num_iters: + default_value: 20 + nncf_optimization: + enable_quantization: + default_value: true + enable_pruning: + default_value: false + maximal_accuracy_degradation: + default_value: 0.01 + +# Training resources. +max_nodes: 1 +training_targets: + - GPU + - CPU + +# Stats. +gigaflops: 3.28 #to be checked with model-analyzer +size: 1.83 + +# Obsolete +# gpu_nums: 4 diff --git a/configs/ote/vehicle-detection/vehicle-detection-0203/model.py b/configs/ote/vehicle-detection/vehicle-detection-0203/model.py index da84f1d4ed3..e06046de1a1 100644 --- a/configs/ote/vehicle-detection/vehicle-detection-0203/model.py +++ b/configs/ote/vehicle-detection/vehicle-detection-0203/model.py @@ -237,7 +237,7 @@ img_prefix='data/val2017', test_mode=True, pipeline=test_pipeline)) -evaluation = dict(interval=1, metric='bbox') +evaluation = dict(interval=1, metric='mAP') optimizer = dict(type='SGD', lr=0.02, momentum=0.9, weight_decay=0.0001) optimizer_config = dict(grad_clip=dict(max_norm=35, norm_type=2)) lr_config = dict( @@ -251,11 +251,11 @@ interval=50, hooks=[dict(type='TextLoggerHook'), dict(type='TensorboardLoggerHook')]) -total_epochs = 12 +runner = dict(type='EpochBasedRunner', max_epochs=12) dist_params = dict(backend='nccl') log_level = 'INFO' -work_dir = './cascade_r50' -load_from = None +work_dir = 'output' +load_from = 'https://download.01.org/opencv/openvino_training_extensions/models/object_detection/v3/vehicle-detection-0203.pth' resume_from = None workflow = [('train', 1)] gpu_ids = range(0, 1) diff --git a/configs/ote/vehicle-detection/vehicle-detection-0203/template_experimental.yaml b/configs/ote/vehicle-detection/vehicle-detection-0203/template_experimental.yaml new file mode 100644 index 00000000000..46ebf2f653a --- /dev/null +++ b/configs/ote/vehicle-detection/vehicle-detection-0203/template_experimental.yaml @@ -0,0 +1,57 @@ +# Description. +model_template_id: Vehicle_Detection_0203 +name: vehicle-detection-0203 +task_type: DETECTION +task_family: VISION +instantiation: "CLASS" +summary: The most accurate Vehicle Detection model for small and difficult objects (ResNet18-CascadeRCNN). +application: + ~ + +# Algo backend. +framework: OTEDetection v2.9.1 + +# Task implementations. +entrypoints: + base: mmdet.apis.ote.apis.detection.OTEDetectionTrainingTask + openvino: mmdet.apis.ote.apis.detection.OpenVINODetectionTask + nncf: mmdet.apis.ote.apis.detection.OTEDetectionNNCFTask + +# Capabilities. +capabilities: + - compute_representations + +# Hyperparameters. +hyper_parameters: + base_path: ../../../../mmdet/apis/ote/apis/detection/configuration.yaml + parameter_overrides: + learning_parameters: + batch_size: + default_value: 4 + # LR reduction proportionally to the batch size decrease (because gpu_num=1) + learning_rate: + default_value: 0.02 + learning_rate_warmup_iters: + default_value: 500 + num_iters: + default_value: 16 + nncf_optimization: + enable_quantization: + default_value: true + enable_pruning: + default_value: false + maximal_accuracy_degradation: + default_value: 0.01 + +# Training resources. +max_nodes: 1 +training_targets: + - GPU + - CPU + +# Stats. +gigaflops: 112.34 #to be checked with model-analyzer +size: 24.11 + +# Obsolete +# gpu_nums: 1