pytorch передавая тип архитектуры с помощью argprse - PullRequest
0 голосов
/ 27 сентября 2018

Использование Pytorch.При передаче типа архитектуры с помощью следующего кода:

parser.add_argument('-arch', action='store',
                    dest='arch',
                    default= str('vgg16'))

При использовании имени архитектуры со следующим кодом:

model = models.__dict__['{!r}'.format(results.arch)](pretrained=True)

я получаю следующую ошибку:

model = models. dict '{! R}'. Format (results.arch) KeyError: "'vgg16'"

Что я делаю не так

Ответы [ 2 ]

0 голосов
/ 27 сентября 2018
model = models.__dict__[results.arch](pretrained=True)

Решение.

0 голосов
/ 27 сентября 2018

Вы получили KeyError, что означает, что ваши импортированные models не включают 'vgg16' в качестве одной из известных моделей.
Проверьте, какие у вас есть модели, напечатав

print(models.__dict__.keys())

Это должно позволить вам узнать, какие модели вы импортируете, а какие отсутствуют, тогда вы можете просмотреть свои импортные данные и увидеть, где 'vgg16' потеряно.

...