【问题标题】:How to know what Tensorflow actually "see"?如何知道 Tensorflow 实际“看到”了什么?
【发布时间】:2018-11-30 18:59:56
【问题描述】:

我正在使用 keras(tensorflow) 构建的 cnn 进行视觉识别。 我想知道是否有办法知道我自己的 tensorflow 模型“看到”了什么。 谷歌有一条新闻显示了人工智能大脑中的猫脸。

https://www.smithsonianmag.com/innovation/one-step-closer-to-a-brain-79159265/

谁能告诉我如何在我自己的 cnn 网络中取出图像。 例如,我自己的 cnn 模型识别汽车是什么?

【问题讨论】:

    标签: tensorflow keras


    【解决方案1】:

    我们要区分Tensorflowactually see是什么:

    随着我们深入网络,特征图看起来不像 原始图像,更像是它的抽象表示。正如你 可以在 block3_conv1 中看到猫有点可见,但在那之后 变得面目全非。原因是更深的特征图编码 高级概念,如“猫鼻子”或“狗耳朵”,而低级概念 特征图检测简单的边缘和形状。这就是为什么更深层次的特征 地图包含较少关于图像的信息和更多关于类的信息 的图像。它们仍然编码有用的特征,但它们更少 我们可以在视觉上解释。

    what we can reconstruct 是某种反向反卷积(实际上不是真正的数学反卷积)过程的结果。

    要回答您的实际问题,有很多很好的示例解决方案,您可以成功研究它:Visualizing output of convolutional layer in tensorflow

    【讨论】:

    • 感谢您的回答。我想这就是我想要的!
    【解决方案2】:

    当你构建一个模型来执行视觉识别时,你实际上是给它类似类型的标记数据或图片来识别它,以便它可以根据训练数据修改它的权重。如果你想建立一个可以识别汽车的模型,你必须对包含标签图片的大型火车数据进行训练。这种类型的识别基本上是分类识别。

    您可以尝试使用 MNIST 数据集,该数据集提供用于图像识别的数字图片数据集。

    【讨论】:

      猜你喜欢
      • 2011-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-13
      • 2014-01-30
      • 2013-06-02
      • 2020-11-21
      • 2013-11-04
      相关资源
      最近更新 更多