【问题标题】:Export DNNLinearCombinedClassifier with multiple serving functions导出具有多个服务功能的 DNNLinearCombinedClassifier
【发布时间】:2021-02-02 00:20:30
【问题描述】:

我正在训练一个 DNNLinearCombinedClassifier,并通过 tensorflow-serving 为它提供低延迟预测服务。当前的服务签名需要一个序列化的 tf.example。

我希望能够导出具有多个 serving_fn 的同一模型,因为我想更改预期的数据格式。

我不能使用ServingInputReceiverreceiver_tensors_alternatives,因为我需要根据提供的数据格式对我的功能应用稍微不同的转换。这些转变主要是在重塑我的特征。

有没有办法导出一个提供多个不同ServingInputReceivers 的模型?

【问题讨论】:

  • 为什么不使用tf.kerastf.keras.layers.experimental.preprocessing
  • 你好。你能稍微扩展一下tf.keras.layers.experimental.preprocessing 在这里如何使用吗?
  • 如果你使用它,你不必创建一个输入函数来服务。
  • 您可以使用tf.keras.Input + tf.keras.layers.experimental.preprocessing 替换input_fn

标签: tensorflow tensorflow2.0 tensorflow-serving


【解决方案1】:

IIUC,您希望同一模型有两个不同的签名,并且您希望对每个签名的输入应用不同的转换,对吗?您可以在服务代码中执行此操作,但您要确保在训练期间应用相同的转换,并尝试在两个地方复制代码为训练/服务偏差打开了大门。

一种选择是分支您的 TFX 管道,以便您有两个 Transform 为两个 Trainer 提供数据,并为您的模型添加不同的转换。

【讨论】:

  • 感谢您的回答,为了提供更多关于我的问题的背景信息,我们正在尝试导出一个DNNLinearCombinedClassifier,它可以与 tf.examples 和 ExampleListWithContext 一起使用。 tensorflow-ranking 提供了一些函数来创建需要 ExampleListWithContext 的服务签名,但解析的特征张量的形状无法与 DNNLinearCombinedClassifier 一起使用。这就是为什么我们需要对它们进行改造(主要是重塑)以将它们提供给DNNLinearCombinedClassifier。 T
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-11-23
  • 1970-01-01
  • 2022-09-30
  • 1970-01-01
  • 2018-09-24
  • 2021-12-01
  • 2017-11-24
相关资源
最近更新 更多