我正在使用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中得到的图(下图)显示了验证数据的所有步骤(蓝线)和训练数据的一些步骤(红线)以外,所有其他工作均按预期进行,
为什么?当然我做错了,但我不知道该怎么办。
这是由于TensorBoard中使用的配置文件。该问题实际上正在进行中here。
您可以通过在训练后重新启动张量板过程,或者通过防止在TensorBoard回调profile_batch=0
中进行概要分析,或者如果您需要能够遵循训练指标来解决此问题。