นี่คือการใช้งาน 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 เราใช้คอนเทนเนอร์อิมเมจนี้
หากต้องการฝึกโมเดล (เช่น iResNet ที่มี 50 เลเยอร์) โดยใช้ DataParallel ให้รัน 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 อย่างเป็นทางการ