微软自动图像说明技术的最新进展

作者:John Platt

微软雷德蒙研究院副院长兼杰出科学家

文章译自:Rapid Progress in Automatic Image Captioning

多年来,我一直热衷于接受图像理解(image understanding)领域各种艰巨的挑战。关于图像理解,每个人对其都有不同的定义,它的种类几乎与从事计算机视觉研究的人员数量一样多。但是我们都有一个共同的目标:创建一个能够与人类相媲美的系统,自动为图像生成描述性说明。

微软自动图像说明系统的性能如何

今年夏天,抱着“放手一搏”的想法,包括我在内,来自微软研究院的大约12名实习生和研究员成功开发了一套自动图像说明(Automatic Image Captioning)系统。在对象分类和检测的深度学习方面取得的诸多进步推动了我们去开发这样一个令人信服的系统了。

下面是我们的系统输出的一个例子:你认为哪个说明是由人编写的,而哪个又是系统生成的呢?

1. 用朴实的木制件设计的华丽厨房 (An ornate kitchen designed with rustic wooden part)

2. 配有木制橱柜和水槽的厨房 (A kitchen with wooden cabinets and a sink)

【答案在文章下半部分公布】

这个项目的乐趣是惊人的;对于我们当中的许多人来说,这是我们过去多年科研工作中最有趣的事情。研究的团队包含了来自不同学科的专家,如计算机视觉、自然语言、语音、机器翻译和机器学习。

当然,这不仅仅是个有趣的研究课题而已,我也为我们的研究成果而感到骄傲(我们已经把结果书写成论文了)。你可以把我们开发的这个自动图像说明系统看作一个机器翻译系统。机器翻译专家使用BLEU指标对系统输出的翻译和人类的翻译进行比对。BLEU将说明拆成不同长度的语块(chucks),它们通常由1到4个字组成,然后测量系统和人类翻译之间的重叠度。它还会对过短的系统生成的说明进行罚分。

为了了解我们究竟可以获得多高的BLEU分数,我们检测了一条人类编写的说明(作为一个假定“系统”)和其他四条系统编写的说明。我很高兴地告诉大家,在BLEU得分方面,我们实际上击败了人类!我们的系统取得了21.05%的BLEU分数,而人类“系统”仅取得了19.32%。

当然,超越人类的BLEU得分是要打一个大大的折扣的。在机器翻译界,BLEU的许多局限性是人所共知的。为此,我们也尝试用METEOR指标进行测试,自动图像说明的得分在一定程度上逊色于人类(20.71%比24.07%)。

事实上,最好的方法是进行盲测,请人类来判断哪一条图像说明更好一些(有点像我在上文中向读者提出的问题那样)。我们使用亚马逊的Mechanical Turk请人们对说明进行比较:是这个好,还是那个好,又或者它们差不多好?对于23.3%的测试图像,人们认为系统说明同于或优于人类说明。

研究小组对于这样的结果颇感激动。因为即使接近于人类对图像的理解水平对人类开发的自动图像说明来说都是一个难题。下面就是一个棘手的例子:

系统输出:“一只猫坐在床上”

人类描述:“一个人坐在床上,面前有台打开的笔记本电脑,一只猫坐在他旁边,看着笔记本电脑的屏幕区域”

正如你所看到的,系统输出的描述当然是完全正确的,但人类会调用自己的处世经验,编写更加详细的说明。

下面我们来揭晓文章开头的谜题的答案: “一个配有木制橱柜和水槽的厨房”,这是系统输出的说明。

这个系统是如何工作的

从大的范围上来看,这个系统的工作方式可以分为3步,如下图所示:

  1. 检测字词:女人、人群、猫、相机、举着、紫色
  2. 生成句子:一台紫色相机和一个女人。一个女人在人群中举着一台相机…一个女人抱着一只猫
  3. 句子重新排序:第一句:一个女人在人群中举着一台相机

首先,系统将图片拆散成几个可能包含物体的区域(基于边缘)。然后用深层神经网络(deep neural network)对每个区域进行处理,以产生一个高层级的特征矢量,捕获相关的视觉信息。接下来,将这个特征矢量作为输入,进入一个神经网络。这个网络经过训练,能够提供相关说明中出现过的字词。在训练中,我们并未手工给各个区域分配字词;相反,我们用了一个称为“多实例学习(Multiple Instance Learning)”的方法,让神经网络自行找出哪个区域与哪个字词最匹配。

