使用 Keras,当我将 Tensorboard 回调添加到我的神经网络时,准确性会降低。我该如何解决?

Posted

技术标签:

【中文标题】使用 Keras,当我将 Tensorboard 回调添加到我的神经网络时,准确性会降低。我该如何解决?【英文标题】:Using Keras, when I add a Tensorboard callback to my neural network, the accuracy decreases. How do I fix this? 【发布时间】:2018-01-09 18:44:19 【问题描述】:

这就是我设置回调的方式

callback = TensorBoard(log_dir='/tmp/invasive/', histogram_freq=10,
                       write_graph=True,write_grads=False,
                       write_images=True, embeddings_layer_names=None,
                       embeddings_metadata=None)

然后我如何将它应用到模型中

model.fit(x_train,y_train,epochs=10,batch_size=10,callbacks=[callback])

就我对 Keras 的初学者了解而言,回调不应该影响神经网络的训练,但当我添加此代码时,准确率从大约 60% 下降到 40%

【问题讨论】:

你确定这不仅仅是随机权重初始化的影响吗? @MatiasValdenegro 是的,经过更多测试后似乎就是这种情况。谢谢! 【参考方案1】:

这可能只是随机权重初始化的效果。每次训练网络时,初始权重都是随机选择的(在一个范围内),因此在使用梯度下降训练后,您通常会达到不同的局部最小值。

在这种情况下,请确保在尝试推断与 TensorBoard 的关系之前进行多次运行。

【讨论】:

以上是关于使用 Keras,当我将 Tensorboard 回调添加到我的神经网络时,准确性会降低。我该如何解决?的主要内容,如果未能解决你的问题,请参考以下文章

Keras 中的 TensorBoard 回调不尊重适合的初始时期?

直方图频率激活时Keras Tensorboard错误

直方图频率激活时的 Keras Tensorboard 错误

如何使用 Keras 的 Tensorboard 回调?

使用 keras 在 tensorboard 中显示分类图像

keras与tensorboard结合使用