微软亚洲研究院首席研究员孙剑

世界上最好计算机视觉系统有多精确?就在美国东部时间12月10日上午9时,ImageNet计算机视觉识别挑战赛结果揭晓——微软亚洲研究院视觉计算组的研究员们凭借深层神经网络技术的最新突破,以绝对优势获得图像分类、图像定位以及图像检测全部三个主要项目的冠军。同一时刻,他们在另一项图像识别挑战赛MS COCO(Microsoft Common Objects in Context,常见物体图像识别)中同样成功登顶,在图像检测和图像分割项目上击败了来自学界、企业和研究机构的众多参赛者。

ImageNet计算机视觉挑战赛由来自全球顶尖高校和公司的研究员组织举办,近年来已经成为计算机视觉领域的标杆,其比赛结果总能十分直观地反映出计算机视觉这一热门领域中各研究机构的研究进展和突破。MS COCO数据库是由微软资助建立,其挑战赛目前由学术界几所高校联合组织,独立运行。

这两个挑战赛的侧重点各有不同:ImageNet 倾向于评测识别图像中显著物体的能力,而MS COCO倾向于评测识别复杂场景中的各类物体的能力。能同时在两个世界级的比赛中获得冠军,足以说明研究组的技术突破是通用的——它可以显著地改善计算机视觉领域的各项研究,甚至计算机视觉领域以外的研究,比如语音识别。那么究竟是什么样的技术突破?

在计算机视觉领域,深层神经网络的方法常常被研究人员用来训练计算机识别物体,微软也不例外。但微软亚洲研究院的研究员们在此次ImageNet挑战赛中使用了一种前所未有,深度高达百层的神经网络。该网络的层数比以往任何成功使用的神经网络的层数多5以上。

要实现这一技术,背后的挑战巨大。起初,连研究员们自己都不确信训练非常深的网络是可能或有用的。“我们没想到这样一个简单的想法意义却如此重大。” 微软亚洲研究院首席研究员孙剑坦言。完成这项技术突破的团队由4位中国研究员组成:孙剑与何恺明来自微软亚洲研究院视觉计算组,另外两人为微软亚洲研究院的联合培养博士生,分别是来自西安交通大学的张祥雨和中国科学技术大学的任少卿。

微软亚洲研究院主管研究员何恺明

当然,这个重大的技术突破震惊的不仅仅是这个研究团队的研究员们。微软全球资深副总裁Peter Lee表示,“从某种意义上说,他们完全颠覆了我之前对深层神经网络的设想。”

ImageNet挑战赛去年获胜的系统错误率为6.6%,而今年微软系统的错误率已经低至3.57%。事实上,该研究团队早在今年一月就首次实现了对人类视觉能力的突破。当时,在题为“Delving Deep into Rectifiers: Surpassing Human-Level Performance on ImageNet Classification”的论文中,他们系统的错误率已降低至4.94%。此前同样的实验中,人眼辨识的错误率大概为5.1%。

滴水穿石:这是一个关于耐心与创新的故事

近几十年来,科学家们一直都在训练计算机做各种各样的事情, 例如图像或语音识别。但很长一段时间内,这些系统的误差巨大,难以消弭。

大约在五年前,研究人员们开始重新使用 “神经网络”的技术并使其再次焕发出新的活力。神经网络的复兴让图像和语音识别等技术的精度实现了大幅度飞跃。微软的Skype Translator实时语音翻译技术就得益于此,它能够更好地识别语音,从而不断完善机器翻译的准确性。

类似于人脑,神经网络包含多级非线性处理层。从理论上说,越多的层级应该能带来越好的学习结果。但实际实验中的最大挑战是,在通过每一层级的反传训练中,反穿监督信号幅度会迅速衰减,这让整个神经网络系统的训练极为困难。

孙剑回忆到:“三年前,当计算机视觉和机器实际领域训练出8层的深层神经网络系统时,识别精度有了质的飞跃。去年出现了足有20到30层的深层神经网络,识别精度又被大幅刷新。”

孙剑和他的组员们认为网络还可以更深。过去的几个月来,他们用各种方式来添加更多的层级,同时还要保证结果的准确性。他们经历了大量错误的尝试,也吸取了很多的经验教训。最后,一个被他们称之为“深层残差网络(deep residual networks)”的系统在微软亚洲研究院成功诞生。

