From d48744901d0f0c8daad3e58db4ad178853eb9c9d Mon Sep 17 00:00:00 2001 From: Vladisalv Sovrasov Date: Tue, 23 Apr 2024 21:07:16 +0900 Subject: [PATCH] Fix QAT for detection tiling models --- .../compression_config.json | 11 ++++- .../compression_config.json | 11 ++++- .../compression_config.json | 11 ++++- .../compression_config.json | 11 ++++- .../mobilenetv2_atss/compression_config.json | 40 +++-------------- .../mobilenetv2_ssd/compression_config.json | 43 +++---------------- 6 files changed, 52 insertions(+), 75 deletions(-) diff --git a/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_l/compression_config.json b/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_l/compression_config.json index 7eafa3929f5..3bbc4068620 100644 --- a/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_l/compression_config.json +++ b/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_l/compression_config.json @@ -17,7 +17,16 @@ "nncf_config": { "compression": [ { - "algorithm": "quantization" + "algorithm": "quantization", + "initializer": { + "range": { + "type": "percentile", + "params": { + "min_percentile": 0, + "max_percentile": 100 + } + } + } } ], "accuracy_aware_training": { diff --git a/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_s/compression_config.json b/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_s/compression_config.json index 7eafa3929f5..3bbc4068620 100644 --- a/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_s/compression_config.json +++ b/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_s/compression_config.json @@ -17,7 +17,16 @@ "nncf_config": { "compression": [ { - "algorithm": "quantization" + "algorithm": "quantization", + "initializer": { + "range": { + "type": "percentile", + "params": { + "min_percentile": 0, + "max_percentile": 100 + } + } + } } ], "accuracy_aware_training": { diff --git a/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_tiny/compression_config.json b/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_tiny/compression_config.json index 7eafa3929f5..3bbc4068620 100644 --- a/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_tiny/compression_config.json +++ b/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_tiny/compression_config.json @@ -17,7 +17,16 @@ "nncf_config": { "compression": [ { - "algorithm": "quantization" + "algorithm": "quantization", + "initializer": { + "range": { + "type": "percentile", + "params": { + "min_percentile": 0, + "max_percentile": 100 + } + } + } } ], "accuracy_aware_training": { diff --git a/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_x/compression_config.json b/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_x/compression_config.json index 7eafa3929f5..3bbc4068620 100644 --- a/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_x/compression_config.json +++ b/src/otx/algorithms/detection/configs/detection/cspdarknet_yolox_x/compression_config.json @@ -17,7 +17,16 @@ "nncf_config": { "compression": [ { - "algorithm": "quantization" + "algorithm": "quantization", + "initializer": { + "range": { + "type": "percentile", + "params": { + "min_percentile": 0, + "max_percentile": 100 + } + } + } } ], "accuracy_aware_training": { diff --git a/src/otx/algorithms/detection/configs/detection/mobilenetv2_atss/compression_config.json b/src/otx/algorithms/detection/configs/detection/mobilenetv2_atss/compression_config.json index 7936d13ac21..08f6bcfe2a9 100644 --- a/src/otx/algorithms/detection/configs/detection/mobilenetv2_atss/compression_config.json +++ b/src/otx/algorithms/detection/configs/detection/mobilenetv2_atss/compression_config.json @@ -20,6 +20,11 @@ "algorithm": "quantization", "initializer": { "range": { + "type": "percentile", + "params": { + "min_percentile": 0, + "max_percentile": 100 + }, "num_init_samples": 300 }, "batchnorm_adaptation": { @@ -37,38 +42,5 @@ } } }, - "nncf_quantization_pruning": { - "nncf_config": { - "accuracy_aware_training": { - "mode": "adaptive_compression_level", - "params": { - "initial_training_phase_epochs": 5, - "maximal_total_epochs": 100, - "patience_epochs": 5 - } - }, - "compression": [ - { - "algorithm": "filter_pruning", - "params": { - "schedule": "baseline", - "pruning_flops_target": 0.1, - "filter_importance": "geometric_median" - } - }, - { - "algorithm": "quantization", - "initializer": { - "range": { - "num_init_samples": 300 - }, - "batchnorm_adaptation": { - "num_bn_adaptation_samples": 300 - } - } - } - ] - } - }, - "order_of_parts": ["nncf_quantization", "nncf_quantization_pruning"] + "order_of_parts": ["nncf_quantization"] } diff --git a/src/otx/algorithms/detection/configs/detection/mobilenetv2_ssd/compression_config.json b/src/otx/algorithms/detection/configs/detection/mobilenetv2_ssd/compression_config.json index 3298a831f1a..12e7535682a 100644 --- a/src/otx/algorithms/detection/configs/detection/mobilenetv2_ssd/compression_config.json +++ b/src/otx/algorithms/detection/configs/detection/mobilenetv2_ssd/compression_config.json @@ -20,6 +20,11 @@ "algorithm": "quantization", "initializer": { "range": { + "type": "percentile", + "params": { + "min_percentile": 0, + "max_percentile": 100 + }, "num_init_samples": 300 }, "batchnorm_adaptation": { @@ -37,41 +42,5 @@ } } }, - "nncf_quantization_pruning": { - "nncf_config": { - "accuracy_aware_training": { - "mode": "adaptive_compression_level", - "params": { - "initial_training_phase_epochs": 5, - "maximal_total_epochs": 100, - "patience_epochs": 5 - } - }, - "compression": [ - { - "algorithm": "filter_pruning", - "ignored_scopes": [ - "{re}CustomSingleStageDetector/CustomSSDHead\\[bbox_head\\].*" - ], - "params": { - "schedule": "baseline", - "pruning_flops_target": 0.1, - "filter_importance": "geometric_median" - } - }, - { - "algorithm": "quantization", - "initializer": { - "range": { - "num_init_samples": 300 - }, - "batchnorm_adaptation": { - "num_bn_adaptation_samples": 300 - } - } - } - ] - } - }, - "order_of_parts": ["nncf_quantization", "nncf_quantization_pruning"] + "order_of_parts": ["nncf_quantization"] }