# AI 图像识别：人类看的是形状，算法看的是纹理

- 作者：36 氪
- 发布时间：2019-07-16 15:00
- 分类：软件
- 原文：https://www.ifanr.com/1236875

![](https://s3.ifanr.com/wp-content/uploads/2019/07/72-1.jpg)

[本文](https://36kr.com/p/5225703)来自 36氪 编译团队「神译局」，译者为小兵手，爱范儿经授权发布。



> 图片中的动物轮廓是猫，但是猫披着大象皮肤纹理，将图片交给人识别，人会说是猫，如果给计算机视觉算法处理，它会说是大象。德国研究人员认为：人看的是形状，计算机看的是纹理。这一发现相当有趣，但它证明计算机算法离人类视觉还有很远距离。

![](https://s3.ifanr.com/wp-content/uploads/2019/07/72-1.jpg)

当你看着一张猫的照片，轻松就能知道猫有没有条纹，不管照片是黑白照，有斑点，还是磨损或者褪色了，都能轻松识别。不论宠物蜷缩在枕头背后；或者跳到工作台上，拍照时留下一片朦胧，你都能轻松识别。如果用机器视觉系统（用深度神经网络驱动）识别，准确率甚至比人还要高，但是当图片稍微新奇一点，或者有噪点、条纹，机器视觉系统就会犯傻了。

为什么会这样呢？德国研究团队给出一个原因，这个原因出乎意料：人类会关注图中对象的形状，深度学习计算机系统所用的算法不一样，它会研究对象的纹理。

德国的发现告诉我们人类与机器 「思考」 问题时有着明显区别，也许还能揭示人类视觉进化的秘密。

### **有大象皮肤的猫和时钟做的飞机**

深度学习算法是怎样 「工作」 的呢？首先人类向算法展示大量图片，有的图片有猫，有的没有。算法从图片中找到 「特定模式」，然后用模式来做出判断，看看面对之前从未见过的图片应该贴怎样的标签。

神经网络架构是根据人类视觉系统开发的，网络各层连接在一起，从图片中提取抽象特点。神经网络系统通过一系列联系得出正确答案，不过整个处理过程十分神秘，人类往往只能在事实形成之后再解释这个神秘的过程。

美国俄勒冈州立大学计算机科学家 Thomas Dietterich 说：「我们正在努力，想搞清到底是什么让深度学习计算机视觉算法走向成功，又是什么让它变得脆弱。」

怎样做？研究人员修改图片，欺骗神经网络，看看会发生什么事。研究人员发现，即使只是小小的修改，系统也会给出完全错误的答案，当修改幅度很大时，系统甚至无法给图片贴标签。还有一些研究人员追溯网络，查看单个神经元会对图像做出怎样的反应，理解系统学到了什么。

德国图宾根大学（University of Tübingen）科学家 Geirhos 领导的团队采用独特方法进行研究。去年，团队发表报告称，他们用特殊噪点干扰图像，给图像降级，然后用图像训练神经网络，研究发现，如果将新图像交给系统处理，这些图像被人扭曲过（相同的扭曲），在识别扭曲图像时，系统的表现比人好。不过如果图像扭曲的方式稍有不同，神经网络就无能为力了，即使在人眼看来图像的扭曲方式并无不同，算法也会犯错。

![](https://s3.ifanr.com/wp-content/uploads/2019/07/70-1.jpg)

对于这样的结果如何解释？研究人员深入思考：到底是什么发生了变化，即使只是加入很少的噪点，也会发生如此大的变化？答案是纹理。当你在很长的时间段内添加许多噪点，图中对象的形状基本不会受到影响；不过即使只是添加少量噪点，局部位置的架构也会快速扭曲。研究人员想出一个妙招，对人类、深度学习系统处理图片的方式进行测试。

研究人员故意制作存在矛盾的图片，也就是说将一种动物的形状与另一种动物的纹理拼在一起，制作成图片。例如，图片中的动物轮廓是猫，但是猫披着大象纹理；或者是一头熊，但它们是由铝罐组成的；又或者轮廓是飞机，但飞机是由重叠的钟面组成的。研究人员制作几百张这样的拼凑图片，然后给它们标上标签，比如猫、熊、飞机。用 4 种不同的分类算法测试，最终它们给出的答案是大象、铝罐、钟，由此看出算法关注的是纹理。

Columbia 大学计算机神经科学家 Nikolaus Kriegeskorte 评论说：「这一发现改变了我们对深度前向神经网络视觉识别技术的认知。」

乍一看，AI 偏爱纹理而非形状有点奇怪，但细细深思却是有理的。Kriegeskorte 说：「你可以将纹理视为精密的形状。」 对于算法系统来说精密的尺寸更容易把握：包含纹理信息的像素数量远远超过包含对象边界的像素数量，网络的第一步就是检测局部特征，比如线条，边缘。多伦多约克大学计算机视觉科学家 John Tsotsos 指出：「线段组按相同的方式排列，这就是纹理。」

Geirhos 的研究证明，凭借局部特征，神经网络足以分辨图像。

另有科学家开发一套深度学习系统，它的运行很像深度学习出现之前的分类算法 —— 像一个特征包。

算法将图像分成为小块，接下来，它不会将信息逐步融合，变成抽象高级特征，而是给每一小块下一个决定，比如这块包含自行车、那块包含鸟。再接下来，算法将决定集合起来，判断图中是什么，比如有更多小块包含自行车线索，所以图中对象是自行车。算法不会考虑小块之间的空间关系。结果证明，在识别对象时系统的精准度很高。

研究人员 Wieland Brendel 说：「这一发现挑战了我们之前的假定，我们之前认为深度学习的行为方式与旧模型完全不同。很明显，新模型有很大飞跃，但飞跃的幅度没有大家预料的那么大。」

约克大学、多伦多大学博士后研究员 Amir Rosenfeld 认为，网络应该做什么，它实际做了什么，二者之间仍有很大差异。

Brendel 持有相似观点。他说，我们很容易就会假定神经网络按人类的方式完成任务，忘了还有其它方式。

### **向人类视觉靠近**

目前的深度学习技术可以将局部特征（比如纹理）与整体模式（比如形状）结合 在一起。

Columbia 大学计算机神经科学家 Nikolaus Kriegeskorte 说：「在这些论文中有一点让人感到稍稍有些奇怪，架构虽然允许这样做，不过如果你训练神经网络时只是希望它分辨标准图像，它不会自动整合，这点在论文中得到明显证明。」

如果强迫模型忽视纹理，又会怎样呢？Geirhos 想找到答案。团队将训练分类算法的图片拿出来，用不同的方式给它们 「粉刷」，将实用纹理信息剔除，然后再用新图片重新训练深度学习模型，系统转而依赖更全局的模式，像人类一样更加偏爱形状。

当算法这样行动时，分辨噪点图像的能力同样更强了，虽然在此之前研究人员并没有专门训练算法，让它识别扭曲图像。

![](https://s3.ifanr.com/wp-content/uploads/2019/07/71-2.jpg)

对于人类来说，可能自然而然也存在这样的 「偏爱」，比如偏爱形状，因为当我们看到一件东西，想确定它是什么时，靠形状判断是最有效的方式，即使环境中有许多干扰，同样如此。人类生活在 3D 世界，可以从多个角度观察，我们还可以借助其它感知（比如触觉）来识别对象。所以说，人类偏爱形状胜过纹理完全合理。

德国图宾根大学研究人员 Felix Wichmann 认为，这项研究告诉我们数据产生的偏见和影响远比我们认为的大得多。之前研究人员也曾发现相同的问题，例如，在面部识别程序、自动招聘算法及其它神经网络中，模型过于重视意料之外的特征，因为训练算法所用的数据存在根深蒂固的偏见。想将这种不想要的偏见从算法决策机制中剔除相当困难，尽管如此，Wichmann 认为新研究证明剔除还是有可能的。

虽然 Geirhos 的模型专注于形状，不过如果图像中噪点过多，或者特定像素发生变化，模型仍然会失败。由此可以证明，计算机算法离人类视觉还有很远距离。在人类大脑中，可能还有一些重要机制没有在算法中体现出来。Wichmann 认为，在某些情况下，关注数据集可能更重要。

多伦多大学计算机科学家 Sanja Fidler 认同此观点，她说：「我们要设计更聪明的数据和更聪明的任务。」 她和同事正在研究一个问题：如何给神经网络分派第二任务，通过第二任务让它在完成主任务时有更好表现。受到 Geirhos 的启发，最近她们对图像分类算法进行训练，不只让算法识别对象本身，还让它识别对象轮廓（或者形状）中的像素。

结果证明，执行常规对象识别任务时，神经网络越来越好，自动变得越来越好。Fidler 指出：「如果指派单一任务，你会特别关注某些东西，对其它视而不见。如果分派多个任务，也许能感知更多。算法也是一样的。」 当算法执行多个任务时，它会关注不同的信息，就像 Geirhos 所做的 「形状纹理」 实验一样。

美国俄勒冈州立大学计算机科学家 Thomas Dietterich 认为：「这项研究是一个激动人心的突破，深度学习到底发生了什么？我们对此有了更深的理解，也许研究还能帮助我们突破极限，看到更多东西。正因如此，我很喜欢这些论文。」
