结合一个冻结模型的预测输出进行预测,然后将这些预测用作我正在训练的模型的损失?

时间:2019-08-23 06:51:31

标签: tensorflow keras

我想将一个冻结模型的预测输出与另一个冻结模型的训练相结合。

我尝试过使用不同的图形会话,但是它会在训练阶段重置默认图形。

predictions = model1.model(input1, input2, mode)
predictions2 = model2.predict(predictions)

loss1 = mean_squared_error(predictions, labels)
loss2 = mean_squared_error(input2, predictions2)

total_loss = loss1+loss2

optimizer.minimize(total_loss)
  

ValueError:Tensor Tensor(“ output_layer / BiasAdd:0”,shape =(?, 100),dtype = float32)不是此图的元素

1 个答案:

答案 0 :(得分:0)

我只是想通了!

在tensorflow的estimator框架中,通过属性将模型加载到Estimator空间的'model_fn'中: 'keras_model.trainable = False'

例如代码段:

def model_fn(inputs):
    .......
    #some operations

    .......
    model2=load_model('frozen_model.h5')
    model2.trainable=False
    model2.summary()
    predictions= model2(inputs=predictions)
相关问题