Как я могу преобразовать оптимизированную TRT модель в сохраненную модель?
Я хотел бы преобразовать оптимизированную TRT замороженную модель в сохраненную модель для обслуживания тензорного потока. Есть ли какие-либо предложения или источники, чтобы поделиться?
Или есть ли другие способы развертывания модели, оптимизированной для TRT, в обслуживании тензорного потока?
Благодарю.
1 ответ
Предполагая, что у вас есть оптимизированная по TRT модель (то есть модель уже представлена в UFF), вы можете просто выполнить действия, описанные здесь: https://docs.nvidia.com/deeplearning/sdk/tensorrt-developer-guide/index.html. Обратите особое внимание на разделы 3.3 и 3.4, поскольку в этих разделах вы на самом деле создаете механизм TRT, а затем сохраняете его в файл для дальнейшего использования. Начиная с этого момента, вы можете просто повторно использовать сериализованный движок (файл PLAN), чтобы сделать вывод.
По сути, рабочий процесс выглядит примерно так:
- Построить / модель поезда в TensorFlow.
- Заморозить модель (вы получите представление protobuf).
- Конвертируйте модель в UFF, чтобы TensorRT мог ее понять.
- Используйте представление UFF для создания движка TensorRT.
- Сериализируйте движок и сохраните его в файл PLAN.
После того, как эти шаги выполнены (и вы должны иметь достаточный пример кода в предоставленной мной ссылке), вы можете просто загрузить файл PLAN и использовать его снова и снова для операций вывода.
Если вы все еще застряли, есть отличный пример, который установлен по умолчанию здесь: /usr/src/tensorrt/samples/python/end_to_end_tensorflow_mnist
, Вы должны быть в состоянии использовать этот пример, чтобы увидеть, как добраться до формата UFF. Затем вы можете просто объединить это с примером кода, приведенным в ссылке, которую я предоставил.