gpt4 book ai didi

python - 无法记录使用 Keras 构建但使用 Tensorflow 估计器训练的模型的损失

转载 作者:行者123 更新时间:2023-11-30 09:24:35 26 4
gpt4 key购买 nike

我使用 Keras 创建了一个神经模型,并希望使用适用于 Keras 模型的 Tensorflow Estimator API 对其进行训练。

此外,我想简单地使用 LoggingTensorHook 记录损失值。但我收到以下错误:

ValueError: Passed Tensor("loss/mul:0", shape=(), dtype=float32) should have graph attribute that is equal to current graph <tensorflow.python.framework.ops.Graph object at 0x11fca7358>.

我大概知道发生了什么。 (估算器创建一个新的图表或其他东西),但我自己无法解决这个问题。

<小时/>

现在一些代码:

model = create_keras_model(shapes)

adam = tf.keras.optimizers.Adam(lr=conf.lr)
model.compile(loss='categorical_crossentropy',
optimizer=adam, metrics=['acc'])

estimator = tf.keras.estimator.model_to_estimator(
keras_model=model, model_dir=model_dir,config=run_config)


### I want to log this tensor
loss_to_log = model.total_loss
log_hook = tf.train.LoggingTensorHook(
{'loss': loss_to_log}, every_n_iter=10, at_end=True)

train_spec = tf.estimator.TrainSpec(
input_fn=...,
max_steps=..., hooks=[log_hook])

tf.estimator.train_and_evaluate(estimator, train_spec, ...)

最佳答案

尝试添加代码:

import tensorflow as tf
tf.logging.set_verbosity(tf.logging.INFO)

并修改您的代码

{'loss': loss_to_log}

{'loss': loss_to_log.name}

关于python - 无法记录使用 Keras 构建但使用 Tensorflow 估计器训练的模型的损失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52558382/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com