从 deeplab 模型获取输出的对数



我正在使用预先训练的deeplab模型(从这里开始(来获取输入图像的分割。我能够获得语义标签(即 SemanticPredictions (,这是应用于对数的 argmax(链接(。

我想知道是否有一种简单的方法可以在argmax之前获取日志?我希望找到输出张量名称并将其简单地传递给我的tfsession如下:

tf_session.run(
        self.OUTPUT_TENSOR_NAME,
        feed_dict={self.INPUT_TENSOR_NAME: [np.asarray(input_image)]})

但是我无法在显示 logits 或 softmax 输出的代码中找到这样的张量名称。

对于从MobileNet_V2设置训练的模型,self.OUTPUT_TENSOR_NAME = 'ResizeBilinear_2:0'在执行 argmax 之前检索对数。

我怀疑这和xception是一样的,但还没有验证过。

我通过在张量流中加载我的模型得出了这个答案。然后,打印加载的图形中所有图层的名称。最后,我在最后一个"ArgMax"层之前取了最终输出层的名称,并使用它运行了一些推理。

这是指向有关在图形中打印图层名称的堆栈溢出问题的链接。 我发现泰德的回答是最有帮助的。

顺便说一下,DeeplabV3模型的输出层不应用SoftMax。因此,您不能简单地将输出向量元素的原始值视为置信度。

相关内容

  • 没有找到相关文章

最新更新