1

如果您在阅读标题时正在考虑这样的菜鸟-是的,我是。

我用谷歌搜索,但没有找到一个指南让我查看预训练的火炬神经网络是如何设计/编码的。我已经下载了预训练的网络(文件格式 .t7)并安装了 torch。谁能帮我查看它是如何编码的(使用什么尺寸的过滤器,使用的参数等)?

可能它不在谷歌上,因为它不可能?很乐意回答您的任何其他问题或任何不清楚的地方。

谢谢你。

4

1 回答 1

1

我认为不可能获得底层代码。但是您可以通过使用 print 来获得模型的摘要,其中包括层和主要参数。

model = SumModel(vocab_size=vocab_size, hiddem_dim=hidden_dim, batch_size=batch_size)
# saving model
torch.save(model, 'test_model.save')
# print summary of original
print(' - original model summary:')
print(model)
print()

# load saved model
loaded_model = torch.load('test_model.save')
# print summary of loaded model
print(' - loaded model summary:')
print(loaded_model)

这将输出如下所示的摘要。

  - original model summary:
SumModel(
  (word_embedding): Embedding(530734, 128)
  (encoder): LSTM(128, 128, batch_first=True)
  (decoder): LSTM(128, 128, batch_first=True)
  (output_layer): Linear(in_features=128, out_features=530734, bias=True)
)

 - loaded model summary:
SumModel(
  (word_embedding): Embedding(530734, 128)
  (encoder): LSTM(128, 128, batch_first=True)
  (decoder): LSTM(128, 128, batch_first=True)
  (output_layer): Linear(in_features=128, out_features=530734, bias=True)
)

使用 Pytorch 0.4.0 测试

如您所见,原始模型和加载模型的输出是一致的。

我希望这有帮助。

于 2018-04-29T13:43:17.823 回答