【发布时间】:2019-04-08 16:27:27
【问题描述】:
问题: 我想在训练期间更好地监控我的模型。因为在某些情况下,损失会在训练过程中突然变成 nan,我想知道当这种情况发生时模型在做什么。 除此之外,我想看看某个层是否符合特定条件(行和列的总和应该为 1)。
方法:
定义一个自定义指标将无济于事,因为该指标仅适用于 y_pred 和 y_true。也许有一些复杂的解决方案,在模型中构建模型,并尝试以某种方式计算中间模型层输出的度量。但这感觉有点太复杂了。
解决方案: 否则我唯一能想到的就是切换到 Tensorflow 本身,这样我就可以更好地控制训练过程。还有其他想法吗?
【问题讨论】:
-
你可以只做一个回调来完成你想要的计算并打印一些值。
-
谢谢,就是这样。
-
您仍然可以将自定义指标包装在以中间张量为参数的函数中。
-
真的吗?因为这是我从文档“可以在编译步骤传递自定义指标。该函数需要将 (y_true, y_pred) 作为参数并返回单个张量值。”所以我认为我会受到这些输入值的限制
标签: python tensorflow keras