其结果就是一大堆从图像中检测到的字词,并且没有特定的顺序。看看从哪个区域检测出了哪个字词,是件很有趣的事情:

接下来,我们使用语言模型(language model),把这些字词放在一起并组成一个有合理意义的句子。你可能听说过的语言模型:它们需要借助训练语料库(比如莎士比亚著作)来生成“听起来像”上述语料库的新文本(例如新的伪莎士比亚著作)。我们所做的是训练一个图像说明语言模型来生产新的说明。我们通过从图像中检测到的字词创建一块“小黑板”来给语言模型添加一个“方向盘”。我们鼓励语言模型生成这些字词,在这个过程中,系统逐个从“小黑板”上擦掉了这些字词。这样就避免系统一遍又一遍重复同样的字词(我称之为马尔科维奇(Malkovich)问题)。

字词检测器(word detector)和语言模型都是本地的,这意味着它们只能看到图像的特定部分来产生每个字,而且每次只考虑生成一个字词。说明与图像之间没有任何全局语义或适当性。为了解决这个问题,我们又创建了一个相似性模型,采用深度学习技术了解哪些说明最适合哪张图像。我们使用相似性模型(以及这个句子的特征)来生成最终答案。

当然,这是从高层次来对这个系统进行描述。关于这个系统的更多信息,你可以阅读我们的论文

学界的其他研究

有时,一个“悬而未决”的想法会有由多个团队在同一时间想出解决的思路。在图像说明领域貌似也是如此。2014年之前,也曾有人尝试开发自动图像说明系统,但没有利用深度学习技术。MidgeBabyTalk就是其中的例子。当然,我们的方法得益于这些早期的研究经验。

今年以来,基于深度学习的图像说明系统出现了令人振奋的寒武纪大爆发。很多研究团队纷纷把目标瞄准了2015年CVPR大会。我所知道的论文有:

这种类型的集体进步是我所喜闻乐见的。图像说明是个令人着迷又十分重要的问题。我想更好地了解这些方法的长处和短处。(我注意到,有几个人使用了神经网络和/或LSTM模型)。作为一个研究领域,如果我们能够在标准化测试集(如COCO)以及标准指标上达成共识,我们就将继续向这一终极目标靠拢:创造一个可以与人类相媲美的系统,用于自动生成描述性的图像说明。今年夏天我们以及其他人的工作成果表明,我们正在朝着正确的方向。

欢迎关注

微软亚洲研究院官方网站:http://www.msra.cn

微软亚洲研究院人人网主页:http://page.renren.com/600674137

微软亚洲研究院微博:http://t.sina.com.cn/msra

from: http://blog.sina.com.cn/s/blog_4caedc7a0102v72n.html

时间: 2024-10-07 09:30:38

微软自动图像说明技术的最新进展的相关文章

语音识别技术的最新进展

7月11日,我在短文"现代人工智能走在仿生学的大道上"中提出关于现代人工智能的仿生学研究方向,是一句大实话.为什么? 大家知道,在上世纪60-70年代,加拿大神经生理学专家David Hubel(1926-2013)以实验为基础,搞清楚了人类大脑视觉系统对外界刺激信号的反应机制,揭示了大脑神经皮层的多层次结构,奠定了现代人工智能的仿生学基础. 在计算机科学发展历史中,语音识别(SR)是个难题,科学家绞尽脑汁,几乎什么方法都用了,还是不见成效.人的听觉神经系统是不是具有多层次结构特征?如

【超分辨率专题】—基于深度学习的图像超分辨率最新进展与趋势

1.简介 图像超分辨率是计算机视觉和图像处理领域一个非常重要的研究问题,在医疗图像分析.生物特征识别.视频监控与安全等实际场景中有着广泛的应用.随着深度学习技术的发展,基于深度学习的图像超分方法在多个测试任务上,取得了目前最优的性能和效果.本文介绍的一篇综述(Deep Learning for Image Super-resolution:A Survey)给出了一个统一的深度学习视角,来回顾最近的超分技术进展,主要包括三个方面: 给出了综合性的基于深度学习的图像超分技术综述,包括问题设置.数据

