人眼与计算机视觉,有什么不一样呢?

分享到:

自从人工智能诞生之日起,科学家就一直梦想着制造出能“观察”真实世界的计算机。鉴于人类社会对视频元素的高度依赖,以代码形式实现计算机视觉自然成为人工智能无法回避的核心问题。但是,和许多其它 AI开发目标一样,计算机视觉也是一种说起来容易做起来难的挑战。一九六六年,麻省理工学院的科学家推出「夏季视觉专案」,希望在两个月内,研发出一套电脑系统,可以辨识影像中的物件和背景。但是结果发现,短短一个暑假根本解决不了问题。在二十一世纪的第二个十年之后,图像分类器和物体检测器才能很好地适应主流应用。

过去几十年中,机器学习与神经科学的进步帮助我们在计算机视觉方面取得了长足进步。但是,要想构建起能够与人类一样灵活观察世界的AI系统,我们还有很长的路要走。

下面将探讨人类与动物如何处理视觉数据,并展望了我们要如何在计算机上重现这种强大的识别能力。本文讲解了生物与计算机视觉之间的差异,包括介绍数十亿年的演变如何为我们带来复杂的视觉处理系统,以及如何通过生物学研究成果构建起更好的计算机视觉算法。

硬件差异

生物视觉是数百万年间持续进化的产物。而在开发计算模型时,我们当然没必要重新发明轮子。我们可以直接学习生物解决视觉问题的方法,并以此为基础构建起更强大的算法。的确,对视觉皮层的研究已经成为计算机视觉与AI设计灵感的重要来源。但在全面实现视觉数字化之前,科学家们还必须克服生物与计算机视觉之间巨大的硬件鸿沟。生物视觉系统运行在皮层细胞与有机神经元相互连接而成的网络之上;与之不同,计算机视觉则运行在由晶体管组成的电子芯片当中。

因此,视觉理论必须先与计算机的底层原理相统一,再实现与生物视觉相等的效能。戈尔即迪洛克式解决方案,即抽象级别属于既不过度复杂、又不过于简单的水平。例如,早期计算机视觉曾经尝试以一种高度抽象的方式达成目标,其中忽略了人脑与动物大脑的既有视觉识别模式。但事实证明,这种方法效率低下且极易出错。而另一方面,在分子水平上研究并直接模拟大脑,则没有任何现实可行性。

生物学中的很多元素应该得到抽象与整理。我们并不需要2万种蛋白质、细胞质加复杂的树突状几何结构才能实现视觉能力。我们既应该适当剥离不必要的生物学细节,但又不能单纯研究具体行为——这种抽象度又过高了。”

新皮层回路的戈尔迪洛克量度定义为每毫秒发生的神经元活动。神经科学与医学技术的进步,使得研究毫秒级粒度下单一神经元的活动成为可能。这些研究的成果帮助我们开发出不同类型的人工神经网络。所谓人工神经网络是一种AI算法,能够轻松模拟哺乳动物大脑皮质区域的运作。近年来,神经网络已被证明是视觉数据中实现模式识别功能的最佳算法,并成为多种计算机视觉应用中的关键组成部分。

架构差异

最近几十年来,深度学习领域迎来了大量革命性创新,也让计算机得以更从容地模拟生物视觉中的某些功能。受到动物视觉皮层研究的启发,卷积层开始在从视觉数据中查找模式方面发挥巨大作用。池化层有助于概括卷积层的输出,并保证其不会对视觉模式的漂移太过敏感。卷积层加上池化层,就足以识别出从简单模式(拐角、边缘等)到复杂对象(人脸、椅子、汽车等)的各类图像内容。

但是,人工神经网络中使用的高级架构与我们对哺乳动物视觉皮层的认知之间仍然存在错位。遗憾的是,「层」这个字眼仍然比较含糊。计算机科学当中,人们会使用层来表示不同的处理阶段(各层基本类似于大脑中的不同区域)。但在生物学中,大脑中的各个区域包含有6个皮质层(及更多次级结构)。乍看上去,这种六层结构应该非常关键(各层间的连通性,有时也称为标准微回路),但我们并不清楚要怎么把这些回路添加到神经网络当中。有些人认为这种六层结构已经得到了一定体现(例如归一化操作),但这里肯定还有不少需要充实的空间。

大脑中的信息会朝着多个方向移动。光信号由视网膜移动至颞下皮层,再被传输至视觉皮层的V1、V2及其他层。与此同时,每个层还同时向前一层提供反馈。在各层中,神经元彼此交互并传递信息,而所有交互作用与往来联系在实质上是帮助大脑填补视觉输入中的空白,借此在信息不完整时做出推断。

