似乎tensorflow 2.0删除了功能tf.global_variables()。我的问题是:如何在模型中找到具有给定名称的变量? tensorflow 2.0是否提供执行此功能的功能?
当前,我们的培训框架无法访问用于构建模型的代码。它使用tf.global_variables()在加载的模型中查找各种变量,以推入和拉出训练数据或结果。 tensorflow 2.0是否能够支持这种框架?
答案 0 :(得分:1)
tensorflow 2.0是否能够支持这种框架?
不,不会。
Tensorflow 2.0的第一个设计选择是完全删除全局集合(例如tf.global_variables()
),而采用以Python为中心的方法来使用带有自己变量的Python对象。
现在推荐的做法是使用Python对象来构建Keras模型并在代码中的任何地方使用相同的模型。
您可以通过访问model.trainable_variables
和model.non_trainable_weights
来访问对象的可训练变量和不可训练变量。
简而言之,您必须开始将代码库迁移到面向对象的方法,因为Tensorflow的1.x方法(依赖于全局集合,通过名称获取变量等)在以下版本中不可用。 2.0。