从预训练的火炬中获取最后一层以进行迁移学习?

时间:2019-05-19 22:42:23

标签: python pytorch

这就是我所做的:

data[x][y]

正确的方法是什么? 我的目标是替换最后一层,以进行迁移学习。

1 个答案:

答案 0 :(得分:1)

您可以简单地按照以下步骤从预训练的pytorch模型中获取最后一层:

  • 我们可以使用model.children()获取图层。
  • 通过在列表上使用list()命令将其转换为列表。
  • 通过索引列表来删除最后一层。
  • 最后,使用PyTorch函数nn.Sequential()将修改后的列表一起堆叠到新模型中。

    nn.Sequential(*list(model.children())[:-1])

您可以从here中了解有关此内容的更多信息。