Я использую tensorflow-gpu 1.15.3 и keras 2.3.1 с python 3.7 и cuda 10.0. Я подтверждаю, что версия tensorflow соответствует python и cuda (включая cudnn). Tenorflow-gpu отлично работает, когда я тестирую его на игрушечном примере по классификации изображений (например, https://github.com/keras-team/keras/blob/master/examples/cifar10_cnn.py). Но когда я пробую большую модель cnn, такую как Yolo-v3 (т.е. https://github.com/qqwweee/keras-yolo3), она может выдавать ошибку (не всегда):
UnknownError: 2 root error(s) found.
(0) Unknown: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.
[[{{node conv2d_1/convolution}}]]
[[Mean/_2311]]
(1) Unknown: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.
[[{{node conv2d_1/convolution}}]]
0 successful operations.
0 derived errors ignored.
Чаще всего это ошибка связана с несоответствием между версиями tensorflow-gpu и cuda. Но здесь, похоже, это не тот случай. обучение пройдет нормально без ошибки Failled to get convolution algorithm ...
. Но если я проведу обучение Yolo напрямую, возникнет эта ошибка.
У кого-нибудь был подобный опыт? Какие могут быть причины?