python - TensorBoard 训练图的步骤比验证图少。为什么?

标签 python tensorflow tensorboard

我正在使用 TensorFlow 训练神经网络,并且希望使用 TensorBoard 可视化训练结果。

我的代码如下:

model = Sequential([
    Dense(len(test_inputs[0])),
    BatchNormalization(),
    Activation('tanh'),
    Dropout(0.01),

    Dense(128),
    BatchNormalization(),
    Activation('tanh'),
    Dropout(0.01),

    Dense(128),
    BatchNormalization(),
    Activation('relu'),
    Dropout(0.01),

    Dense(len(test_outputs[0])),
    BatchNormalization(),
    Activation('softmax')
])

model.compile(
    optimizer='Adadelta',
    loss='mse',
    metrics=['accuracy']
)


log_dir="logs/fit/" + datetime.datetime.now().strftime("%Y%m%d-%H%M%S")
tensorboard_callback = tf.keras.callbacks.TensorBoard(log_dir=log_dir, histogram_freq=1)


model.fit(
    x = train_inputs,
    y = train_outputs,
    epochs = 5000,
    batch_size = 100,
    validation_data = (test_inputs, test_outputs),
    callbacks = [tensorboard_callback],
    verbose = False
)

一切都按预期进行,只是我在 TensorBoard 中得到的图(下图)显示了验证数据的所有步骤(蓝线)和训练数据的几个步骤(红线)。

为什么会这样呢?我肯定做错了什么,但我不知道是什么。

enter image description here

最佳答案

这是由于 TensorBoard 中使用的分析造成的。该问题实际上仍在继续here .

您可以通过在训练后重新启动 Tensorboard 进程来解决此问题,或者如果您需要能够遵循训练指标,则可以通过阻止 TensorBoard 回调中的分析 profile_batch=0 来解决此问题。

关于python - TensorBoard 训练图的步骤比验证图少。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58991083/

相关文章:

python - Pandas 数据框创建新列并填充来自相同 df 的计算值

python - make_initializable_iterator 和 make_one_shot_iterator 之间的 tensorflow 数据集 API 差异

tensorflow - tf.nn.dynamic_rnn tensorflow 函数的输出分析

python-3.x - 无法使用 Keras 和 Sklearn 将字符串列转换为分类矩阵

python - Tensorflow 可视化工具 "Tensorboard"在 Anaconda 下不工作

machine-learning - 在 TensorFlow 中存储摘要编写器的多次运行的建议做法是什么?

python - 属性错误 : module 'functools' has no attribute 'wraps'

python - 如何对 numpy 数组中的连续非零元素求和

python - 将文件中的普通数字转换为整数列表

python - Tensorflow 图节点是交换的