相反,在人工神经网络中,数据通常只在单一方向上移动。卷积神经网络属于“前馈网络”,意味着信息只会从输入层一步步转向较高层与输出层。目前也存在一种名为“反向传播”的反馈机制,有助于纠正错误并调整神经网络参数。但这种反向传播会带来高昂的计算成本,而且仅能在神经网络的训练期间发挥作用。我们也不清楚反向传播是否真的直接对应于皮质层的反馈机制。

在另一方面,强调将较高层的输出与前一层输入相结合的递归神经网络,在计算机视觉中的使用仍然比较有限。

在视觉皮层(右)中,信息会沿多个方向移动。但在神经网络(左)中,信息只沿单一方向移动。向人工神经网络引入横向及纵向信息流,可能有助于其更好地与生物视觉系统相匹配。

横向连接(即同一层内各单元间的连接)对于图形补全等计算任务可能至关重要。而纵向连接(即由上层单元到下层单元间的连接)对于做出预测、唤起注意力、合并上下文信息等也许具有关键意义。大脑神经元具有“现有网络中所缺少的复杂时间整合能力。

目标差异

生物进化成功发展出了能够完成诸多任务的神经架构。已经有多项研究表明,我们的视觉系统能够根据不同目标动态调节关注敏感性。但是,这种灵活性在计算机视觉系统上仍然很难实现。目前的计算机视觉系统主要为单一任务而设计,例如通过不同的神经网络进行对象分类、对象定位、按对象拆分图像区域、描述图像内容、生成新图像等,但这些神经网络各自只能完成自己份内的一项工作。

面对“应该如何以目标为中心灵活地传递视觉信息?”这个问题,Gabriel Kreiman教授强调“在本质上,人类能够根据同一图像回答无数个问题,包括标记对象、计算对象、描述对象颜色、对象间的相互作用、各对象的大小等。我们目前只能构建出解决其中一个问题的神经网络,却无法通过单一网络同时解决所有问题。虽然也有一些新兴算法做出了尝试,但其水平仍然相当原始,远不能与人类的表现相提并论。”

综合差异

对人类及动物来说,视觉往往与嗅觉、触觉和听觉密切相关。视觉皮层、听觉皮层、体感皮层以及嗅觉皮层间相互影响并相互提示,帮助人体调整对周遭世界的推断。但在AI系统中,这些元素还只能分别独立存在。

我们是否需要建立起这种综合体系,由此构建起更强大的计算机视觉方案?

我们习惯于把问题拆解开来分别处理。这样的起点确实比较合理,例如先实现视觉,暂时不考虑嗅觉或听觉。这有点像电影工业早期制作的默片。跨模式用例当然值得期待,但先把问题简化也许更有利于获得研究进展。但是,生物视觉本身就与大脑中的各个复杂区域相互关联。在人体中,视觉离不开逻辑、推理、语言及常识等关联体系。其实大部分视觉问题都要求我们把输入内容与原有常识结合起来。以下面这张美国前总统奥巴马的照片为例。

图片1

要理解图片内容,需要一定的通识知识与社会知识,例如弄明白体重秤上的人在做什么、奥巴马在做什么,这需要大量的背景信息。通识知识会让AI代理意识到体重秤的作用是测量体重,物理知识则指明奥巴马在给面前的人加力,心理知识则是人们在看到远超预期的体重指数时往往会感到惊讶。而这也是恶作剧的意义所在。

当前的体系结构显然没有这样做。各种信息将以我们自己没有意识到的方式整合,并与大脑储存的信息相互映射和补充。对于语言和常识的理解,本身就是一个横跨 AI社区的高峰。更有甚者,我们甚至不清楚这样的问题究竟能否以一种分裂的方式逐步得到解决;或者说,只有统一的整体处理才能带来真正的答案。最终有一天,我们会考虑到认知的所有层面,如果没有语言和逻辑作为支撑,这种视觉就不够可靠。以期在今后的工作中取得重大突破,努力实现语言、逻辑和视觉模型的统一。

 

继续阅读
人眼与计算机视觉,有什么不一样呢?

自从人工智能诞生之日起,科学家就一直梦想着制造出能“观察”真实世界的计算机。鉴于人类社会对视频元素的高度依赖,以代码形式实现计算机视觉自然成为人工智能无法回避的核心问题。但是,和许多其它 AI开发目标一样,计算机视觉也是一种说起来容易做起来难的挑战。一九六六年,麻省理工学院的科学家推出「夏季视觉专案」,希望在两个月内,研发出一套电脑系统,可以辨识影像中的物件和背景。但是结果发现,短短一个暑假根本解决不了问题。在二十一世纪的第二个十年之后,图像分类器和物体检测器才能很好地适应主流应用。