Machine learning 是否有省略VGG16目标类的方法?

Machine learning 是否有省略VGG16目标类的方法?,machine-learning,feature-extraction,vgg-net,Machine Learning,Feature Extraction,Vgg Net,我有一堆医学图像,我想对它们进行一些特征提取。为此,我打算使用预训练的CNN VGG16。它有一个由普通对象的名称组成的目标类列表。如何将其更改为进行特征提取而不是对象分类?我的意思是,我应该对它的架构进行什么样的更改?这取决于您使用的语言和框架,您应该在问题中指定这些内容。在Pytorch中,您可以这样做: original_model = models.vgg19(pretrained=True).eval() feature_extractor = nn.Sequential(*list(

我有一堆医学图像,我想对它们进行一些特征提取。为此,我打算使用预训练的CNN VGG16。它有一个由普通对象的名称组成的目标类列表。如何将其更改为进行特征提取而不是对象分类?我的意思是,我应该对它的架构进行什么样的更改?

这取决于您使用的语言和框架,您应该在问题中指定这些内容。在Pytorch中,您可以这样做:

original_model = models.vgg19(pretrained=True).eval()
feature_extractor = nn.Sequential(*list(original_model.features.children()))
normalize = transforms.Normalize(mean=[0.485, 0.456, 0.406],
                                 std=[0.229, 0.224, 0.225])
img = io.imread("some_image.png")
img = transform.resize(img, (224, 224), order=3)
img = torch.from_numpy(img)
img = img.permute(2, 0, 1)
img = normalize(img)
img = img.unsqueeze(0)
with torch.no_grad():
    features = feature_extractor.forward(img)

注意缩放和标准化,vgg最适合224x224标准化(使用代码中的值)。

谢谢。这很有帮助。我使用tensorflow,但我有这个想法。