看看分类器和图像之间的区别?

时间:2017-08-03 15:42:33

标签: tensorflow computer-vision classification

让我说我已经训练了一个特定物体的分类器,汤姆克鲁斯的脸。如果我然后给它一张我自己的脸的图像,有没有办法看到分类器的表示与它被测试的图像之间的差异

(哪个库/语言不是非常重要,但让我们假设是TensorFlow。)

1 个答案:

答案 0 :(得分:1)

您可以通过多种方式定义“差异”,这可能会导致不同的解决方案。一个简单的方法可能是在分类之前查看网络中的最后一个特征向量,并将其与Tom Cruise面部的某种“理想”特征向量进行比较(尽管您可能需要对该向量进行某种归一化)因此价值不会无限增长)。然后你会有一些矢量差异。

然而,我猜你正在寻找的是以图像形式看到差异。但同样,你如何定义“差异”可能是一个问题。我怀疑一个显示差异的好方法,就是要显示图像中应该更改的内容,使其看起来更像汤姆克鲁斯。这实际上是“深度梦想”网络(部分)的内容。这个想法是你计算渐变,但是然后不是看重量的渐变,而是看输入的渐变。这些值是,如果您在该方向上更改图像,将帮助您生成看起来更像目标类的图像。就像你的训练被用来更新图像而不是网络的价值(在你已经有一个训练有素的网络之后)。

this short video的一半时间,您可以看到类似于我的建议。它们显示了图像中应该更改的内容,以便对给定图像做出更强烈的响应。