深度学习的训练过程通常非常耗时,其中训练过程的耗时主要来自于两个部分,一是数据准备,二是参数迭代。
当数据准备过程是模型训练时间的主要瓶颈时,我们可以使用更多进程来准备数据。当参数迭代过程成为训练时间的主要瓶颈时,我们通常的方法是应用 GPU 或者 Google 的 TPU 来进行加速。
在 PyTorch 中使用 GPU 进行模型训练步骤:
步骤一:
拿到 gpu 设备;
device = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu')
步骤二:
把训练模型拷贝到 gpu 设备上;
model.to(device)
步骤三:
在训练的时候,把数据一批批拷到 gpu 设备上。
x, y = x.to(device), y.to(device)