这个“深层残差网络”正是他们用于ImageNet挑战赛的系统,它实现了惊人的152层,比以往世界范围内的任何系统都深5倍以上。它还使用了一个全新的“残差学习”原则来指导神经网络结构的设计。残差学习最重要的突破在于重构了学习的过程,并重新定向了深层神经网络中的信息流。残差学习很好地解决了此前深层神经网络层级与准确度之间的矛盾。

借水行舟:从科研探索到智能产品

神经网络有一个非常重要的优点,就是学习到的内部表示或特征可以在不同任务中复用。Skype Translator就是一个很好的例子,英语与德语之间的翻译准确率可以随着英语与中文翻译的不断增加而提高。

孙剑表示,他们的深层残差网络具有非常强的通用性。他们把该系统用于ImageNet挑战赛的分类任务后,他们发现这一系统学到的内部表示或特征能显著提高其它三项任务:检测(detection),定位(localization)和分割(segmentation)。“从我们极深的深层神经网络中可以看出,深层残差网络力量强大且极为通用,可以预见它还能极大地改善其它计算机视觉问题。”

事实上,孙剑团队多年来在计算机视觉领域的研究成果已经转化到众多微软的智能产品和服务中,例如,微软牛津计划中的人脸识别和图像识别API,Windows 10中的Windows Hello“刷脸”开机功能,必应的图像搜索,微软小冰的多个图像“技能”,OneDrive中的图片分类功能,以及广受好评的口袋扫描仪Office Lens等等,不胜枚举。

以微软牛津计划为例,该计划开放了一系列机器学习相关的API,让没有机器学习背景的开发人员也能构建自己的智能应用。而其中人脸识别API作为牛津计划最先开放的API,受到广泛使用。此前火遍全球的How-old.net(微软颜龄机器人)和Twins or Not(微软我们)就是在人脸识别API基础上,通过几行简单的代码实现的。

通过和微软产品部门的紧密合作,这些来自于微软亚洲研究院的全球领先的计算机视觉技术得以应用在几亿人的生活中。而这些来自中国研究员的研究成果,正在为我们的生活带来一场“隐形革命”,为全球用户提供更智能的生产力工具和更个性化的计算体验。

微软全球资深副总裁、微软亚洲研究院院长洪小文博士表示,“与视觉在人类感官中的重要性相同,计算机视觉的一次次重大突破无疑为人工智能的整体发展提供了强大动力。让计算机看懂多彩的世界,一直是激励微软研究院及计算机领域同仁在这条充满挑战的道路上前行的重要力量。未来,还有更多突破等着我们去挑战!”

“微软亚洲研究院成立17年了,她的研究环境和气氛为中国IT届培养了众多的人才; 我在这里工作了12年,静下心来你就能在这样的环境中收获激动人心的发现。今天,我对我的团队说,请享受一天获得NBA冠军的感觉!”孙剑说。

相关论文:http://arxiv.org/abs/1512.03385

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

