使用DataParallel时初始化优化和保存模型

时间:2017-06-24 02:36:15

标签: pytorch

使用DataParallel时,两条标记的行1)2)是否等效?

model = torch.nn.DataParallel(net).cuda()
optim = torch.optim.Adam(net.parameters(), lr)        # 1)
optim = torch.optim.Adam(net.module.parameters(), lr) # 2)

或者其中一个是否会产生奇怪的同步问题?

此外,在将params保存到文件时,使用DataParallel模块时首选哪一个?

model = torch.nn.DataParallel(net).cuda()
...
torch.save({
  'epoch': epoch,
  'state_dict': model.state_dict(),        # 1)
  'state_dict': model.module.state_dict(), # 2)
  'best_loss': best_loss,
}, filename)

0 个答案:

没有答案