如何获取训练过程中一些Tensor的值

我想到可以这样:定义一个函数

def print_tensor(x):
    tf.print(x)
    return x

然后用keras的Lambda层:

first_frequence_position = tf.keras.layers.Lambda(print_tensor)(first_frequence_position)

这样可以强制把tf.print放到训练流程中,我试了下是可行的。

tf.print 的使用方式参考 tf.print  |  TensorFlow v2.11.0 ,可以加入参数summarize=-1 打印完整的Tensor。

2 Likes