Machine learning 带有argprse的pytorch传递体系结构类型
使用Pytork。使用以下代码传递架构类型时:Machine learning 带有argprse的pytorch传递体系结构类型,machine-learning,neural-network,computer-vision,argparse,pytorch,Machine Learning,Neural Network,Computer Vision,Argparse,Pytorch,使用Pytork。使用以下代码传递架构类型时: parser.add_argument('-arch', action='store', dest='arch', default= str('vgg16')) model = models.__dict__['{!r}'.format(results.arch)](pretrained=True) 将体系结构的名称与以下代码一起使用时: parser.add_ar
parser.add_argument('-arch', action='store',
dest='arch',
default= str('vgg16'))
model = models.__dict__['{!r}'.format(results.arch)](pretrained=True)
将体系结构的名称与以下代码一起使用时:
parser.add_argument('-arch', action='store',
dest='arch',
default= str('vgg16'))
model = models.__dict__['{!r}'.format(results.arch)](pretrained=True)
我得到以下错误:
model=models.dict'{!r}'。格式(results.arch)
KeyError:“'vgg16'”
我做错了什么?你明白了,你导入的模型不包括'vgg16'
作为已知模型之一。
通过打印检查您有哪些型号
print(models.__dict__.keys())
这应该可以让您知道导入了哪些模型以及哪些模型丢失了,然后您可以查看导入的内容并查看'vgg16'
丢失的地方
model = models.__dict__[results.arch](pretrained=True)
解决方案。vgg16确实存在于列表中。我认为问题在于我传递的是“vgg16”,而不是vgg16
。额外的quotes@DarioFederici它是否以'vgg16'
或“'vgg16'”
的形式存在(请注意额外的引号)。这就是的内容!r
正在执行格式化字符串,您可能需要将其删除。