版权声明:本文为博主原创文章,欢迎转载,并请注明出处。联系方式:460356155@qq.com
在前一篇中的ResNet-34残差网络,经过减小卷积核训练准确率提升到85%。
这里对训练数据集做数据增强:
1、对原始32*32图像四周各填充4个0像素(40*40),然后随机裁剪成32*32。
2、按0.5的概率水平翻转图片。
代码具体修改如下:
1 transform_train = transforms.Compose([ 2 # 对原始32*32图像四周各填充4个0像素(40*40),然后随机裁剪成32*32 3 transforms.RandomCrop(32, padding=4), 4 5 # 按0.5的概率水平翻转图片 6 transforms.RandomHorizontalFlip(), 7 8 transforms.ToTensor(), 9 transforms.Normalize([0.5, 0.5, 0.5], [0.5, 0.5, 0.5])]) 10 11 transform_test = tv.transforms.Compose([ 12 transforms.ToTensor(), 13 transforms.Normalize([0.5, 0.5, 0.5], [0.5, 0.5, 0.5])]) 14 15 # 定义数据集 16 train_data = tv.datasets.CIFAR10(root=ROOT, train=True, download=True, transform=transform_train) 17 test_data = tv.datasets.CIFAR10(root=ROOT, train=False, download=False, transform=transform_test)
从前面网络训练准确率的变化看,训练不到100个迭代准确率基本就稳定不变,因此这里只训练150个epoc