Ini adalah implementasi PyTorch dari makalah "Peningkatan Jaringan Residu untuk Pengenalan Gambar dan Video":
@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},
}
Model yang dilatih di ImageNet dapat ditemukan di sini.
iResNet (jaringan sisa yang ditingkatkan) mampu meningkatkan baseline (ResNet) dalam hal kinerja pengenalan tanpa menambah jumlah parameter dan biaya komputasi. iResNet sangat efektif dalam melatih model yang sangat mendalam (lihat makalah untuk detailnya).
Akurasi pada ImageNet (menggunakan pengaturan pelatihan default):
Jaringan | 50 lapisan | 101 lapisan | 152 lapisan | 200 lapisan |
---|---|---|---|---|
ResNet | 76,12% (model) | 78,00% (model) | 78,45% (model) | 77,55% (model) |
iResnet | 77,31 % (model) | 78,64 % (model) | 79,34 % (model) | 79,48 % (model) |
Instal kumpulan data PyTorch dan ImageNet mengikuti kode pelatihan resmi PyTorch ImageNet.
Alternatif cepat (tanpa perlu menginstal PyTorch dan perpustakaan pembelajaran mendalam lainnya) adalah dengan menggunakan NVIDIA-Docker, kami menggunakan gambar kontainer ini.
Untuk melatih model (misalnya, iResNet dengan 50 lapisan) menggunakan DataParallel, jalankan main.py
; Anda juga perlu menyediakan result_path
(jalur direktori tempat menyimpan hasil dan log) dan --data
(jalur ke kumpulan 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
Untuk berlatih menggunakan Pelatihan Paralel Data Terdistribusi Multi-pemrosesan, ikuti instruksi dalam kode pelatihan resmi PyTorch ImageNet.