前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在图像中标注新的对象

在图像中标注新的对象

作者头像
花落花飞去
发布2018-01-26 16:57:08
1.7K0
发布2018-01-26 16:57:08
举报
文章被收录于专栏:人工智能

给定一个图像,人类可以很容易地推断其中的显着实体,并有效地描述场景,如对象所在的位置(在森林或厨房?),对象具有什么属性(棕色或白色?),更重要的是,物体如何与场景中的其他物体(在田野里奔跑,或被人等等)相互作用。视觉描述的任务旨在开发视觉系统,生成关于图像中对象的上下文描述。视觉描述是具有挑战性的,因为它不仅需要识别对象(熊),还需要识别其他视觉元素,如动作(站立)和属性(棕色),并构建一个流畅的句子来描述图像中的对象,动作和属性如何相关(如棕熊站在森林中的一块岩石上)。

视觉描述的现状

A
A
B
B

图A

图B

LRCN [Donahue et al。'15]:站在郁郁葱葱的绿色田野上的棕熊。 MS CaptionBot [Tran et al。'16]:一头大棕熊走过森林。

LRCN [Donahue et al。'15]:一只黑熊站在草地上。 MS CaptionBot [Tran et al。'16]:一只正在吃草的熊。

由两个图像上的现有信息产生的描述。左边是训练数据中存在的对象(熊)的图像。在右边是模型在训练中没有见过的对象(食蚁兽)。

目前的视觉描述或图像描述模型工作得很好,但是它们只能描述在现有图像描述训练数据集中看到的对象,而且他们需要大量的训练样例才能生成好的描述。为了学习如何在上下文中描述诸如“狐狼”或“食蚁兽”的对象,大多数描述模型需要许多狐狼或食蚁兽图像的例子以及相应的描述。然而,目前的视觉描述数据集,如MSCOCO,不包含关于所有对象的描述。相比之下,最近通过卷积神经网络(CNN)进行物体识别的作品可以识别数百种物体。虽然物体识别模型可以识别狐狼和食蚁兽,但描述模型不能构成句子来正确描述这些动物的上下文。在我们的工作中,我们通过构建可以描述新对象的视觉描述系统来克服这个问题,而不需要关于这些对象的图像和句子。

任务:描述新的对象

在这里我们更正式地定义我们的任务。给定由图像和描述对(成对图像 - 句子数据,例如MSCOCO)组成的数据集以及带有对象标签但没有描述的图像(不成对的图像数据,例如ImageNet),我们希望学习如何描述未配对的物体图像 - 句子数据。要做到这一点,我们必须建立一个模型,可以识别不同的视觉成分(例如,狐狼,棕色,站立和田野),并以新颖的方式组成这些模式,形成一个连贯的描述。下面我们描述我们的描述模型的核心组件。

新颖的视觉描述任务
新颖的视觉描述任务

我们的目标是描述不具有说明的训练图像的各种物体。

使用外部数据源

为了针对图像标题训练数据之外的不同类别对象能够标记名称,我们利用了外部的数据源。具体而言,我们使用带有对象标签的ImageNet图像作为未配对的图像数据源,并将来自未注释的文本库(如Wikipedia)的文本作为我们的文本数据源。这些用来分别训练我们的视觉识别CNN和语言模型。

有效地培训外部资源
有效地培训外部资源

有效地利用外部资源培训

捕获语义相似性

我们希望能够识别出那些没见过的,但是与在配对图像句子训练数据中看到的对象类似的对象(例如,来自ImageNet)。我们使用密集词嵌入来实现这一点。词嵌入是词的稠密高维表示,其中具有相似含义的词在嵌入空间中位置更接近。

在我们以前的作品“深度合成字幕(DCC)”[1]中,我们首先在MSCOCO配对图像描述数据集上训练描述模型。然后,为了描述新的对象,对于每个新颖的对象(例如okapi),我们使用词嵌入来识别MSCOCO数据集(在这种情况下是斑马)中的对象之间最相似的对象。然后,我们将从见过的对象提炼出的参数转移(复制)到没见过的对象(例如,复制网络上关于斑马的重量给霍加皮)。

