Keras - 可以在Tensorboard中查看模型的权重和偏差

时间:2017-05-09 00:18:05

标签: python tensorflow keras tensorboard

我刚开始使用Keras并构建了一个Q-learning示例程序。我创建了一个tensorboard回调,并将其包含在对model.fit的调用中,但TensorBoard中出现的唯一内容是丢失的标量摘要和网络图。有趣的是,如果我打开图中的密集层,我会看到一个标有" bias_0"的小摘要图标。还有一个标记为" kernel_0"但是我没有看到这些出现在TensorBoard的分布或直方图标签中,就像我在纯张量流中建立模型时那样。

我是否需要在Tensorboard中执行其他操作才能启用它们?我是否需要查看Keras生成的模型的详细信息并添加我自己的tensor_summary()调用?

2 个答案:

答案 0 :(得分:9)

您可以使用weights, biases = model.layers[0].get_weights() 获取每个图层和整个模型的权重和偏差。

例如,如果模型的第一层是您希望获得权重和偏差的密集层,则可以使用以下方法获取它们:

{{1}}

答案 1 :(得分:1)

我调试了这个,发现问题是当我调用fit()时我没有提供任何验证数据。 TensorBoard回调仅在提供验证数据时报告权重。这似乎有点限制,但我至少有一些有用的东西。