我刚开始使用Keras并构建了一个Q-learning示例程序。我创建了一个tensorboard回调,并将其包含在对model.fit的调用中,但TensorBoard中出现的唯一内容是丢失的标量摘要和网络图。有趣的是,如果我打开图中的密集层,我会看到一个标有" bias_0"的小摘要图标。还有一个标记为" kernel_0"但是我没有看到这些出现在TensorBoard的分布或直方图标签中,就像我在纯张量流中建立模型时那样。
我是否需要在Tensorboard中执行其他操作才能启用它们?我是否需要查看Keras生成的模型的详细信息并添加我自己的tensor_summary()调用?
答案 0 :(得分:9)
您可以使用weights, biases = model.layers[0].get_weights()
获取每个图层和整个模型的权重和偏差。
例如,如果模型的第一层是您希望获得权重和偏差的密集层,则可以使用以下方法获取它们:
{{1}}
答案 1 :(得分:1)
我调试了这个,发现问题是当我调用fit()时我没有提供任何验证数据。 TensorBoard回调仅在提供验证数据时报告权重。这似乎有点限制,但我至少有一些有用的东西。