PytorchInsight
1.0.0
這是一個帶有最先進的體系結構,驗證模型和實時更新結果的Pytorch Lib。
該存儲庫旨在加快深度學習研究的進步,可再現的結果並更容易進行研究,以及在Pytorch中。
- SENET:擠壓網絡(紙)
- SKNET:選擇性內核網絡(紙)
- CBAM:卷積塊注意模塊(紙)
- GCNET:GCNET:非本地網絡符合擠壓興奮網絡及以後的(紙)
- BAM:瓶頸注意模塊(紙)
- SGenet:空間群體的增強:增強卷積網絡中的語義特徵學習(紙)
- SRMNET:SRM:用於卷積神經網絡的基於樣式的重新校準模塊(紙)
- 八度:掉落八度:降低具有八度卷積的捲積神經網絡中的空間冗餘(紙)
- imagenet_tricks.py:卷積神經網絡的圖像分類的技巧包(紙)
- 了解重量標準化家庭與體重衰減之間的不和諧:電子換檔的L2正常器(出現)
- 概括約束器:理解重量衰減的統一框架(出現)
- 混合:超出經驗風險最小化(紙)
- cutmix:正規化策略,以培訓具有可本質功能的強分類器(紙)
Imagenet-1k上的單作物驗證誤差(中心224x224量大圖像,較短的一側= 256)。
| 媒體和大型模型的分類培訓設置 | |
|---|---|
| 細節 | Randomresized Crop,Randomhorizontalflip; 0.1 Init LR,總共100個時期,每30個時期衰減;具有幼稚的軟馬克斯橫熵損失的SGD,1E-4重量衰減,0.9動量,8 GPU,每GPU 32張圖像 |
| 例子 | RESNET50 |
| 筆記 | 最新的代碼添加了一個默認操作:設置所有偏見WD = 0,請參閱“概括約束器:理解重量衰減的統一框架”的理論分析(出現),從而可以稍微提高訓練精度 |
| 移動/小型模型的分類培訓設置 | |
|---|---|
| 細節 | Randomresized Crop,Randomhorizontalflip; 0.4 Init LR,總計300個時期,5個線性熱身時期,餘弦LR衰減; SGD具有SoftMax橫熵損失和標籤平滑0.1,4e-5重量衰減的SGD,所有其他重量的重量衰減,0.9動量,8 GPU,每GPU 128張圖像 |
| 例子 | ShuffLenetV2 |
python -m torch.distributed.launch --nproc_per_node=8 imagenet_mobile.py --cos -a shufflenetv2_1x --data /path/to/imagenet1k/
--epochs 300 --wd 4e-5 --gamma 0.1 -c checkpoints/imagenet/shufflenetv2_1x --train-batch 128 --opt-level O0 --nowd-bn # Triaing
python -m torch.distributed.launch --nproc_per_node=2 imagenet_mobile.py -a shufflenetv2_1x --data /path/to/imagenet1k/
-e --resume ../pretrain/shufflenetv2_1x.pth.tar --test-batch 100 --opt-level O0 # Testing, ~69.6% top-1 Acc
python -W ignore imagenet.py -a sge_resnet101 --data /path/to/imagenet1k/ --epochs 100 --schedule 30 60 90
--gamma 0.1 -c checkpoints/imagenet/sge_resnet101 --gpu-id 0,1,2,3,4,5,6,7 # Training
python -m torch.distributed.launch --nproc_per_node=8 imagenet_fast.py -a sge_resnet101 --data /path/to/imagenet1k/
--epochs 100 --schedule 30 60 90 --wd 1e-4 --gamma 0.1 -c checkpoints/imagenet/sge_resnet101 --train-batch 32
--opt-level O0 --wd-all --label-smoothing 0. --warmup 0 # Training (faster)
python -W ignore imagenet.py -a sge_resnet101 --data /path/to/imagenet1k/ --gpu-id 0,1 -e --resume ../pretrain/sge_resnet101.pth.tar
# Testing ~78.8% top-1 Acc
python -m torch.distributed.launch --nproc_per_node=2 imagenet_fast.py -a sge_resnet101 --data /path/to/imagenet1k/ -e --resume
../pretrain/sge_resnet101.pth.tar --test-batch 100 --opt-level O0 # Testing (faster) ~78.8% top-1 Acc
python -m torch.distributed.launch --nproc_per_node=8 imagenet_fast.py -a ws_resnet50 --data /share1/public/public/imagenet1k/
--epochs 100 --schedule 30 60 90 --wd 1e-4 --gamma 0.1 -c checkpoints/imagenet/es1e-3_ws_resnet50 --train-batch 32
--opt-level O0 --label-smoothing 0. --warmup 0 --nowd-conv --mineps 1e-3 --el2
注意以下結果(舊)未設置大型模型的偏置WD = 0
| 模型 | #P | gflops | TOP-1 ACC | 前5個ACC | 下載1 | 下載2 | 紀錄 |
|---|---|---|---|---|---|---|---|
| shufflenetv2_1x | 228m | 0.151 | 69.6420 | 88.7200 | Googlerive | shufflenetv2_1x.log | |
| RESNET50 | 25.56m | 4.122 | 76.3840 | 92.9080 | Baidudrive(Zuvx) | Googlerive | old_resnet50.log |
| SE-RESNET50 | 28.09m | 4.130 | 77.1840 | 93.6720 | |||
| SK-RESNET50* | 26.15m | 4.185 | 77.5380 | 93.7000 | Baidudrive(TFWN) | Googlerive | sk_resnet50.log |
| BAM-RESNET50 | 25.92m | 4.205 | 76.8980 | 93.4020 | Baidudrive(Z0H3) | Googlerive | BAM_RESNET50.LOG |
| CBAM-RESNET50 | 28.09m | 4.139 | 77.6260 | 93.6600 | Baidudrive(Bram) | Googlerive | cbam_resnet50.log |
| SGE-RESNET50 | 25.56m | 4.127 | 77.5840 | 93.6640 | Baidudrive(GXO9) | Googlerive | sge_resnet50.log |
| RESNET101 | 44.55m | 7.849 | 78.2000 | 93.9060 | Baidudrive(JS5T) | Googlerive | old_resnet101.log |
| SE-RESNET101 | 49.33萬 | 7.863 | 78.4680 | 94.1020 | Baidudrive(J2OX) | Googlerive | SE_RESNET101.LOG |
| SK-RESNET101* | 4568m | 7.978 | 78.7920 | 94.2680 | Baidudrive(BOII) | Googlerive | sk_resnet101.log |
| BAM-RESNET101 | 44.91m | 7.933 | 78.2180 | 94.0180 | Baidudrive(4BW6) | Googlerive | BAM_RESNET101.LOG |
| CBAM-RESNET101 | 49.33萬 | 7.879 | 78.3540 | 94.0640 | Baidudrive(SYJ3) | Googlerive | cbam_resnet101.log |
| SGE-RESNET101 | 44.55m | 7.858 | 78.7980 | 94.3680 | Baidudrive(WQN6) | Googlerive | sge_resnet101.log |
Sk-Resnet*是原始SKNet的修改版本(與Resnet Backbone進行更公平的比較)。原始的Sknets的性能更強,可以在Ppplang-snnet中引用Pytorch版本。
| 模型 | #P | gflops | 探測器 | 脖子 | AP50:95(%) | AP50(%) | AP75(%) | 下載 |
|---|---|---|---|---|---|---|---|---|
| RESNET50 | 23.51m | 88.0 | 更快的rcnn | FPN | 37.5 | 59.1 | 40.6 | Googlerive |
| SGE-RESNET50 | 23.51m | 88.1 | 更快的rcnn | FPN | 38.7 | 60.8 | 41.7 | Googlerive |
| RESNET50 | 23.51m | 88.0 | 面具rcnn | FPN | 38.6 | 60.0 | 41.9 | Googlerive |
| SGE-RESNET50 | 23.51m | 88.1 | 面具rcnn | FPN | 39.6 | 61.5 | 42.9 | Googlerive |
| RESNET50 | 23.51m | 88.0 | 級聯RCNN | FPN | 41.1 | 59.3 | 44.8 | Googlerive |
| SGE-RESNET50 | 23.51m | 88.1 | 級聯RCNN | FPN | 42.6 | 61.4 | 46.2 | Googlerive |
| RESNET101 | 42.50m | 167.9 | 更快的rcnn | FPN | 39.4 | 60.7 | 43.0 | Googlerive |
| SE-RESNET101 | 47.28m | 168.3 | 更快的rcnn | FPN | 40.4 | 61.9 | 44.2 | Googlerive |
| SGE-RESNET101 | 42.50m | 168.1 | 更快的rcnn | FPN | 41.0 | 63.0 | 44.3 | Googlerive |
| RESNET101 | 42.50m | 167.9 | 面具rcnn | FPN | 40.4 | 61.6 | 44.2 | Googlerive |
| SE-RESNET101 | 47.28m | 168.3 | 面具rcnn | FPN | 41.5 | 63.0 | 45.3 | Googlerive |
| SGE-RESNET101 | 42.50m | 168.1 | 面具rcnn | FPN | 42.1 | 63.7 | 46.1 | Googlerive |
| RESNET101 | 42.50m | 167.9 | 級聯RCNN | FPN | 42.6 | 60.9 | 46.4 | Googlerive |
| SE-RESNET101 | 47.28m | 168.3 | 級聯RCNN | FPN | 43.4 | 62.2 | 47.2 | Googlerive |
| SGE-RESNET101 | 42.50m | 168.1 | 級聯RCNN | FPN | 44.4 | 63.2 | 48.4 | Googlerive |
請注意,以下模型是偏置WD = 0。
| 模型 | top-1 | 下載 |
|---|---|---|
| WS-RESNET50 | 76.74 | Googlerive |
| WS-RESNET50(E = 1E-3) | 76.86 | Googlerive |
| WS-RESNET101 | 78.07 | Googlerive |
| WS-RESNET101(E = 1E-6) | 78.29 | Googlerive |
| WS-Resnext50(E = 1E-3) | 77.88 | Googlerive |
| WS-RESNEXT101(E = 1E-3) | 78.80 | Googlerive |
| WS-DENSENET201(E = 1E-8) | 77.59 | Googlerive |
| ws-shuffenetv1(e = 1e-8) | 68.09 | Googlerive |
| ws-shuffenetv2(e = 1e-8) | 69.70 | Googlerive |
| WS-MobiLenetV1(E = 1E-6) | 73.60 | Googlerive |
如果您發現我們的相關作品在您的研究中有用,請考慮引用論文:
@inproceedings{li2019selective,
title={Selective Kernel Networks},
author={Li, Xiang and Wang, Wenhai and Hu, Xiaolin and Yang, Jian},
journal={IEEE Conference on Computer Vision and Pattern Recognition},
year={2019}
}
@inproceedings{li2019spatial,
title={Spatial Group-wise Enhance: Enhancing Semantic Feature Learning in Convolutional Networks},
author={Li, Xiang and Hu, Xiaolin and Xia, Yan and Yang, Jian},
journal={arXiv preprint arXiv:1905.09646},
year={2019}
}
@inproceedings{li2019understanding,
title={Understanding the Disharmony between Weight Normalization Family and Weight Decay: e-shifted L2 Regularizer},
author={Li, Xiang and Chen, Shuo and Yang, Jian},
journal={arXiv preprint arXiv:},
year={2019}
}
@inproceedings{li2019generalization,
title={Generalization Bound Regularizer: A Unified Framework for Understanding Weight Decay},
author={Li, Xiang and Chen, Shuo and Gong, Chen and Xia, Yan and Yang, Jian},
journal={arXiv preprint arXiv:},
year={2019}
}