微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从pytorch中的预训练模型创建子模型而不必重写整个架构?

如何解决如何从pytorch中的预训练模型创建子模型而不必重写整个架构?

所以,我一直在研究 Pytorch 中的神经风格迁移,但我被困在我们必须通过有限数量的层运行输入图像并最小化风格损失的点上。长话短说,我想在 Pytorch 中找到一种方法来评估架构不同层的输入(我使用的是 vgg16)。我已经看到这个问题在 keras 中很简单地解决了,但我想看看在 pytorch 中是否也有类似的方法

search_path

解决方法

当然可以这样做:

import torch
import torchvision

pretrained = torchvision.models.vgg16(pretrained=True)
features = pretrained.features

# First 4 layers
model = torch.nn.Sequential(*[features[i] for i in range(4)])

您可以随时print您的模型并查看它的结构。如果它是 torch.nn.Sequential(或者它的一部分,如上所述),你总是可以使用这种方法。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?