pycaffe 'solver.step' не может тренироваться с использованием Адама

Я пытаюсь обучить модель с помощью pycaffe. Я использую Adam Optimizer. Прямой и обратный коды работают нормально:

solver.net.forward()
solver.net.backward()

Однако на этапе обновления (solver.update()) происходит сбой со следующей ошибкой:

AttributeError: 'AdamSolver' object has no attribute 'update'
F1102 12:14:25.689537 24420 benchmark.cpp:18] Check failed: error == cudaSuccess (10 vs. 0) invalid device ordinal

Когда я пробую solver.step(1), я получаю:

solver.step(1) failed to work with the following error: 
F1101 19:28:43.213888  5038 benchmark.cpp:30] Check failed: error == cudaSuccess (71 vs. 0)  operation not supported
*** Check failure stack trace: ***
Aborted (core dumped)

Я подозреваю, что есть проблема с установкой, на самом деле у меня было несколько тестовых случаев, которые не прошли мой runtest, связано ли это и что мне нужно исправить, если мне нужно будет перестроить?

РЕДАКТИРОВАТЬ 1: я исправил все проблемы, которые у меня были во время выполнения теста, но все еще имею ту же проблему.


person Kasparov92    schedule 02.11.2017    source источник
comment
какие тесты провалились? вам нужно предоставить больше информации. В настоящее время кажется, что ваш графический процессор не поддерживает версию CUDA, ожидаемую caffe.   -  person Shai    schedule 02.11.2017
comment
Вот тесты, которые не прошли, и я исправил это.. теперь пытаюсь перестроить и выяснить, решит ли это эту проблему или нет 47074039#47074039" title="caffe runtest failed">stackoverflow.com/questions/47073514/caffe-runtest-fails/   -  person Kasparov92    schedule 02.11.2017
comment
все еще терпит неудачу .. все тестовые случаи успешно выполняются   -  person Kasparov92    schedule 02.11.2017
comment
у вас есть более одного графического процессора на вашей машине? обе ошибки все еще возникают?   -  person Shai    schedule 02.11.2017
comment
Я использую caffe.set_device(0), поэтому я считаю, что это не проблема с несколькими графическими процессорами, и в любом случае это только один графический процессор.   -  person Kasparov92    schedule 02.11.2017
comment
и да, у меня возникают обе ошибки, но для solver.update у меня напечатана дополнительная ошибка: F1102 12:14:25.689537 24420 benchmark.cpp:18] Check failed: error == cudaSuccess (10 vs. 0) invalid device ordinal   -  person Kasparov92    schedule 02.11.2017


Ответы (1)


Поместите caffe.set_mode_gpu() и caffe.set_device(0) до того, как caffe.get_solver(solver_path) решит проблему.

person Kasparov92    schedule 05.11.2017