iresnet
1.0.0
これは、論文「画像およびビデオ認識のための改良された残差ネットワーク」の PyTorch 実装です。
@article{duta2020improved,
author = {Ionut Cosmin Duta and Li Liu and Fan Zhu and Ling Shao},
title = {Improved Residual Networks for Image and Video Recognition},
journal = {arXiv preprint arXiv:2004.04989},
year = {2020},
}
ImageNet でトレーニングされたモデルはここにあります。
iResNet (改良された残差ネットワーク) は、パラメーターの数や計算コストを増やすことなく、認識パフォーマンスの点でベースライン (ResNet) を向上させることができます。 iResNet は、非常に深いモデルのトレーニングに非常に効果的です (詳細については論文を参照してください)。
ImageNet での精度 (デフォルトのトレーニング設定を使用):
ネットワーク | 50層 | 101層 | 152層 | 200層 |
---|---|---|---|---|
レスネット | 76.12% (モデル) | 78.00%(モデル) | 78.45% (モデル) | 77.55% (モデル) |
アイレスネット | 77.31 %(モデル) | 78.64 %(モデル) | 79.34 %(モデル) | 79.48 %(モデル) |
公式の PyTorch ImageNet トレーニング コードに従って、PyTorch と ImageNet データセットをインストールします。
迅速な代替方法 (PyTorch やその他の深層学習ライブラリをインストールする必要がない) は、NVIDIA-Docker を使用することです。私たちはこのコンテナー イメージを使用しました。
DataParallel を使用してモデル (たとえば、50 層の iResNet) をトレーニングするには、 main.py
を実行します。 result_path
(結果とログを保存するディレクトリ パス) と--data
(ImageNet データセットへのパス) も指定する必要があります。
result_path=/your/path/to/save/results/and/logs/
mkdir -p ${result_path}
python main.py
--data /your/path/to/ImageNet/dataset/
--result_path ${result_path}
--arch iresnet
--model_depth 50
マルチプロセス分散データ並列トレーニングを使用してトレーニングするには、公式の PyTorch ImageNet トレーニング コードの指示に従ってください。