Der TORCHVISION MODEL ZOO bietet eine Anzahl der Implementierungen verschiedener hochmodernen Architekturen. Die meisten von ihnen werden jedoch für ImagEnet definiert und implementiert. Normalerweise ist es unkompliziert, die bereitgestellten Modelle für andere Datensätze zu verwenden, aber einige Fälle erfordern eine manuelle Einrichtung.
Beispielsweise liefern nur sehr wenige Pytorch -Repositories mit ResNets auf CIFAR10 die im Originalpapier beschriebene Implementierung. Wenn Sie nur die Modelle der Torchvision auf CIFAR10 verwenden, erhalten Sie das Modell , das sich in der Anzahl der Ebenen und Parameter unterscheidet . Dies ist inakzeptabel, wenn Sie Resnet-S auf CIFAR10 direkt mit dem Originalpapier vergleichen möchten. Der Zweck dieses Repo ist es, eine gültige Pytorch-Implementierung von Resnet-S für CIFAR10 bereitzustellen, wie im Originalpapier beschrieben. Die folgenden Modelle sind bereitgestellt:
| Name | # Schichten | # Parames | Test err (Papier) | Testen Sie err (dies impl.) |
|---|---|---|---|---|
| Resnet20 | 20 | 0,27 m | 8,75% | 8,27% |
| Resnet32 | 32 | 0,46 m | 7,51% | 7,37% |
| Resnet44 | 44 | 0,66 m | 7,17% | 6,90% |
| Resnet56 | 56 | 0,85 m | 6,97% | 6,61% |
| Resnet110 | 110 | 1,7 m | 6,43% | 6,32% |
| Resnet1202 | 1202 | 19,4 m | 7,93% | 6,18% |
Diese Implementierung entspricht der Beschreibung des Originalpapiers mit vergleichbarem oder besserem Testfehler.
git clone https://github.com/akamaster/pytorch_resnet_cifar10
cd pytorch_resnet_cifar10
chmod +x run.sh && ./run.shUnsere Implementierung folgt dem Papier auf einfache Weise mit einigen Einschränkungen: Erstens verwendet das Training im Papier 45K/5K -Zug-/Validierungs -Split in den Zugdaten und wählt das am besten leistungsstarke Modell basierend auf der Leistung des Validierungssatzes aus. Wir führen keine Validierungstests durch; Wenn Sie Ihre Ergebnisse auf Resnet mit dem Orginalpapier mit dem orginischen Papier vergleichen müssen, denken Sie daran. Zweitens , wenn Sie ResNet1202 trainieren möchten, denken Sie daran, dass Sie 16 GB Speicher für GPU benötigen.
Wenn Sie diese Implementierung nützlich finden und diese Seite zitieren/erwähnen möchten, finden Sie hier ein Bibtex -Zitat:
@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 "
}