刷新神经网络新深度:ImageNet计算机视觉挑战赛微软中国研究员夺冠的更多相关文章

  1. [神经网络与深度学习][计算机视觉]SSD编译时遇到了json_parser_read.hpp:257:264: error: ‘type name’ declared as function ret

    运行make之后出现如下错误: /usr/include/boost/property_tree/detail/json_parser_read.hpp:257:264: error: 'type n ...

  2. (转)神经网络和深度学习简史(第一部分):从感知机到BP算法

    深度|神经网络和深度学习简史(第一部分):从感知机到BP算法 2016-01-23 机器之心 来自Andrey Kurenkov 作者:Andrey Kurenkov 机器之心编译出品 参与:chen ...

  3. [DeeplearningAI笔记]神经网络与深度学习人工智能行业大师访谈

    觉得有用的话,欢迎一起讨论相互学习~Follow Me 吴恩达采访Geoffrey Hinton NG:前几十年,你就已经发明了这么多神经网络和深度学习相关的概念,我其实很好奇,在这么多你发明的东西中 ...

  4. CNN卷积神经网络_深度残差网络 ResNet——解决神经网络过深反而引起误差增加的根本问题,Highway NetWork 则允许保留一定比例的原始输入 x。(这种思想在inception模型也有,例如卷积是concat并行,而不是串行)这样前面一层的信息,有一定比例可以不经过矩阵乘法和非线性变换,直接传输到下一层,仿佛一条信息高速公路,因此得名Highway Network

    from:https://blog.csdn.net/diamonjoy_zone/article/details/70904212 环境:Win8.1 TensorFlow1.0.1 软件:Anac ...

  5. 【神经网络与深度学习】【CUDA开发】【VS开发】Caffe+VS2013+CUDA7.5+cuDNN配置过程说明

    [神经网络与深度学习][CUDA开发][VS开发]Caffe+VS2013+CUDA7.5+cuDNN配置过程说明 标签:[Qt开发] 说明:这个工具在Windows上的配置真的是让我纠结万分,大部分 ...

  6. 【吴恩达课后测验】Course 1 - 神经网络和深度学习 - 第一周测验【中英】

    [吴恩达课后测验]Course 1 - 神经网络和深度学习 - 第一周测验[中英] 第一周测验 - 深度学习简介 和“AI是新电力”相类似的说法是什么? [  ]AI为我们的家庭和办公室的个人设备供电 ...

  7. 如何理解归一化(Normalization)对于神经网络(深度学习)的帮助?

    如何理解归一化(Normalization)对于神经网络(深度学习)的帮助? 作者:知乎用户链接:https://www.zhihu.com/question/326034346/answer/730 ...

  8. 【神经网络与深度学习】【CUDA开发】caffe-windows win32下的编译尝试

    [神经网络与深度学习][CUDA开发]caffe-windows win32下的编译尝试 标签:[神经网络与深度学习] [CUDA开发] 主要是在开发Qt的应用程序时,需要的是有一个使用的库文件也只是 ...

  9. 【吴恩达课后测验】Course 1 - 神经网络和深度学习 - 第二周测验【中英】

    [中英][吴恩达课后测验]Course 1 - 神经网络和深度学习 - 第二周测验 第2周测验 - 神经网络基础 神经元节点计算什么? [ ]神经元节点先计算激活函数,再计算线性函数(z = Wx + ...

随机推荐

  1. 02-导航实例-storyboard实现

        源代码下载链接:02-导航实例-storyboard实现.zip38.5 KB // MJAboutViewController.h // //  MJAboutViewController. ...

  2. HDU 4320 Arcane Numbers 1 (数论)

    A - Arcane Numbers 1 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64 ...

  3. DotNETCore 学习笔记 依赖注入和多环境

    Dependency Injection ------------------------------------------------------------------------ ASP.NE ...

  4. sort函数_C++

    C++的STL库里有一个 sort 函数,它就是随机化快速排序,速度比快速排序还快,因为它克服了逆序时被卡成O(n2)的情况 想要使用 sort 首先要在头文件里申明 #include<algo ...

  5. hdu 3374 String Problem (kmp+最大最小表示法)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3374 题目大意:输出最大和最小的是从哪一位开始的,同时输出最小循环节的个数. 这里简单介绍对字符串最小 ...

  6. Linux IO 同步/异步 阻塞/非阻塞

    同步IO:导致请求进程阻塞,直到IO操作完成: 是内核通知我们何时进行启动IO操作,而实际的IO操作需要当前进程本身阻塞完成: 包括:阻塞式IO模型,非阻塞式IO模型,IO复用模型,信号驱动式IO模型 ...

  7. module加载过程初步分析[更新中]【转】

    转自:http://blog.chinaunix.net/uid-1817735-id-2837068.html 分析这个过程可以有助于我们认识在加载模块时出现的问题大抵在哪里了. 直接从sys_in ...

  8. kotlin 写的一个简单 sql 查询解析器

    package com.dx.efuwu.core import org.apache.commons.lang.StringUtils import java.sql.PreparedStateme ...

  9. 【转】docker之Dockerfile实践

    转自:https://www.cnblogs.com/jsonhc/p/7767669.html 上一篇介绍了Dockerfile中使用的指令,现在开始进行指令实践 先查看下本地的镜像,选一个作为ba ...

  10. notepad++ quicktext插件安装与代码片段配置[quicktext v0.2.1]

    1 下载quicktext插件0.2.1版本 http://sourceforge.net/projects/quicktext/ 2 解压 3 把QuickText.ANSI.dll和QuickTe ...