pytorch学习笔记-高阶篇(数据增强)
为了使网络的性能增强,一个很常见的方法或者说途径就是增大数据集,本篇介绍一种最大化利用已有数据集的方法–数据增强
一、可选优化方法
对于数据有限这一不可避免的事实,我们可以:
- 减少网络参数量
- Regularization
- 数据增强
二、数据增强
- Flip
train_loader = torch.utils.data.DataLoader( datasets.MNIST('../data', train=True, download=True, transform=transforms.Compose([ # 随机性保证不是所有的图片都做此操作 transforms.RandomHorizontalFlip(), transforms.RandomVerticalFlip(), transforms.ToTensor(), # transforms.Normalize((0.1307,), (0.3081,)) ])), batch_size=batch_size, shuffle=True)
- Rotate
train_loader = torch.utils.data.DataLoader( datasets.MNIST('../data', train=True, download=True, transform=transforms.Compose([ # 旋转角度-15°~15° transforms.RandomRotation(15), # 指定旋转角度 transforms.RandomRotation([90, 180, 270]), transforms.ToTensor(), # transforms.Normalize((0.1307,), (0.3081,)) ])), batch_size=batch_size, shuffle=True)
- Random Move & Crop
train_loader = torch.utils.data.DataLoader( datasets.MNIST('../data', train=True, download=True, transform=transforms.Compose([ transforms.Resize([32, 32]), # 随机裁剪 transforms.RandomCrop([28, 28]), transforms.ToTensor(), # transforms.Normalize((0.1307,), (0.3081,)) ])), batch_size=batch_size, shuffle=True)
- GAN
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 不听话的兔子君!