是否在一个项目中运行tensorflow1和tensorflow2?

2024-09-26 18:16:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我在一个text2voice(印度尼西亚语)项目中。我为text2phoneme安装了g2p-seq2seq,它包含来自tf.contrib的一些代码,因此只能使用tf1运行

最近我得到了一个新的phoneme2voice模型,它只支持tf2。有没有办法让它们在一个项目中运行


Tags: 项目代码模型tfcontribtext2voice办法g2p
2条回答

这取决于你的最终目标。如果您希望能够在与在兼容模式下运行的Tensorflow 1模型相同的python实例或Tensorflow实例中急切地运行Tensorflow 2模型,那么您将遇到很多麻烦。一旦打开兼容模式或关闭“急切执行”,就无法将其重新打开

我试着为我自己的项目做这件事。我的快速修复方法是使用权重和偏差创建一个临时的不可训练的模型副本,这些权重和偏差必须以某种格式提取和存储(我建议使用pickle文件),可以在脚本中打开,该脚本创建临时模型,而不会导致在compat模式下运行tensorflow 1或tensorflow 2的实例化

最终,我必须在Tensorflow 2中完全重建Tensorflow 1.X模型创建和培训脚本

如果您不需要在Tensorflow 2模型的相同脚本中运行它们,那么可能。。。仅使用compat模式可能有效。我知道听这个很糟糕,但是如果我说的条件适用于你,你真的没什么办法

TLDR-这完全取决于您想要什么或需要什么,但万无一失的方法只是在Tensorflow 2中完全重建模型

使用^{}

The compat.v1 and compat.v2 submodules provide a complete copy of both the v1 and v2 APIs for backwards and forwards compatibility across TensorFlow versions 1.x and 2.x. See the migration guide for details.

您可以阅读migration guide以了解如何将TF1代码迁移到TF2

相关问题 更多 >

    热门问题