SQL on Hadoop系统的最新进展(1)

转自:http://blog.jobbole.com/47892/ 为什么非要把SQL放到Hadoop上? SQL易于使用.那为什么非得基于Hadoop呢?the robust and scalable architecture of Hadoop 目前SQL on Hadoop产品主要有以下几种:Hive, Tez/Stinger, Impala, Shark/Spark, Phoenix, Hawq/Greenplum, HadoopDB, Citusdata等.本文主要讨论Hive, Te

《推荐系统》--最新进展:比如攻击、在线消费决策、普适环境等

<Recommender System An Introduction>,第九章,针对协同推荐系统的攻击 <Recommender System An Introduction>,第十章,在线消费决策 <Recommender System An Introduction>,第十一章,推荐系统和下一代互联网 <Recommender System An Introduction>,第十二章,普适环境中的推荐 应对攻击的对策 (1)使用基于模型的技术和额外的信

爱因斯坦计划最新进展(201710)

在2017年的美国国家网络安全意识月活动期间,DHS下的NPPD向国会出具了多份书面证词,谈及了包括爱因斯坦计划和CDM(持续诊断与缓解)项目在内的相关进展情况. 作为DHS下面主管CyberSecurity的部门,证词提到:"NPPD负责保护民用联邦政府网络[注:民用机构.民事设施跟军用/军事对应.爱因斯坦管不了美国军事机关和设施,那由DoD管辖],并与其他联邦机构,州,地方,部落和地区政府(SLTT)以及私营部门合作,防范网络威胁. 我们致力于加强全球的网络威胁信息共享,在网络事件开始之前阻

【16.09.01】【三零技术】最新更新文章推荐

1.[PHP编程:PHP简单无限分类类代码] 简介:这里就不多解释原理了,直接发代码.PS:这里代码是不能直接使用的,必须结合我的一些其他库类.应该说思想才是最重要的,这里主要提供一种分类的思路.... 地址:http://www.q3060.com/list3/list117/34130.html 2.[PHP编程:PHP简单的采集程序] 简介:    (修改了下,增加了数据缓存功能..汗,没有使用lite_cache了,自己写了个最简单的那种..)                      

目标检测最全论文集锦引用地址 最新进展和研究成果 2019最火目标检测算法centernet 拓展想法以及拓展研究的思路

目标检测最全论文集锦引用地址 最新进展和研究成果 2019最火目标检测算法centernet 拓展想法以及拓展研究的思路 待办 经典论文集锦 https://zhuanlan.zhihu.com/p/36818086 https://handong1587.github.io/deep_learning/2015/10/09/object-detection.html 目标检测最新进展与研究 https://zhuanlan.zhihu.com/p/96115519 centernet思路梳理

【新书推荐】《微软开源跨平台移动开发实践》带你走近微软开源开源跨平台技术

上周收到本书作者李争送的一本12月份的新书<微软开源跨平台移动开发实践——利用ASP.NET Core 1.0 .Apache Cordova.Xamarin和Azure快速构建移动应用解决方案>.这本书的名字超长.这本书也是超薄,只有220页,一个周末时间就读完了,但是这本书的内容确是超丰富,浓缩了微软这三年向开源和跨平台领域的转变,微软在开源和跨平台领域构建出来的一套技术体系.从服务端的NET Core.ASP.NET 和 Web APi ,到Web端的 Typescript脚本语言,再到

微软发布Win10:技术预览版免费下载

微软今日如约放出了Windows 10技术预览版的下载,大家现在就可以免费下载Windows 10技术预览版ISO文件,安装并开启体验. Windows 10技术预览版首批提供了英语.简体中文.葡萄牙语,含32位.64位. Windows 10技术预览版简体中文版64位大小为3.96GB,32位大小为3.05GB. 产品密钥:NKJFK-GPHP7-G8C3J-P6JXR-HQRJR Windows 10技术预览版简体中文版官方下载: 64位:http://go.microsoft.com/fw