每次使用TensorFlow V2和Keras 2.3.0时,我都需要从模型中收集目标和输出向量。 A similar question was previsously answered,但仅对TensorFlow V1有效。有人对如何进行有想法吗?
当我使用batch_size
的1个文件(这对我的情况非常特定)时,我的最初想法是定义一个指标,该指标将返回目标/输出标签(即整数)并收集它在每个批次结束时的回调中。不幸的是,此度量标准与其他任何度量标准一样在每批处理之后进行处理。我无法找到一种方法来简单地返回非平均值,甚至更好地将其取入一维数组中。
答案 0 :(得分:0)
获取输出张量的最简单方法是使用train/predict_on_batch()
。例如:
for epoch in range(max_epoch):
for batch_i in range(max_batch):
x_i, y_true = next(training_generator)
batch_i = model.train_on_batch(x_i, y_true, reset_metrics=True)
print("metrics = {}".format(batch_i))
print("outputs = {}".format(model.predict_on_batch(x_i)))