Экспорт модели MXNet в ONNX с ошибкой _contrib_MultiBoxPrior - PullRequest
0 голосов
/ 21 мая 2019

Я создал модель обнаружения объектов в AWS SageMaker на основе SSD / ResNet50 и в MXNet. Теперь я хотел бы оптимизировать его в TensorRT, для чего мне нужно экспортировать в ONNX в качестве первого шага.

Поиск какой-либо рекомендации по преобразованию _contrib_MultiBoxPrior в поддерживаемый символ не дал мне никакого результата.

Основной код

input_shape = (1, 3, 512, 512)
converted_model_path = onnx_mxnet.export_model(sym_file, params_file, [input_shape], np.float32, onnx_file)

Точное сообщение об ошибке

"AttributeError: Функция преобразования для типа операции _contrib_MultiBoxPrior еще не зарегистрирована."

Каков рекомендуемый способ устранения этой ошибки?

1 Ответ

0 голосов
/ 04 июля 2019

Реализация оператора MultiBoxPrior зависит от поддержки ONNX. Вы можете отследить проблему здесь: https://github.com/apache/incubator-mxnet/issues/15181

В качестве альтернативы вы можете попробовать использовать mxnet-tenorrt. Он использует API подграфа, что означает, что символ, который может быть выполнен в TensorRT, выполняется во время выполнения TensorRT, а те, которые не могут быть выполнены во время выполнения MXNet.

https://mxnet.incubator.apache.org/versions/master/tutorials/tensorrt/inference_with_trt.html

Обратите внимание, что текущая версия этого учебника предназначена для версии 1.3.0 MXNet, я считаю. Для следующего выпуска ожидается обновление с более простым API и лучшей производительностью.

...