Я пытаюсь обучить CNN для обнаружения объектов на изображениях с помощью набора данных CIFAR10 для семинара в моем университете, но я получаю следующую ошибку:
AssertionError: AbstractConv2d Оптимизация Theano не удалась: нет доступная поддержка запрошенных вариантов. Вы были исключить из оптимизатора "conv_dnn" и "conv_gemm"? Если на GPU, доступно cuDNN и поддерживает ли GPU? Если на процессоре у вас есть библиотека BLAS, установленная Theano, может связываться с?
Я запускаю Anaconda 2.7 в ноутбуке Jupyter (обучение CNN на процессоре) с компьютера Windows 10. Поскольку я уже обновил новую версию anano с помощью git clone, я пробовал следующие вещи:
- исключить dnn и gemm непосредственно из кода
THEANO_FLAGS='optimizer_excluding=conv_dnn, optimizer_excluding=conv_gemm'
- исключить dnn и gemm непосредственно из команды cmd
THEANO_FLAGS='...' python <myscript>.py
, которая не вызывает неожиданно ошибки "неизвестной команды". - исключить dnn и gemm из .theanorc.txt, который я ввел в C:/user/myusername
К сожалению, я все еще получаю ту же ошибку, и когда я вызываю print(teano.config)
, термины "conv_dnn" и "conv_gemm" не отображаются.
- Кроме того, я попытался выяснить, какой BLAS использует мой пакет numpy (что обычно хорошо работает), и если этот пакет статичен с помощью инструмента dependencywalker.com, но я терпел неудачу
Итак, вот мой вопрос: как я могу правильно установить флаги-аанано и как проверить, выполнил ли я это? Если это не поможет, как я могу проверить, какой BLAS я создаю? Какой я должен использовать и как я могу изменить зависимость для theano?
Как вы, возможно, догадались, я не эксперт, когда дело доходит до всего этого пакета, зависимости, встроенных и других причудливых материалов по компьютерной науке и документации, которую я нахожу, это просто не доказательство нуба, поэтому я был бы очень благодарен, что вы, ребята, может помочь мне!
Лучшие
Джонас