Запустите Tensorflow с механизмом логического вывода NVIDIA TensorRT

Я хотел бы использовать NVIDIA TensorRT для запуска своих моделей Tensorflow. В настоящее время TensorRT поддерживает файлы сетевых прототипов Caffe prototxt.

Мне не удалось найти исходный код для преобразования моделей Tensorflow в модели Caffe. Есть ли обходные пути?

2 ответа

TensorRT 3.0 поддерживает импорт / преобразование графиков TensorFlow через его UFF (универсальный формат фреймворка). Некоторые реализации уровня отсутствуют и потребуют пользовательских реализаций через интерфейс IPlugin.

Предыдущие версии не поддерживали собственный импорт моделей / контрольных точек TensorFlow.

Что вы также можете сделать, это экспортировать описание слоев / сети в ваш собственный промежуточный формат (например, текстовый файл), а затем использовать TensorRT C++ API для построения графика для вывода. Вы должны были бы экспортировать веса / уклоны свертки отдельно. Обязательно обратите внимание на весовой формат - TensorFlow использует NHWC, а TensorRT использует NCHW. А для весов TF использует RSCK ([filter_height, filter_width, input_depth, output_depth]), а TensorRT использует KCRS.

Смотрите эту статью для расширенного обсуждения тензорных форматов: https://arxiv.org/abs/1410.0759

Также эта ссылка содержит полезную информацию: https://www.tensorflow.org/versions/master/extend/tool_developers/

В настоящее время обходных путей не требуется, поскольку в новый TensorRT 3 добавлена ​​поддержка TensorFlow.

Другие вопросы по тегам