Torchvision Model Zoo ให้จำนวนการใช้งานของสถาปัตยกรรมที่ทันสมัย แต่ส่วนใหญ่ของพวกเขาจะถูกกำหนดและนำไปใช้สำหรับ Imagenet โดยปกติแล้วมันจะตรงไปตรงมาที่จะใช้โมเดลที่ให้ไว้ในชุดข้อมูลอื่น ๆ แต่บางกรณีต้องใช้การตั้งค่าด้วยตนเอง
ตัวอย่างเช่นที่เก็บ pytorch น้อยมากที่มี resnets บน CIFAR10 ให้การใช้งานตามที่อธิบายไว้ในกระดาษต้นฉบับ หากคุณเพิ่งใช้โมเดลของ Torchvision บน CIFAR10 คุณจะได้รับโมเดล ที่แตกต่างกันในจำนวนเลเยอร์และพารามิเตอร์ สิ่งนี้ไม่สามารถยอมรับได้หากคุณต้องการเปรียบเทียบ ResNet-S โดยตรงบน CIFAR10 กับกระดาษต้นฉบับ วัตถุประสงค์ของ repo นี้คือการจัดทำ pytorch ที่ถูกต้องของ resnet-s สำหรับ cifar10 ตามที่อธิบายไว้ในกระดาษต้นฉบับ มีรุ่นต่อไปนี้:
| ชื่อ | # เลเยอร์ | # params | ทดสอบเอ่อ (กระดาษ) | ทดสอบ Err (Impl. นี้) |
|---|---|---|---|---|
| resnet20 | 20 | 0.27m | 8.75% | 8.27% |
| resnet32 | 32 | 0.46m | 7.51% | 7.37% |
| resnet44 | 44 | 0.66m | 7.17% | 6.90% |
| Resnet56 | 56 | 0.85m | 6.97% | 6.61% |
| resnet110 | 110 | 1.7m | 6.43% | 6.32% |
| Resnet1202 | 1202 | 19.4m | 7.93% | 6.18% |
การใช้งานนี้ตรงกับคำอธิบายของกระดาษต้นฉบับโดยมีข้อผิดพลาดในการทดสอบหรือดีกว่าหรือดีกว่า
git clone https://github.com/akamaster/pytorch_resnet_cifar10
cd pytorch_resnet_cifar10
chmod +x run.sh && ./run.shการใช้งานของเราเป็นไปตามกระดาษอย่างตรงไปตรงมาด้วยคำเตือนบางอย่าง: อันดับแรก การฝึกอบรมในกระดาษใช้การแยกรถไฟ/การตรวจสอบความถูกต้อง 45k/5k บนข้อมูลรถไฟและเลือกรูปแบบที่มีประสิทธิภาพดีที่สุดตามประสิทธิภาพในชุดการตรวจสอบความถูกต้อง เรา ไม่ทำการทดสอบ การตรวจสอบความถูกต้อง หากคุณต้องการเปรียบเทียบผลลัพธ์ของคุณบน Resnet head-head กับกระดาษ orginal โปรดจำไว้ ประการที่สอง หากคุณต้องการฝึก RESNET1202 โปรดจำไว้ว่าคุณต้องการหน่วยความจำ 16GB บน GPU
หากคุณพบว่าการใช้งานนี้มีประโยชน์และต้องการอ้างอิง/พูดถึงหน้านี้นี่คือการอ้างอิง BibTex:
@misc { Idelbayev18a ,
author = " Yerlan Idelbayev " ,
title = " Proper {ResNet} Implementation for {CIFAR10/CIFAR100} in {PyTorch} " ,
howpublished = " url{https://github.com/akamaster/pytorch_resnet_cifar10} " ,
note = " Accessed: 20xx-xx-xx "
}