如何将在tensorflow 2中训练的模型转换为tensorflow 1冻结图

时间:2020-09-14 18:57:07

标签: python tensorflow tensorflow2

我想使用tensorflow 2训练模型,但是之后我需要使用仅与tensorflow 1兼容的转换器。是否可以,如果可以,我如何将使用tensorflow 2训练的模型转换为tensorflow 1种格式?

1 个答案:

答案 0 :(得分:0)

如果没有可靠地将TF2模型转换为TF1的方法,则始终可以保存经过训练的参数(权重,偏差),并在以后使用它们来初始化TF1图。 我以前是出于其他目的这样做的。您可以保存如下:

weights = []
for layer in model.layers:

    w = layer.get_weights()
    if len(w)>0:
      print(layer.name)
      weights.append(w)


with open('mnist_weights.pkl', 'wb') as f:
  pickle.dump(weights, f)  

w[0]=weightsw[1]=biases每一层的位置