数据并行训练与服务:从评估调优到瓶颈解决
1. 模型评估与超参数调优
在数据并行模型训练中,每个训练周期结束后,我们都需要评估训练进度是否良好。评估结果可用于超参数调优,如学习率和每个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 验证函数定义
得到验证集后,我们需要定义验证函数,以下是具体代码及
超级会员免费看
订阅专栏 解锁全文
6万+

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



