第三章
3.1 思考: 完成深度学习的必要部分
知识点1. 深度学习的简单定义
由于深度学习所需的样本量很大, 一次加载全部数据运行可能会超出内存容量而无法实现; 同时还有批(batch)训练等提高模型表现的策略, 需要每次训练读取固定数量的样本送入模型中训练.
知识点2. 深度学习中训练与验证过程的特点
深度学习中训练和验证过程最大的特点在于读入数据是按批,每次读入一个批次的数据,放入GPU中训练,然后将损失函数反向传播回网络最前面的曾, 同时使用优化器调整网络参数.这里会涉及到各个模块配合的问题.训练/验证后还需要根据设定好的指标计算模型表现.
3.2 基本配置
知识点1. 深度学习任务一般意义下的几个超参数
- batch_size
- 初始学习率
- 训练次数(max_epochs)
- GPU配置
知识点2. GPU设置的两种常见的方式
- 方案1: 使用os.environ, 这种情况如果使用GPU不需要设置
os.environ['CUDA_VISIBLE_DEVICES'] = '0.1'
- 方案2: 使用"device", 后续对要使用GPU的变量用.to(device)即可
device = torch.device("cuda:1" if torch.cuda.is_available() else "cpu")
3.3 数据读入
知识点1. Pytorch中数据读入方式简介
PyTorch数据读入是通过Dataset + DataLoader的方式完成的, Dataset定义好数据的格式和数据变换形式, DataLoader用iterative的方式不断读入批次数据.
待补