数据并行训练与服务:评估、调优及瓶颈分析
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 验证函数定义
得到验证集后,需要定义验证函数,具
超级会员免费看
订阅专栏 解锁全文

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



