我在官方火炬文件上看到,最近,视觉变压器和ConvNeXt模型家族被添加到PyTorch模型动物园。然而,即使升级到最新的torchvision版本0.11.3 (通过pip),这些新型号也无法获得:
>>> import torchvision; torchvision.__version__
'0.11.3+cu102'
>>> import torchvision.models as models
>>> model = models.resnext50_32x4d() # previous models work fine
>>> model = models.vit_b_16() # vision transformers don't work
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: module 'torchvision.models' has no attribute 'vit_b_16'有什么想法吗?我怎样才能在PyTorch中访问这些最新的模型添加?
发布于 2022-03-21 10:53:49
虽然@Shai的回答是一个很好的补充,但我最初的问题是如何在ViT中访问官方的torchvision.models和ConvNeXt模型。结果,答案只是简单地等待。因此,作为记录:在升级到0.12版的最新torchvision pip包之后,我也得到了这些新型号。
发布于 2022-03-08 12:28:12
除了torchvision之外,还有其他的方法可以获得pytorch模型。您应该查看torch.hub,以便从特定的github repos获取模型,这些github repos支持通过这个接口进行共享。
此外,您还拥有timm --一个存储许多py手电视觉模型的存储库。
例如:
# list all ViT models
timm.list_models('vit_*')
# list all convNext models
timm.list_models('convnext*')
# load ViT-B/16
vit_b_16 = timm.create_model('vit_base_patch16_224', pretrained=True)
# load conv next
convnext = timm.create_model('convnext_base', pretrained=True)https://stackoverflow.com/questions/71393736
复制相似问题