代季峰、林思德、郭百宁作者

图像识别的未来:机遇与挑战并存

识别图像对人类来说是件极容易的事情,但是对机器而言,这也经历了漫长岁月。

计算机视觉领域,图像识别这几年的发展突飞猛进。例如,在PASCAL VOC物体检测基准测试中,检测器的性能从平均准确率30%飙升到了今天的超过90%。对于图像分类,在极具挑战性的ImageNet数据集上,目前先进算法的表现甚至超过了人类。

图像识别技术的高价值应用就发生在你我身边,例如视频监控、自动驾驶和智能医疗等,而这些图像识别最新进展的背后推动力是深度学习深度学习的成功主要得益于三个方面:大规模数据集的产生、强有力的模型的发展以及可用的大量计算资源。对于各种各样的图像识别任务,精心设计的深度神经网络已经远远超越了以前那些基于人工设计的图像特征的方法。

尽管到目前为止深度学习在图像识别方面已经取得了巨大成功,但在它进一步广泛应用之前,仍然有很多挑战需要我们去面对。与此同时,我们也看到了很多具有未来价值的研究方向。

挑战一:如何提高模型的泛化能力

图像识别技术在可以被广泛应用之前,一个重要的挑战是,怎样才能知道一个模型对未曾出现过的场景仍然具有很好的泛化能力。

在目前的实践中,数据集被随机划分为训练集和测试集,模型也相应地在这个数据集上被训练和评估。需要注意的是,在这种做法中,测试集拥有和训练集一样的数据分布,因为它们都是从具有相似场景内容和成像条件的数据中采样得到的。

然而,在实际应用中,测试图像或许会来自不同于训练时的数据分布。这些未曾出现过的数据可能会在视角、大小尺度、场景配置、相机属性等方面与训练数据不同。

一项研究表明,数据分布上的这种差异会导致各种深度网络模型的准确率产生明显的下降 。当前模型对数据分布自然变化的敏感性可能成为自动驾驶等关键应用的一个严重问题。

挑战二:如何利用小规模和超大规模数据

我们需要面对的另一个重要的挑战是如何更好地利用小规模训练数据。虽然深度学习通过利用大量标注数据在各种任务中都取得了巨大的成功,但现有的技术通常会因为只有很少的标记实例可用而在小数据情景中崩溃。这个情景通常被称为“少样本学习(few-shot learning)”,并需要在实际应用中仔细考虑。例如,一个家庭机器人被期望可以完成这样的任务:向它展示一个新物体,且只展示一次,之后它便可以识别这个物体。一个人可以很自然地完成这个任务,即使这个物体之后又被操作过了,例如一个毛毯被折叠起来了。如何赋予神经网络像人类这样的泛化能力是一个开放的研究问题。

另一个极端是如何利用超大规模数据有效地提高识别算法的性能。对于像自动驾驶这样的关键应用,图像识别的出错成本非常高。因此,研究者们创造出了非常庞大的数据集,这些数据集包含了数以亿计的带有丰富标注的图像,并且他们希望通过利用这些数据使模型的准确度得到显著提高。

然而,目前的算法并不能很好地利用这种超大规模数据 。在包含了3亿张标注图片的JFT数据集上,各种深度网络的性能随着训练数据量的增加,仅仅呈现出对数级的提高(图一)。在大规模数据的情况下,继续增加训练数据带来的收益会变得越来越不明显,这是一个有待解决的重要问题。

图一  目标检测在JFT-300M数据集上的性能随训练样例的增多呈对数倍的提高。x轴是对数尺度下的数据大小。y轴是目标检测的性能。左图使用COCO minival测试集上的mAP@[0.5,0.95]  指标,右图使用PASCAL VOC 2007测试集上的mAP@0.5指标 。红蓝两条曲线分别代表两种不同的模型。

挑战三:全面的场景理解

除了这些与训练数据和泛化能力相关的问题外,还有一个重要的研究课题是全面的场景理解。除了识别和定位场景中的物体之外,人类还可以推断物体和物体之间的关系、部分到整体的层次、物体的属性和三维场景布局。

获得对场景的更广泛的理解将会帮助例如机器人交互这样的应用,因为这些应用通常需要物体标识和位置以外的信息。这个任务不仅涉及到对场景的感知,而且还需要对现实世界的认知理解。要实现这一目标,我们还有很长的路要走。全面的场景理解的一个例子为全景分割,见图二。

