目前,我正在为CNN模型实现GradCAM(激活热图)。当我的置信度不是100%时,它可以完美工作(注意:这是一个多标签分类问题,所以我使用的是S型激活,而不是softmax)。
但是,当我的模型过分自信(字面上的置信度为1.0(100%))时,最终输出层的坡度却没有最终卷积的输出特征图变为全零。
我认为这可能是因为要获得100%的损失,必须为0或接近0。我已经尝试了几种关于损耗张量的方法来解决这个问题,包括裁剪,规范化(硬编码和使用tensorflow的l2_norm函数),以及简单地为其添加一个很小的浮点数(1e-5)。
但是,没有任何效果,而且我一直无法找到有关该主题的任何资源。我是否错过了一个非常有用的简单技巧或功能?还是这是我的模型架构中更深层的问题?
TLDR;如何标准化/调整模型的输出损失张量,使其不包含0值?