常见的Transforms
使用不同的方法转换输入输出。
1  | from torchvision import tranforms  | 
按住ctrl键可以打开transforms的源码,然后可以在pycharm的左边structure处看见结构,里面包含了所有的类。注意是类,要构造一个对象。
常用的一些类包括:
- Compose
 - ToTensor
 - Normalize
 - Resize
 
常见的层
- convolution layer:能够考虑空间信息
 - maxpool layer:类似于马赛克,训练的数据量大大的减小
 - dropout layer:随机地把一些元素变成零,主要为了防止过拟合
 - non linear layer:非线性越多,才能训练出符合各种曲线的函数
 - flatten layer:该层用于将数据平铺,之后可以输入给全连接层,平铺时batch_size并不会改变
 - linear layer:全连接层,两个全连接层可以拟合任何函数,在输入时需要将各个维度展开
 - batch normalization layer:批归一化,能够加快收敛速度,但是不能提升模型精度
 
GPU训练
先指定device:
1  | device = torch.device('cuda')  | 
然后需要迁移模型、损失函数、样本
1  | model.to(device)  |