首页 > 解决方案 > 如何将 TRT 优化模型转换为已保存模型?

问题描述

我想将 TRT 优化的冻结模型转换为 tensorflow 服务的保存模型。有什么建议或资源可以分享吗?

或者还有其他方法可以在 tensorflow 服务中部署 TRT 优化模型吗?

谢谢。

标签: tensorflowmodeltensorrt

解决方案


假设您有一个 TRT 优化模型(即模型已经在 UFF 中表示),您可以简单地按照此处概述的步骤操作:https ://docs.nvidia.com/deeplearning/sdk/tensorrt-developer-guide/index.html #python_topics。请特别注意第 3.3 节和第 3.4 节,因为在这些节中,您实际上构建了 TRT 引擎,然后将其保存到文件中以备后用。从那时起,您可以重新使用序列化引擎(又名 PLAN 文件)进行推理。

基本上,工作流程如下所示:

  1. 在 TensorFlow 中构建/训练模型。
  2. 冻结模型(你得到一个 protobuf 表示)。
  3. 将模型转换为 UFF,以便 TensorRT 可以理解它。
  4. 使用 UFF 表示来构建 TensorRT 引擎。
  5. 序列化引擎并将其保存到 PLAN 文件中。

一旦完成了这些步骤(并且您应该在我提供的链接中有足够的示例代码),您就可以加载 PLAN 文件并一遍又一遍地重复使用它来进行推理操作。

如果您仍然卡住,这里默认安装了一个很好的示例:/usr/src/tensorrt/samples/python/end_to_end_tensorflow_mnist. 您应该能够使用该示例来了解如何获取 UFF 格式。然后,您可以将其与我提供的链接中的示例代码结合起来。


推荐阅读