给新的对象加说明

虽然DCC模型能够描述几个没见过的对象类别,但是将参数从一个对象复制到另一个对象却非常地生硬死板。例如,对于“球拍”,这个词就是复制了“网球”的权重作用,从而导致诸如“一个人在球场上打球拍”的句子。在我们最近的工作[2]中,我们直接在语言模型使用词嵌入。具体来说,我们在语言模型的输入和输出中使用GloVe嵌入。这使模型能够在描述没见过的对象时捕获语义相似性。这使得我们的模型能够生成句子,例如“网球员在挥动球拍击球”。另外,直接在网络中使用密集词嵌入使得我们的模型是端到端的可训练的。

密集词嵌入来捕获图像相似性
密集词嵌入来捕获图像相似性

将密集词嵌入整合到语言模型中以捕获语义相似性。

在神经网络中的描述模型和遗忘。

我们将视觉网络和语言模型的输出结合到描述模型。该模型与现有的在ImageNet上预先训练过的描述模型相似。然而,我们观察到,虽然模型是在ImageNet上预先训练好的,但是当模型在COCO图像 - 描述数据集上进行训练/调整时,往往会忘记之前看到的内容。蒙特利尔研究人员以及Google DeepMind等人也观察到了神经网络中关于遗忘的问题。在我们的工作中,我们使用联合培训策略解决了遗忘的问题。

联合训练克服遗忘
联合训练克服遗忘

分享特征和针对不同的数据/任务的联合训练来克服“遗忘”

具体来说,我们的网络有三个组成部分:视觉识别网络,描述模型和语言模型。这三个部分共享数据,并协同训练。在训练期间,每批输入包含一些带有标签的图像,一组不同的图像和标题以及一些简单的句子。这三类输入数据训练网络中的不同部分。由于数据在三个部分之间是共享的,所以这个网络就被训练出可以识别图像中的对象,描述图像和生成句子。这种联合训练有助于网络克服遗忘问题,并使模型能够产生对许多新对象类别的描述。

下一步是什么?

在我们的模型中最常见的错误之一就是无法识别对象,而减少这种情况的方式是使用更好的视觉特征。另一个常见的错误来自生成不流利的句子(一只猫和一只猫在床上),或者不符合“常识”(例如,“一个女人正在玩体操”不是特别正确,因为一个人不能玩“ “体操”)。开发可以克服这些问题的解决方案将是有趣的。

在这项工作中,我们提出联合训练作为克服遗忘问题的一种策略,但可能我们并不总能有许多不同的任务和数据集来训练。解决这个问题的另一种方法是建立一个模型,可以学习根据视觉信息和对象标签来组合描述。这样一个模型也应该能够实时整合对象,也就是说,我们现在预先在一组选定的对象上训练模型,我们也应该考虑如何针对新数据进行对模型进行逐步的训练。解决这些问题可以帮助开发更好、更稳定的视觉描述模型。

本博客文章基于以下研究论文:

[1] LA Hendricks,S. Venugopalan,M. Rohrbach,R. Mooney,K. Saenko和T. Darrell。深层成分字幕:描述新的对象类别,没有配对的训练数据。在CVPR,2016。

[2] S. Venugopalan,LA Hendricks,M. Rohrbach,R. Mooney,K. Saenko和T. Darrell。字幕与不同的对象的图像。在CVPR,2017。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 视觉描述的现状
  • 任务:描述新的对象
    • 使用外部数据源
      • 捕获语义相似性
        • 给新的对象加说明
          • 在神经网络中的描述模型和遗忘。
          • 下一步是什么?
          相关产品与服务
          图像识别
          腾讯云图像识别基于深度学习等人工智能技术,提供车辆,物体及场景等检测和识别服务, 已上线产品子功能包含车辆识别,商品识别,宠物识别,文件封识别等,更多功能接口敬请期待。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档