数据并行训练与服务:评估、调优及瓶颈解决
1. 模型评估与超参数调优
在数据并行模型训练的每个 epoch 之后,需要评估训练进度是否良好。评估结果用于超参数调优,如学习率和每个 GPU 的批量大小。
1.1 数据划分
验证集来自训练集,将总训练数据按 5:1 的比例划分,5/6 用于模型训练,1/6 用于模型验证。代码实现如下:
import torch
from torchvision import datasets, transforms
train_all_set = datasets.MNIST('./mnist_data',
download=True, train=True,
transform = transforms.Compose([
transforms.ToTensor(),
transforms.Normalize((0.1307,), (0.3081,))]))
train_set, val_set = torch.utils.data.random_split(
train_all_set,
[50000, 10000])
1.2 验证函数
定义验证函数,计算验证准确率:
数据并行训练评估、调优与瓶颈解决
超级会员免费看
订阅专栏 解锁全文

824

被折叠的 条评论
为什么被折叠?



