/model-prune

nanodet model prune

Primary LanguagePython

model-prune

对nanodet算法进行模型剪枝

对模型进行剪枝,在自定义数据集上,剪枝前后的指标为为:

剪枝前

Params: 9.31 M  ,  MACs : 11.44 G

| class     | AP50   | mAP   | class    | AP50   | mAP   |
|:----------|:-------|:------|:---------|:-------|:------|
| car       | 55.9   | 40.8  | bus      | 32.4   | 19.4  |
| truck     | 66.5   | 46.4  | person   | 32.4   | 20.2  |
| bicycle   | 0.0    | 0.0   | tricycle | 0.0    | 0.0   |
| motorbike | 34.3   | 15.1  |          |        |       |

'mAP': 0.20263765407418965,
'AP_50': 0.31637914695810804,
'AP_75': 0.21580095003729519,
'AP_small': 0.02556794488193019,
'AP_m': 0.26315913744876807,
'AP_l': 0.6280771993427688

剪枝后,微调 50 个epoch

after speed  Params: 6.22 M  ,  MACs 7.51 G

| class     | AP50   | mAP   | class    | AP50   | mAP   |
|:----------|:-------|:------|:---------|:-------|:------|
| car       | 51.9   | 35.2  | bus      | 0.0    | 0.0   |
| truck     | 63.4   | 42.3  | person   | 31.0   | 20.2  |
| bicycle   | 0.0    | 0.0   | tricycle | 0.0    | 0.0   |
| motorbike | 29.3   | 14.8  |          |        |       |

mAP: 0.16087444613389984
AP_50: 0.2509137585063215
AP_75: 0.17434789336310114
AP_small: 0.009993173108280119
AP_m: 0.20596705780074465
AP_l: 0.5062155473672427

剪枝前为全部数据进行训练,剪枝后微调的数据是不包括全部标签、较小的数据集