孙剑博士分享的是《深度学习变革视觉计算》,分别从视觉智能、计算机摄影学和AI计算三个方面去介绍。

他首先回顾了深度学习发展历史,深度学习发展到今天并不容易,过程中遇到了两个主要障碍:

第一,深度神经网络能否很好地被训练。在深度学习获得成功之前曾被很多人怀疑,相比传统的机器学习理论,深度学习神经网络的参数要比数据大10倍甚至上百倍;

第二,当时的训练过程非常不稳定,论文即使给出了神经网络训练方法,其他研究者也很难把结果复现出来。

这些障碍直到2012年才开始慢慢被解除。

人工智能可以分为感知和认知两大部分,语音、NLP和CV是AI的三大支柱。

今天的分享主要分为三个方面,这也是深度学习引入计算机视觉后,对我们的研究带来的三大变革:

  • 第一,视觉智能是回答了机器如何理解一张照片或者视频,这方面的研究发生了哪些变化?

  • 第二,计算机摄影学研究如何从输入图像生成另一幅我们期望的图像,这个领域发生了哪些变化?

  • 第三,今天的AI计算发生了哪些变化?

                                               视觉智能

计算机视觉研究的几个问题:分类、检测、分割及将前三者用于视频序列的识别工作。

计算机视觉尤其是语义理解核心是如何在计算机中表示一张照片,以至于可以操作它、理解它,用它做各种各样的应用。

2000年后最好的方法是Feature-base,从一张图中抽取很多局部的特征,编码成一个非常长的向量。2010年深度学习后,神经网络给我们带来了更强大的视觉表示方法。

深度神经网络有两个特征:

首先,它是对一张图片做映射,映射到一个高维空间的向量上;它由非常长的非线性变换组成,进来的信号进行多次非线性变换,直到人们得到想要的图像表示。

第二,这个非线性变换中的所有参数都是根据监督信号全自动学习的,不需要人工设计。

神经网络在前面一些层学到了类似边缘、角点或纹理等初级模式,在后面一些层学到越来越多的语义模式例如物体或物体部分。整体学到了分层结构的表示。

从2012年AlexNet,一个8 Layers的神经网络,后来有VGG, 一个19 Layers的神经网络,到了2015年,我们提出了152 Layers的神经网络。随着网络层数的增加与数据的增多,我们第一次在ImageNet数据集上让机器超越了人类。

esNet的核心思想是加入跳层连接,不要学习直接的映射而是学习残差映射,这样非常有利于训练或优化。

ResNet出来后,同行给了各种各样的解释。这是我比较相信的解释:而非ResNet很容易表示0映射,即输入信号和输出很接近0;而ResNet很容易表示Identity映射,即输入信号和输出很接近,直观的理解是当一个网络非常深时,相邻的变化越来越小。这种参数化的形式更利于学习,以至于我们神经网络的优化更容易。

ShuffleNet有V1和V2版本,核心是提出了一套设计原理:比如让卷积更平衡;尽量不要产生分支;降低整体结构的碎片化,避免逐元素操作。

神经网络设计的最新研究方面,目前很热的趋势叫AutoML或者NAS。这是一个很好的网站(automl.org),大家可以在这里看最新的文章。

NAS的问题核心是解一个嵌套的权重训练问题和网络结构搜索问题。

以上是今天的第一部分,说的是视觉智能,我们从Feature的功能化定义,到走向模型的设计,再走到现在的模型搜索。

                                                           计算摄影学

二部分,我想分享以前做了很多年的研究方向——计算摄影学。除了计算智能,计算机视觉中还有一个问题是给输入一个图像,输出是另一个图像。从输入质量比较差的图像(比如模糊、有噪声、光照不好)恢复更好的图像,这就是计算摄影学,也是目前研究很活跃的方向。

计算摄影学以前是怎么做的?这篇(上图)是我们2009年的Dehaze去雾,引入黑通道先验并结合雾的物理产生过程来恢复没有雾的图像,效果非常好,并获得了CVPR 2009最佳论文。如何从一张模糊图像和噪声图像恢复成清晰的图像,这里用了很多传统的反卷积方法。

这是另一问题,被称为图像抠图:左边是输入,右边是输出,目的是把前景精细分离出来。

今天的深度学习的方法是抛弃了以前的做法,不需要做任何显式的假设,通过全卷积的Encoder-Decoder输出想要的图像。

举个例子,关于Image Matting问题,今天的方法是:通过一个多任务的网络,可以直接输出Matting的结果,非常细的毛发都能提取出来。

Matting不光可以做图像合成,它还可以用单摄像头就拍出像单反一样的效果。

AI-ISP可以得到非常好的降噪效果和高质量的图像。

这个方法获得了今年CVPR图像降噪的冠军,同时我们将这个方法应用在OPPO今年最新的旗舰手机OPPO Reno 10倍变焦版的夜摄超画质拍摄技术上。

                                      AI计算

左边传统的冯诺伊曼计算架构,服务了我们很多年。但随着数据的日益增大,出现了“冯诺伊曼瓶颈”,指内存和计算单元之间搬运数据的瓶颈。

右边是今天神经网络做训练、推理的方法,它突破了这个瓶颈。因为神经网络计算非常简单,基本上只包含向量和矩阵之间的操作,可以避免很多判断和分支,用大规模并行的计算方式消除瓶颈。

