识别图像时神经网络决策过程的任何可视化?

时间:2012-05-29 02:08:02

标签: language-agnostic machine-learning neural-network ocr image-recognition

我已注册Coursera ML class,我刚开始学习神经网络。

让我真正神秘化的一件事是,一旦你找到线性组合的好权重,识别某些东西如此“人”就像手写数字一样容易。

当你明白通过为线性组合找到一些非常好的参数并将它们组合在一起并将它们相互馈送时,可以识别出看似抽象的东西(如汽车)更加疯狂

线性组合的组合比我曾经想象的更加明显 这让我想知道是否有可能可视化NN的决策过程,至少在简单的情况下。

例如,如果我的输入是20x20灰度图像(即总共400个特征),并且输出是对应于识别数字的10个类别中的一个,我希望看到线性级联的某种视觉解释组合导致NN得出结论。

enter image description here

我天真地想象这可以作为被识别图像的视觉提示来实现,可能是显示“影响决策最多的像素”的温度图,或者有助于理解神经网络在特定情况下如何工作的任何事物。

是否有一些神经网络演示可以做到这一点?

2 个答案:

答案 0 :(得分:2)

这不是您问题的直接答案。我建议你看一下卷积神经网络(CNN)。在CNN中,您几乎可以看到所学的概念。您应该阅读本出版物:

ÿ。 LeCun,L。Bottou,Y。Bengio和P. Haffner:Gradient-Based Learning Applied to Document Recognition,IEEE会议录,86(11):2278-2324,1998年11月

CNN通常被称为“可训练的特征提取器”#34;。实际上,CNN实现具有可训练系数的2D滤波器。这就是为什么第一层的激活通常显示为2D图像(参见图13)。在本文中,作者使用另一种技巧使网络更加透明:最后一层是径向基函数层(具有高斯函数),即。即计算每个类别(可调)原型的距离。您可以通过查看最后一层的参数来真正看到学到的概念(参见图3)。

然而,CNN是人工神经网络。但是这些层没有完全连接,一些神经元共享相同的权重。

答案 1 :(得分:2)

也许它没有直接回答这个问题,但我发现这个有趣的部分Andrew Ng, Jeff Dean, Quoc Le, Marc’Aurelio Ranzato, Rajat Monga, Matthieu Devin, Kai Chen and Greg Corrado paper(强调我的):

  

在本节中,我们将介绍两种可视化技术,以验证神经元的最佳刺激是否确实是一个面部。第一种方法是可视化测试集中响应最快的刺激。由于测试集很大,该方法可以可靠地检测测试神经元的近似最佳刺激。第二种方法是进行数值优化以找到最佳刺激

     

...

     

这些可视化方法具有互补的优势和劣势。例如,可视化最敏感的刺激可能会受到噪音的影响。另一方面,数值优化方法可能易受局部最小值的影响。 [下面]显示的结果证实,测试的神经元确实学会了面部的概念。

enter image description here

换句话说,他们采用的是识别面部表现最佳的神经元

  • 从数据集中选择图像,使其输出最高置信度;
  • 以数学方式查找将获得最高保真度的图像(不在数据集中)。

看到它实际上“捕捉”了人脸的特征,这很有趣 学习无人监督,即输入数据没有说明图像是否是面部。

有趣的是,这里为猫头和人体生成了“最佳输入”图像:

enter image description here