forked from open-mmlab/mmdetection
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Feature] add docs with NPU backend (open-mmlab#9333)
* update npu doc * add ssdlite_mbv2 result * update url
- Loading branch information
1 parent
2c82b7e
commit 5fb38fa
Showing
4 changed files
with
54 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,7 @@ | ||
_base_ = './retinanet_r50_fpn_1x_coco.py' | ||
# fp16 settings | ||
fp16 = dict(loss_scale=512.) | ||
|
||
# set grad_norm for stability during mixed-precision training | ||
optimizer_config = dict( | ||
_delete_=True, grad_clip=dict(max_norm=35, norm_type=2)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
_base_ = ['./ssd512_coco.py'] | ||
# fp16 settings | ||
fp16 = dict(loss_scale='dynamic') | ||
|
||
# learning policy | ||
# In order to avoid non-convergence in the early stage of | ||
# mixed-precision training, the warmup in the lr_config is set to linear, | ||
# warmup_iters increases and warmup_ratio decreases. | ||
lr_config = dict(warmup='linear', warmup_iters=1000, warmup_ratio=1.0 / 10) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
# NPU (HUAWEI Ascend) | ||
|
||
## Usage | ||
|
||
Please refer to [link](https://github.com/open-mmlab/mmcv/blob/master/docs/zh_cn/get_started/build.md) installing mmcv on NPU Devices. | ||
|
||
Here we use 8 NPUs on your computer to train the model with the following command: | ||
|
||
```shell | ||
bash tools/dist_train.sh configs/ssd/ssd300_coco.py 8 | ||
``` | ||
|
||
Also, you can use only one NPU to train the model with the following command: | ||
|
||
```shell | ||
python tools/train.py configs/ssd/ssd300_coco.py | ||
``` | ||
|
||
## Verified Models | ||
|
||
| Model | box AP | mask AP | Config | Download | | ||
| :------------------: | :----: | :-----: | :---------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------- | | ||
| [ssd300](<>) | 25.6 | --- | [config](https://github.com/open-mmlab/mmdetection/blob/master/configs/ssd/ssd300_fp16_coco.py) | [log](https://download.openmmlab.com/mmdetection/v2.0/npu/ssd300_coco.log.json) | | ||
| [ssd512](<>) | 29.4 | --- | [config](https://github.com/open-mmlab/mmdetection/blob/master/configs/ssd/ssd512_fp16_coco.py) | [log](https://download.openmmlab.com/mmdetection/v2.0/npu/ssd512_coco.log.json) | | ||
| [\*ssdlite-mbv2](<>) | 20.2 | --- | [config](https://github.com/open-mmlab/mmdetection/blob/master/configs/ssd/ssdlite_mobilenetv2_scratch_600e_coco.py) | [log](https://download.openmmlab.com/mmdetection/v2.0/npu/ssdlite_mobilenetv2_scratch_600e_coco.log.json) | | ||
| [retinanet-r50](<>) | 36.6 | --- | [config](https://github.com/open-mmlab/mmdetection/blob/master/configs/retinanet/retinanet_r50_fpn_fp16_1x_coco.py) | [log](https://download.openmmlab.com/mmdetection/v2.0/npu/retinanet_r50_fpn_1x_coco.log.json) | | ||
| [\*fcos-r50](<>) | 36.1 | --- | [config](https://github.com/open-mmlab/mmdetection/blob/master/configs/fcos/fcos_r50_caffe_fpn_gn-head_fp16_1x_bs8x8_coco.py) | [log](https://download.openmmlab.com/mmdetection/v2.0/npu/fcos_r50_caffe_fpn_gn-head_1x_coco_bs8x8.log.json) | | ||
| [solov2-r50](<>) | --- | 34.7 | [config](https://github.com/open-mmlab/mmdetection/blob/master/configs/solov2/solov2_r50_fpn_1x_coco.py) | [log](https://download.openmmlab.com/mmdetection/v2.0/npu/solov2_r50_fpn_1x_coco.log.json) | | ||
|
||
**Notes:** | ||
|
||
- If not specially marked, the results are same between results on the NPU and results on the GPU with FP32. | ||
- (\*) The results on the NPU of these models are aligned with the results of the mixed-precision training on the GPU, but are lower than the results of the FP32. This situation is mainly related to the phase of the model itself in mixed-precision training, users please adjust the hyperparameters to achieve the best result by self. | ||
|
||
**All above models are provided by Huawei Ascend group.** |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters