深度学习元老Yann Lecun详解卷积神经网络(30页干货PPT)

雷锋网注:卷积神经网络(Convolutional Neural Network)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。

Yann LeCun出生在法国,曾在多伦多大学跟随深度学习鼻祖Geoffrey Hinton进行博士后研究。早在20世纪80年代末,Yann LeCun就作为贝尔实验室的研究员提出了卷积网络技术,并展示如何使用它来大幅度提高手写识别能力。上世纪末本世纪初,当神经网络失宠时Yann LeCun是少数几名一直坚持的科学家之一。他于2003年成为纽约大学教授,并从此引领了深度学习的发展,目前任职于Facebook FAIR实验室。本文是Yann LeCun对于卷积神经网络(Convolutional Neural Network)的演讲介绍PPT。

Yann LeCun (信息学与计算机科学)(2015-2016)

ConvNets尝试过程

首个卷积神经网络模型(多伦多大学)(LeCun 88,89)

共320个运用反向传播算法训练的实例

带有步幅的卷积(子样本) 紧密相连的池化过程

在贝尔实验室建立的首个“真实”卷积神经网络模型(LeCun et al 89)

运用反向传播算法进行训练 USPS 编码数字:7300次训练,2000次测试 带有步幅的卷积 紧密相连的池化过程

卷积神经网络(vintage 1990)

滤波-双曲正切——池化——滤波-双曲正切——池化

多重卷积网络

架构

卷积神经网络的结构

卷积神经网络的卷积运算过程大致如下:

输入图像通过三个可训练的滤波器组进行非线性卷积,卷积后在每一层产生特征映射图,然后特征映射图中每组的四个像素在进行求和、加权值、加偏置,在此过程中这些像素在池化层被池化,最终得到输出值。

卷积神经网络的整体结构:

归一化——滤波器组——非线性计算——池化

  • 归一化:图像白化处理的变形(可选择性)

减法运算:平均去除,高通滤波器进行滤波处理 除法运算:局部对比规范化,方差归一化

  • 滤波器组:维度拓展,映射
  • 非线性:稀疏化,饱和,侧抑制

精馏,成分明智收缩,双曲正切等

  • 池化: 空间或特征类型的聚合

最大化,Lp范数,对数概率

LeNet5

卷积神经网络简化模型 MNIST (LeCun 1998)

阶段1:滤波器组——挤压——最大池化

阶段2:滤波器组——挤压——最大池化

阶段3:标准2层 MLP

多特征识别(Matan et al 1992)

每一层都是一个卷积层

单一特征识别器 ——SDNN

滑动窗口卷积神经网络+加权有限状态机

应用

卷积神经网络的应用范围

  • 信号以(多维度)数组的形式出现
  • 具有很强局部关联性的信号
  • 特征能够在任何位置出现的信号
  • 目标物不因翻译或扭曲而变化的信号
  • 一维卷积神经网络:时序信号,文本

文本分类 音乐体裁分类 用于语音识别的声学模型 时间序列预测

  • 二维卷积神经网络:图像,时间-频率表征(语音与音频)

物体检测,定位,识别

  • 三维卷积神经网络:视频,立体图像,层析成像

视频识别/理解 生物医学图像分析 高光谱图像分析

人脸检测(Vaillant et al.93, 94)

  • 应用于大图像检测的卷积神经网络
  • 多尺度热量图
  • 对候选图像的非最大抑制
  • 对256X256图像进行6秒稀疏

人脸检测的艺术结果状态

卷积神经网络在生物图像切割方面的应用

  • 生物图像切割(Ning et al. IEEE-TIP 2005)
  • 运用卷积神经网络在大背景下进行像素标记
  • 卷积神经网络拥有一个像素窗口,标记中央像素
  • 运用一个有条件的随机域进行清除
  • 3D版连接体(Jain et al.2007)

场景解析/标记

场景解析/标记:多尺度卷积神经网络结构

  • 每一个输出值对应一个大的输入背景

46X46全像素窗口;92X92 1/2像素窗口;182X182 1/4像素窗口 [7X7卷积运算]->[2X2池化] ->[7X7卷积运算] ->[2X2池化] ->[7X7卷积运算] -> 监督式训练全标记图像

方法:通过超级像素区域选出主要部分

输入图像——超像素边界参数——超像素边界——通过超像素进行主要部分投票处理——类别与区域边界对齐 多尺度卷积网络——卷积网络特征(每个像素中d=768)卷积分类——“soft”分类得分

场景分析/标记

  • 无前期处理
  • 逐帧进行
  • 在Vittex-6 FPGA硬件上以50ms一帧运行卷积网络

但是在以太网上传输特征限制了系统的表现