旷视和北京智源人工智能研究院共同推出的Objects365,第一阶段开源超过1000万的标注框,这是目前世界上最大的检测数据集,不光是数据大,可以真正学到更好的Feature,这是第二方面。

深度学习变革视觉计算总结(CCF-GAIR)的更多相关文章

  1. 深度学习解决NLP问题:语义相似度计算

    在NLP领域,语义相似度的计算一直是个难题:搜索场景下query和Doc的语义相似度.feeds场景下Doc和Doc的语义相似度.机器翻译场景下A句子和B句子的语义相似度等等.本文通过介绍DSSM.C ...

  2. 【深度学习Deep Learning】资料大全

    最近在学深度学习相关的东西,在网上搜集到了一些不错的资料,现在汇总一下: Free Online Books  by Yoshua Bengio, Ian Goodfellow and Aaron C ...

  3. 机器学习(Machine Learning)&深度学习(Deep Learning)资料(Chapter 2)

    ##机器学习(Machine Learning)&深度学习(Deep Learning)资料(Chapter 2)---#####注:机器学习资料[篇目一](https://github.co ...

  4. paper 53 :深度学习(转载)

    转载来源:http://blog.csdn.net/fengbingchun/article/details/50087005 这篇文章主要是为了对深度学习(DeepLearning)有个初步了解,算 ...

  5. 机器学习(Machine Learning)&深度学习(Deep Learning)资料【转】

    转自:机器学习(Machine Learning)&深度学习(Deep Learning)资料 <Brief History of Machine Learning> 介绍:这是一 ...

  6. 机器学习&深度学习经典资料汇总,data.gov.uk大量公开数据

    <Brief History of Machine Learning> 介绍:这是一篇介绍机器学习历史的文章,介绍很全面,从感知机.神经网络.决策树.SVM.Adaboost到随机森林.D ...

  7. 学习笔记DL002:AI、机器学习、表示学习、深度学习,第一次大衰退

    AI早期成就,相对朴素形式化环境,不要求世界知识.如IBM深蓝(Deep Blue)国际象棋系统,1997,击败世界冠军Garry Kasparov(Hsu,2002).国际象棋,简单领域,64个位置 ...

  8. 近200篇机器学习&深度学习资料分享(含各种文档,视频,源码等)(1)

    原文:http://developer.51cto.com/art/201501/464174.htm 编者按:本文收集了百来篇关于机器学习和深度学习的资料,含各种文档,视频,源码等.而且原文也会不定 ...

  9. 机器学习(Machine Learning)&深度学习(Deep Learning)资料汇总 (上)

    转载:http://dataunion.org/8463.html?utm_source=tuicool&utm_medium=referral <Brief History of Ma ...

随机推荐

  1. react快速上手二(使用JSX语法)

    前提: 下载依赖,配置 cnpm i babel-preset-react -D JSX语法的本质: 还是以 React.createElement 的形式来实现的,并没有直接把 用户写的 HTML代 ...

  2. 判断Actiivty是否已经被销毁

    一般会遇到这样的情况:在一个Activity中启动一个异步任务,异步任务中需要返回值,然后被Activity使用,但是当异步任务还未结束时,按下home键,如果这个时候系统内存比较紧张,这个Activ ...

  3. Makefile中代码写在同一行和分开几行写有什么区别?

    在Makefile中,写在同一行的代码就相当于是在Linux中的同一行命令行写的代码一样,是一次性执行的:如程序中如下编写Makefile代码(请注意,两个命令之间应该使用分号“:”来进行分隔): a ...

  4. (备忘)Eclipse设置:背景与字体大小和xml文件中字体大小调整

    Eclipse中代码编辑背景颜色修改: 1.打开window / Preference,弹出Preference面板  2.展开General标签,选中Editors选项,展开.  3.选中 Text ...

  5. Linux特殊权限及ACL权限

    一.SetUID与SGID 只能用于二进制程序,脚本不能设置 执行者需要有该二进制程序的x权限 执行具有SUID权限的二进制程序,那么执行者将具有该二进制程序所有者的权限. 举例来说,/etc/pas ...

  6. sql 分页查询 (每次6行 )

    --  对比 数据 是否 相同 select * from [dbo].[ProjecrInfo] where Project_state='已审核' -- 查询 已经 审核 有多少数据 -- 每次 ...

  7. JAVA-如何打包成jar包

    主线:编译 - 打包 - 运行 准备工作: 1. 手动打可直接执行的jar包 1) 先使用javac编译java文件,得到class文件 2) 新建文件,名字任起,比如可以叫manifest,内容如下 ...

  8. YOLO---Darknet下的学习笔记 V190319

    YOLO---Darknet下的学习笔记 @WP 20190319 很久没有用YOlO算法了,今天又拿过来玩玩.折腾半天,才好运行通的,随手记一下: 一是,终端下的使用.二是,python接口的使用. ...

  9. mysql主从同步监控---邮件告警

    #!/bin/bash #check MySQL_Slave Status #crontab time : MYSQLPORT=`netstat -na|grep "|awk -F[:&qu ...

  10. Go语言关于Type Assertions的疑问

    我在"The Go Programming Language Specification"中读到了关于x.(T)这样的语法可以对变量是否符合某一type或interface进行判断 ...