I had suffered similar problem like you, torchvision official resnet implementation gives low accuracy on CIFAR-10 dataset, expected > 90% Top-1 accuracy but everytime I got < 90%.
Maybe It’s too late to answer, but I leave the record here to prevent suffering same problem like me.
Now I knows that reason. I recommend you to use this resnet implementation for CIFAR-10 59.
Let me call torchvision official resnet impl as resnet_official and that link impl as resnet_github.
resnet_offcial’s first conv1 layer is defined by:
self.conv1 = nn.Conv2d(3, self.inplanes, kernel_size=7, stride=2, padding=3, bias=False)

this, kernel_size=7, stride=2 and padding=3 reduce the input image’s size in half at first. this is okay for ImageNet - the original target dataset for torchvision official impl - which has quite large input image size(224 * 224), but for CIFAR dataset, which has small input image size(32 * 32), this induces so many loss from input image. So resnet_official does not fit for dataset which has small input size, I guess.
on the other hand, resnet_github’s first conv1 layer is defined by:
self.conv1 = nn.Conv2d(3, 64, kernel_size=3, stride=1, padding=1, bias=False)

kernel_size=3, stride=1 and padding=1 keeps the original input size for quite a while in forwarding path. maybe this is more efficient for small input dataset.
I can reach >90% easily with that link implementation with CIFAR-10.