针对远程自适应机器人视觉的卷积网络(DARPA LAGR项目2005-2008)

输入图像 标记 分类输出

非常深的卷积网络架构

小内核,较少二次抽样(小部分二次抽样)

VGG GoogleNet Resnet

使用卷积网络进行对象检测和定位

分类+定位:多重移动窗口

  • 将带多重滑动窗口的卷积网络应用到图像上
  • 重要提示:将卷积网络应用到一张图片上非常便宜

只要计算整个图像的卷积并把全连接层复制

分类+定位:滑动窗口+限定框回归

  • 将带多重滑动窗口的卷积网络应用到图像上
  • 对每个窗口,预测一个类别和限定框参数

即便目标不是完全包含在浏览窗口中,卷积网络也能猜测它认为这个目标是什么。

Deep Face

  • Taigman等 CVPR 2014

队列 卷积网络 度量学习

  • Facebook开发的自动标记方法

每天8亿张图片

使用卷积网络进行姿势预估和属性恢复

深度属性模型的姿势对齐网络

Zhang等 CVPR 2014 (Facebook AI Research)

人物检测和姿势预估

Tompson,Goroshin,Jain,Lecun,Bregler等 arxiv(2014)

监督卷积网络画图

  • 使用卷积网络来画图
  • Dosovitskyi等 arxiv (1411:5928)

监督卷积网络画图

  • 生成椅子
  • 特征空间对椅子进行计算

全局(端对端)学习:能量模型

输入——卷积网络(或其他深度架构)——能量模块(潜在变量、输出)——能量

  • 使得系统中每个模块都能进行训练。
  • 所有模块都是同时训练的,这样就能优化全局的损失函数。
  • 包括特征提取器,识别器,以及前后处理程序(图像模型)。
  • 问题:反向传播在图像模型中倾斜

深度卷积网络(还有其他深度神经网络)

  • 训练样本:(Xi,Yi)k=1 到 k
  • 对象函数(边缘型损失= ReLU)

题图来自newscientist.com

via Yann Lecun

原文发布于微信公众号 - AI科技评论(aitechtalk)

原文发表时间:2016-08-23

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏java闲聊

JDK1.8 ArrayList 源码解析

当运行 ArrayList<Integer> list = new ArrayList<>() ; ,因为它没有指定初始容量,所以它调用的是它的无参构造

1192
来自专栏xingoo, 一个梦想做发明家的程序员

AOV网络拓扑排序

这个算法,主要是为输出一个无环图的拓扑序列 算法思想: 主要依赖一个栈,用来存放没有入度的节点,每次读取栈顶元素,并将栈顶元素的后继节点入度减一,如果再次出现入...

1965
来自专栏ml

朴素贝叶斯分类器(离散型)算法实现(一)

1. 贝叶斯定理:        (1)   P(A^B) = P(A|B)P(B) = P(B|A)P(A)   由(1)得    P(A|B) = P(B|...

3447
来自专栏拭心的安卓进阶之路

Java 集合深入理解(12):古老的 Vector

今天刮台风,躲屋里看看 Vector ! 都说 Vector 是线程安全的 ArrayList,今天来根据源码看看是不是这么相...

2447
来自专栏MelonTeam专栏

ArrayList源码完全分析

导语: 这里分析的ArrayList是使用的JDK1.8里面的类,AndroidSDK里面的ArrayList基本和这个一样。 分析的方式是逐个API进行解析 ...

4499
来自专栏学海无涯

Android开发之奇怪的Fragment

说起Android中的Fragment,在使用的时候稍加注意,就会发现存在以下两种: v4包中的兼容Fragment,android.support.v4.ap...

3165
来自专栏Phoenix的Android之旅

Java 集合 Vector

List有三种实现,ArrayList, LinkedList, Vector, 它们的区别在于, ArrayList是非线程安全的, Vector则是线程安全...

672
来自专栏计算机视觉与深度学习基础

Leetcode 114 Flatten Binary Tree to Linked List

Given a binary tree, flatten it to a linked list in-place. For example, Given...

1948
来自专栏xingoo, 一个梦想做发明家的程序员

AOE关键路径

这个算法来求关键路径,其实就是利用拓扑排序,首先求出,每个节点最晚开始时间,再倒退求每个最早开始的时间。 从而算出活动最早开始的时间和最晚开始的时间,如果这两个...

2527
来自专栏xingoo, 一个梦想做发明家的程序员

Spark踩坑——java.lang.AbstractMethodError

百度了一下说是版本不一致导致的。于是重新检查各个jar包,发现spark-sql-kafka的版本是2.2,而spark的版本是2.3,修改spark-sql-...

1200

扫码关注云+社区