pytorch передавая тип архитектуры с помощью argprse
Используя Pytorch. При передаче типа архитектуры используйте следующий код:
parser.add_argument('-arch', action='store',
dest='arch',
default= str('vgg16'))
При использовании названия архитектуры со следующим кодом:
model = models.__dict__['{!r}'.format(results.arch)](pretrained=True)
Я получаю следующую ошибку:
модель = модели.dict'{! r}'. format (results.arch) KeyError: "'vgg16'"
Что я делаю неправильно?
2 ответа
Решение
Ты получил KeyError
то есть ваш импортированный models
не включать 'vgg16'
как одна из известных моделей.
Проверьте, какие модели у вас есть, распечатав
print(models.__dict__.keys())
Это должно позволить вам узнать, какие модели вы импортируете, а какие отсутствуют, тогда вы можете посмотреть в ваших импорте и увидеть, где 'vgg16'
потерялся.
model = models.__dict__[results.arch](pretrained=True)
Решение.