修改 tensorflow savedmodel pb 文件以使用自定义操作进行推理

modifying a tensorflow savedmodel pb file for inference with a custom op

我有一个在 Python 中训练的 Tensorflow 模型,导出到 .pb 文件,然后与 Tensorflow Serving 一起使用。

我编写了一个自定义操作,可以大大加快此 Tensorflow 模型中某些运算符的推理速度,但仅适用于推理 -- 我无法在训练期间使用此自定义操作。

我想知道我是否可以在 Tensorflow 服务中将此自定义操作与 .pb 文件一起使用。我想我可能必须编辑 .pb 文件,以便它使用我的自定义操作代替原始操作,然后 Tensorflow 服务应该着手寻找自定义操作实现,我可以 link 针对其运行时.

那么——如何修改 Tensorflow .pb 文件并换出运算符?是否有我可以参考的示例代码?

如果您出于某种原因无法使用原始操作进行训练,您最好的选择可能是原型手术。我会寻找一些工具,让您将 proto 转换为 ascii 格式,修改它,然后将其转换回二进制格式。我发现 this 某人为保存的模型这样做的要点。然后您可以在上面编写工具以尝试替换为您的自定义操作。