Torch / Lua,如何获取并保存训练好的神经网络模型的参数到文件?

时间:2017-04-13 08:49:46

标签: parameters save torch

th> net
nn.Sequential {
  [input -> (1) -> (2) -> (3) -> (4) -> (5) -> (6) -> (7) -> (8) -> (9) -> (10) -> (11) -> (12) -> (13) -> (14) -> output]
  (1): nn.VolumetricFullConvolution(200 -> 512, 4x4x4)
  (2): nn.VolumetricBatchNormalization (5D) (512)
  (3): nn.ReLU
  (4): nn.VolumetricFullConvolution(512 -> 256, 4x4x4, 2,2,2, 1,1,1)
  (5): nn.VolumetricBatchNormalization (5D) (256)
  (6): nn.ReLU
  (7): nn.VolumetricFullConvolution(256 -> 128, 4x4x4, 2,2,2, 1,1,1)
  (8): nn.VolumetricBatchNormalization (5D) (128)
  (9): nn.ReLU
  (10): nn.VolumetricFullConvolution(128 -> 64, 4x4x4, 2,2,2, 1,1,1)
  (11): nn.VolumetricBatchNormalization (5D) (64)
  (12): nn.ReLU
  (13): nn.VolumetricFullConvolution(64 -> 1, 4x4x4, 2,2,2, 1,1,1)
  (14): nn.Sigmoid
}

我想获取并保存此模型的参数到文件。 我试过net:getParameters()。但我得到了一维数组。 如何获取并保存此模型的参数到文件?

1 个答案:

答案 0 :(得分:1)

您可以torcy.save('mynet.t7',net保存。 参数可以通过访问 params, grad_params = net:getParameters()。获取此变量后,可以使用torch.save保存它,使用二进制格式保存对象。所以你这样用火炬保存任何变量