图二 (a)原图;(b)语义分割:识别天空、草地、道路等没有固定形状的不可数材质(stuff),标记方法通常是给每个像素加上标签 ;(c)实例分割:分割人、动物或工具等可数且独立的物体实例(object instance),通常用包围盒或分割掩码标记目标;(d)全景分割:生成统一的、全局的分割图像,既识别材质,也识别物体。

挑战四:自动化网络设计

最后一个值得一提的挑战是使网络设计自动化。近年来,图像识别这一领域的重心从设计更好的特征转向了设计更新的网络架构。然而,设计网络架构是一个冗长乏味的过程,它需要处理大量的超参数和设计选择。调优这些元素需要有经验的工程师花费大量的时间和精力。

更重要的是,一个任务的最优架构和另一个任务的最优架构可能是完全不同的。尽管我们对自动神经架构搜索的研究已经开始了,但它们仍然处于早期阶段并且仅适用于图像分类任务。当前方法的搜索空间非常狭窄,因为它们寻找的是现有网络模块的局部最优组合(例如深度可分离卷积和恒等连接),并且无法发现新的模块。目前还不清楚这些现有的方法是否足以胜任更复杂的任务。图三 神经架构搜索算法的抽象图解。搜索策略首先从事先定义好的搜索空间中选择一个架构A,这个构架接着被评估策略进行评估,并将评估的A的性能传递给搜索策略 。

尽管在图像识别领域存在上述诸多挑战,但我们仍然相信深度学习在图像识别领域的巨大潜力。解决这些问题的机会比比皆是,下面我们看看这其中的几个研究方向:

方向一:整合常识

图像识别领域有一个重要的研究方向是将常识融入到深度学习中。目前,深度学习主要作为一种纯粹的数据驱动技术被使用。在深度学习中,神经网络利用训练集中的标注样本学习一个非线性函数,之后在测试时则将这个学习到的函数作用到图片像素上。训练集之外的信息则一点也没有被用到。

相比之下,人类识别物体不仅基于已经看到的样本,还基于他们有关真实世界的常识。人们能够对他们所看到的东西进行推理,以避免不合逻辑的识别结果。此外,当遇到新的或超出预期的东西时,人类可以迅速调整他们的知识来解释这次的新经历。如何在深度网络中获取、表示常识以及利用常识进行推理是一个挑战。

方向二:几何推理

联合执行图像识别和几何推理则是另一个有潜力的方向。图像识别的主要模型只考虑了二维外观,而人类可以感知三维场景布局以及推断其内在的语义类别。三维布局不仅可以从双目视觉中获得,还可以从二维输入的几何推理中得到,就像人们看照片时所做的那样。联合图像识别和几何推理为双方都提供了好处。

从几何推理中确定的三维布局可以帮助在看不见的视角、变形和外观的情况下引导识别。它还可以消除不合理的语义布局,并帮助识别由其三维形状或功能定义的类别。例如,沙发中存在着巨大的类内外观差异。然而,它们拥有共同的属性,可以帮助识别它们。比如它们都有一个水平面用来坐,一个背面用于支撑。另一方面,识别出来的语义可以规范化几何推理的解空间。例如,如果一只狗在一个场景中被识别,它相应的三维结构应该符合狗的三维形状模型。

图四 从视频的两个不同视角的帧重建出复杂动态场景的点云

方向三:对关系建模

关系建模也有很大的研究潜力。想要全面理解一个场景,对场景中存在的目标实体之间的关系和相互作用的建模非常重要(图四)。考虑两张图片,每个图片都包含一个人和一匹马。如果一张展示的是骑着马的人,另一张展示的是踩着人的马,显然这两张图片表达了完全不同的意思。此外,通过关系建模提取的底层场景结构可以帮助补偿当前深度学习方法因数据有限而出现的模糊不确定等问题。尽管人们已经在努力解决关系建模这个问题,但这项研究仍然是初步的,并且还有很大的探索空间。

图五 目标检测中的关系网络。表示物体的外表特征,表示物体的几何特征

方向四:学习如何学习

这里还有一个值得一提的方向是元学习,它的目标是学习学习过程。这个课题最近引起了相当多的关注,而且神经架构搜索也可以被认为是它的一种应用。

