本书研究了人类对视觉信息的表示和处理,并对视觉计算处理过程提出了全面的计算理论。全书立足于计算机科学的进展,是跨学科交叉研究的经典教科书,并对多个学科的研究都有深刻启发作用。特别值得一提的是,在近年深度学习的热潮之中,了解掌握本书介绍的视觉计算理论对于在人工智能和计算机视觉领域内开展进一步探索是至关重要的。
人类视觉计算理论经典著作Vision∣CV领域开山之作∣豆瓣9.7星∣厘清计算理论、算法、实现三个研究层次
Marr 的《视觉》一书做出了至少两个重大贡献:提出了视觉研究需要相对独立地考虑包括计算理论、算法和神经实现在内的三个“理解层次”,以及提出了他自己的视觉计算理论。两者都对包括计算神经科学和人工智能在内的多个领域产生了深远的影响。其中,“理解层次”这个概念的影响或许更大、也更根本。
计算机视觉在过去十年的巨大进展,也与理解层次有本质的关联。非常重要却又常常被忽视的就是计算理论的进展:计算机视觉究竟要计算什么?客观地说,在过去十年中,计算机视觉领域内取得最大进展的是语义上的判别任务。这其中又以语义上的图像识别和分类为代表:图中有一条狗还是一只猫?计算图像分类这样的任务,在今天看来似乎是天经地义的。其实不然,探索计算的目的是一个漫长的过程。Marr关注的低层视觉和三维结构的重建在很长一段时间内主导了计算机视觉的研究。这一点无可厚非,毕竟相对于多少能用数学语言描述的算子和三维结构而言,语义似乎是虚无缥缈的,也更难被解释。究竟是什么让我们知道图像中是一条狗,而不是一只猫、一头牛呢?现在我们知道,统计机器学习和深度学习,以及算力和数据的增强,对图像的语义识别带来了革命性的变化。这也导致了对 Marr 的理论的争议:有些资深的学者认为 Marr 的理论在数十年间带领计算机视觉走了弯路。但这样的批评似乎有些苛刻了。基于当年的研究进展,Marr 的关注点应当是很难被辩驳的。我们也不应该忘记,Marr 最在乎的始终是人类视觉和人类智能,而低层视觉和三维重建确实是人类视觉中不可或缺的部分。而且,即便 Marr 的计算理论的内容与现今深度学习的计算理论不同,但寻找正确的计算理论本身是如此困难,而正确的计算理论又是如此重要,
恰恰说明了 Marr 对计算理论这个概念的强调是深刻的。另外,无论对机器还是对人而言,现今计算机视觉的发展都绝不意味着语义判别就是最重要和最正确的计算任务。它们只是在当下与其他层次更贴合,从而研究人员能在其上取得最大进展。
除了计算理论的进展,计算机视觉领域过去十年的爆发式进展还应当归功于(以卷积神经网络和反向传播算法为代表的)算法、(以 GPU 为代表的)硬件实现和(以ImageNet 为代表的)数据这几个层次的进展。其中,计算理论、算法和实现三者与Marr 的三个理解层次完全符合。由于 Marr 在《视觉》中没有探讨学习的作用(参见Tomaso Poggio 教授写的后记),所以他没有讨论数据或者经验的作用,但数据的进展显然也是计算机视觉过去十年的进展中不可或缺的。相对于算法,计算理论、硬件实现和数据三者的重要性没有得到应有的重视,但我们应当充分意识到它们的意义。同时,这或许也意味着要重现过去十年这样的突破是多么困难。毕竟,在多个层次上都取得充分进展的可能性是可遇不可求的。
再来谈谈第二点,就是 Marr 在书中提出的计算理论。Marr 的理论基于包括初草图和 2.5 维草图在内的中间表示,以及过零点、视差等基本元素或“特征”。这似乎与当今部分深度学习领袖所强调的“完全从数据中学习”的概念格格不入。我无意在此争辩对错,但我想指出两点。其一,现有的深度学习架构有其内在的归纳偏置,如卷积神经网络的空间局部性、循环神经网络的时间局部性、Transformer 的自相似性,等等。而本书中讨论的许多基本元素,恰与这些归纳偏置有内在的关联。其二,如果我们还试图在人工智能和人类智能之间建立联系(这本身也逐渐成为一个有争议的话题),那么任何的偏置是应该被预先设计,还是应该通过学习得到,就与人类认知科学中的先天与后天的概念,以及神经科学的内在机理,产生了千丝万缕的联系。诸如2.5 维草图及与其紧密相关的包括深度图在内的本征图像这样的概念,在认知科学和神经科学中都有广泛的研究,这也可以至少在一定程度上解释将它们引入计算模型的
归纳偏置的合理性。而这种联系也正是本书作为计算神经科学的教科书,可以长期对人工智能有深刻启发和深远影响的原因所在。