在多个数据集上拟合模型时控制 Tensorboard 监控训练的时间

Controlling how long Tensorboard monitors training while fitting model over multiple datasets

我正在训练一个循环遍历多个数据集的模型

tensorboard_callback = tf.keras.callbacks.TensorBoard(log_dir=log_dir, 
                                                        histogram_freq=1,
                                                        profile_batch=10)
for data in datasets:
    model.fit(data,callbacks=[tensorboard_callback])

我正在尝试监控此数据集上的 GPU 使用情况。然而,Tensorboard 只能收集一秒钟左右的数据。之后它停止了。此外,这似乎表明训练期间的 gpu 使用率接近完美。

我已经尝试处理我传递给 Tensorboard 的参数,但我觉得离找到解决方案还很远。那么,Tensorboard是如何收集数据的呢?

我是否必须将所有数据收集到一个 list/dataframe 才能使用 Tensorboard 收集有用的数据?

在for循环中添加tensorboard_callback:

for data in datasets:

    tensorboard_callback = tf.keras.callbacks.TensorBoard(log_dir=log_dir, 
                                                        histogram_freq=1,
                                                        profile_batch=10)
    model.fit(data,callbacks=[tensorboard_callback])