然而,由于目前对学习过程建模的机制、表示和算法还比较初级,元学习的研究仍处于早期阶段。以神经架构搜索为例,它只局限于现有网络模块的简单组合。元学习者无法捕捉到创作新网络模块所需的微妙的直觉和敏锐的洞察力。随着元学习的进步,自动架构设计的潜力可能会被完全释放出来,进而得到远超手工设计的网络结构。

图六 元学习近期的进展。自左至右分别为元学习超参数优化 、神经架构搜索 、少样本图像分类

这是一个激动人心的从事图像识别的时代,一个充满了推动领域发展、影响未来应用的机会时代。我们热切盼望即将到来的进步,并期待这些新技术以深刻而神奇的方式改变我们的生活。

微软研究院AI头条
微软研究院AI头条

专注科研19年,盛产黑科技

产业计算机视觉图像识别
2
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

自动驾驶技术技术

从 20 世纪 80 年代首次成功演示以来(Dickmanns & Mysliwetz (1992); Dickmanns & Graefe (1988); Thorpe et al. (1988)),自动驾驶汽车领域已经取得了巨大进展。尽管有了这些进展,但在任意复杂环境中实现完全自动驾驶导航仍被认为还需要数十年的发展。原因有两个:首先,在复杂的动态环境中运行的自动驾驶系统需要人工智能归纳不可预测的情境,从而进行实时推论。第二,信息性决策需要准确的感知,目前大部分已有的计算机视觉系统有一定的错误率,这是自动驾驶导航所无法接受的。

感知技术

知觉或感知是外界刺激作用于感官时,脑对外界的整体的看法和理解,为我们对外界的感官信息进行组织和解释。在认知科学中,也可看作一组程序,包括获取信息、理解信息、筛选信息、组织信息。与感觉不同,知觉反映的是由对象的各样属性及关系构成的整体。

基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

元学习技术

元学习是机器学习的一个子领域,是将自动学习算法应用于机器学习实验的元数据上。现在的 AI 系统可以通过大量时间和经验从头学习一项复杂技能。但是,我们如果想使智能体掌握多种技能、适应多种环境,则不应该从头开始在每一个环境中训练每一项技能,而是需要智能体通过对以往经验的再利用来学习如何学习多项新任务,因此我们不应该独立地训练每一个新任务。这种学习如何学习的方法,又叫元学习(meta-learning),是通往可持续学习多项新任务的多面智能体的必经之路。

计算机视觉技术

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

逻辑技术

人工智能领域用逻辑来理解智能推理问题;它可以提供用于分析编程语言的技术,也可用作分析、表征知识或编程的工具。目前人们常用的逻辑分支有命题逻辑(Propositional Logic )以及一阶逻辑(FOL)等谓词逻辑。

规范化技术

规范化:将属性数据按比例缩放,使之落入一个小的特定区间,如-1.0 到1.0 或0.0 到1.0。 通过将属性数据按比例缩放,使之落入一个小的特定区间,如0.0到1.0,对属性规范化。对于距离度量分类算法,如涉及神经网络或诸如最临近分类和聚类的分类算法,规范化特别有用。如果使用神经网络后向传播算法进行分类挖掘,对于训练样本属性输入值规范化将有助于加快学习阶段的速度。对于基于距离的方法,规范化可以帮助防止具有较大初始值域的属性与具有较小初始值域的属相相比,权重过大。有许多数据规范化的方法,包括最小-最大规范化、z-score规范化和按小数定标规范化。

语义分割技术

语义分割,简单来说就是给定一张图片,对图片中的每一个像素点进行分类。图像语义分割是AI领域中一个重要的分支,是机器视觉技术中关于图像理解的重要一环。

图像分类技术

图像分类,根据各自在图像信息中所反映的不同特征,把不同类别的目标区分开来的图像处理方法。它利用计算机对图像进行定量分析,把图像或图像中的每个像元或区域划归为若干个类别中的某一种,以代替人的视觉判读。

图网技术

ImageNet 是一个计算机视觉系统识别项目, 是目前世界上图像识别最大的数据库。

深度神经网络技术

深度神经网络(DNN)是深度学习的一种框架,它是一种具备至少一个隐层的神经网络。与浅层神经网络类似,深度神经网络也能够为复杂非线性系统提供建模,但多出的层次为模型提供了更高的抽象层次,因而提高了模型的能力。

推荐文章
暂无评论
暂无评论~