问题:
window10 pytorch不能使用多进程,num_workers只能设置为0,导致GPU训练时速度太慢。查阅网上资料,都window10不能使用多进程,其实是可以的。
解决:
在你的代码里加上
if __name__ == "__main__":
例如:
if __name__ == "__main__":
train_model(model_ft, criterion, optimizer_ft, exp_lr_scheduler,num_epochs)
这样就可以使用多进程了,训练速度提高4倍左右,原来我训练40个周期要8小时左右,现在只要2个小时了,大大减少训练时间。
dataloaders = {x: torch.utils.data.DataLoader(image_datasets[x], batch_size=batch_size,
shuffle=True, num_workers=4)
for x in ['train', 'val']}