专栏首页用户5033944的专栏一篇文章“简单”认识《卷积神经网络》
原创

一篇文章“简单”认识《卷积神经网络》

一、概念了解

前言

卷积神经网络(Convolutional Neural Network, CNN),对于图像处理有出色表现,在计算机视觉中得到了广泛的应用。

卷积神经网络通过卷积层池化层的叠加实现对输入数据的特征提取,最后连接全连接层实现分类。

基于什么提出卷积神经网络?

动物视觉系统对外界的感知是:

  • 视觉皮层的每个神经元只响应某些特定区域的刺激(感受野)
  • 从局部到全局(信息分层处理机制)

卷积神经网络

每个神经元只需对 局部图像 进行感知;

在更高层将局部的信息综合起来,得到全局信息;

卷积(Convolution)

每一个卷积核,相对于一个滤波器;它会筛选合适的信息,过滤不匹配的信息;卷积层能提取特征,比如:提取一幅图像的特征。

比如,卷积核a,它是用来提取出图片的形状信息;卷积核b,它是用来提取出图片的颜色信息;

池化 (Pooling)

池化操作是降采样(Subsampling)中的一种;为了描述大的图像,可以对不同位置的特征进行聚合统计;

通常卷积层 后面 接着一个池化层,池化层能对卷积层提取到特征,进行降低特征图参数量,同时保留图像显著特征;池化层还能降低过拟合、扩大感知野和解决图像不变性。

池化一般分为最大池化平均池化;采用图像区域上某个特征的平均值或最大值,维度低且有效(不容易过拟合)。

全连接层

全连接层可以用来将最后得到的特征(卷积层 与 池化层 提取到的特征),映射到线性可分的空间,在整个卷积神经网络中起到“分类器”的作用。

优势

卷积神经网络十分合适用于大尺寸图像的学习;

  • 训练参数少(卷积操作、权值共享、池化操作 减少了训练的参数)
  • 平移不变性(图像被平移,卷积依然保证能检测到它的特征)
  • 模式具有空间层次(当浅层的神经元学习到较小的局部模式后,后面的卷积层会将前一层学习到的模式组合成更高的模式)

二、进一步理解

前言

卷积神经网络(Convolutional Neural Network, CNN),是一种前馈神经网络,对于图像处理有出色表现,在计算机视觉中得到了广泛的应用。

卷积神经网络 主要包括卷积层(convolution layer)池化层(pooling layer)全连接层(fully connected layer)。

卷积神经网络通过卷积层与池化层的叠加实现对输入数据的特征提取,最后连接全连接层实现分类

卷积神经网络通过卷积操作池化操作学习输入特征的局部模式;随着网络层数的增加,卷积神经网络对这些局部模式不断地进行组合、抽象,最终学习到高级特征。

卷积神经网络 能提取图像的特征,避免了对图像的复杂前期预处理,而可以直接输入图像原始图像。即:卷积层+池化层 用来提取特征;全连接层用来分类等。

基于什么提出卷积神经网络?

动物视觉系统对外界的感知是:

  • 视觉皮层的每个神经元只响应某些特定区域的刺激(感受野)
  • 从局部到全局(信息分层处理机制)

一般认为人对外界的认知是从局部到全局,图像像素点的空间联系也是局部的像素联系较为紧密,而距离较远的像素相关性则较弱。

卷积神经网络

每个神经元只需对 局部图像 进行感知;

在更高层将局部的信息综合起来,得到全局信息;

卷积(Convolution)

简介

卷积滤波,每一个卷积核,相对于一个滤波器;它会筛选合适的信息,过滤不匹配的信息。

比如,卷积核a,它是用来提取出图片的形状信息;卷积核b,它是用来提取出图片的颜色信息;

一个卷积核提取到的特征对应一个通道(上图:二维矩阵),不同卷积核得到的特征进行堆叠,形成具有多个不同通道的特征立方体。

卷积操作

几个重要的参数

  • 卷积和尺寸:感受野的大小,通常指卷积核的长和宽;比如:3*3,5*5的卷积核
  • 卷积核步长:卷积核在长度方向核宽度方向上每次一点的距离。比如:步长为1,每次移动一格;步长为3,每次移动三格;
  • 卷积核数量:卷积核的数量对应卷积核输出特征的深度,每个卷积核的输出为一个通道,多个卷积核的输出进行堆叠,形成一个特征立方体。比如:一共有4个不同的卷积核,那么形成4个平面组成的立方体。

图像化

卷积和尺寸:感受野的大小,通常指卷积核的长和宽;比如:3*3,5*5的卷积核

卷积核步长:卷积核在长度方向核宽度方向上每次一点的距离。比如:步长为1,每次移动一格;步长为3,每次移动三格;移动方向,通常是从左到右:

卷积核数量:卷积核的数量对应卷积核输出特征的深度,每个卷积核的输出为一个通道,多个卷积核的输出进行堆叠,形成一个特征立方体。比如:一共有4个不同的卷积核,那么形成4个通道(特征平面)组成的立方体。

多层卷积层

通过不同的卷积核提取图像的局部特征信息。

上图所示:有6个不同的卷积核,分别扫描提取同一幅图像的特征信息。

在多层卷积层中,能看到较低(靠前)的卷积层提取图像边缘信息,中间的卷积层提取图像的局部信息,较高(越往后)的卷积层能提取图像全局信息。

随着网络层数的增加,卷积神经网络对这些局部模式不断地进行组合、抽象,最终学习到高级特征。

下面分别看看每层卷积层提取一幅图像的特征后的效果:

第一层 卷积层


第二层 卷积层


第三层 卷积层


第四层 卷积层


第五层 卷积层

五层卷积层 提取特征的效果:

在多层卷积层中,能看到较低(靠前)的卷积层提取图像边缘信息,中间的卷积层提取图像的局部信息,较高(越往后)的卷积层能提取图像全局信息。

随着网络层数的增加,卷积神经网络对这些局部模式不断地进行组合、抽象,最终学习到高级特征。

池化(Pooling)

池化操作是降采样(Subsampling)中的一种;为了描述大的图像,可以对不同位置的特征进行聚合统计;

左图通过池化后得到右图,右图是左图的1/4的大小,能看到特征图参数量降低了,同时保留图像显著特征。

池化一般分为最大池化和平均池化。

  • 最大池化:采用图像区域上某个特征的最大值,来代替这个图像区域的特征。
  • 平均池化:采用图像区域上某个特征的平均值,来代替这个图像区域的特征。

采用图像区域上某个特征的平均值或最大值,维度低且有效(不容易过拟合)。

例如:最大池化

在橙色区域,提取最大值5;浅绿色区域提取最大值7;蓝色区域提取最大值4;灰色区域提取最大值8;形成最大池化操作的输出值分别为:5、7、4、8

池化作用:

降低特征图参数量、保留图像显著特征、降低过拟合、扩大感知野和解决图像不变性。

全连接层

全连接层可以用来将最后得到的特征映射到线性可分的空间,在整个卷积神经网络中起到“分类器”的作用。

特征维度变化

卷积神经网络中的卷积层核池化层会改变输入特征的维度;

CNN核心思想——参数共享

同一图像在不同位置、不同角度的旋转、不同大小、不同光照等条件下,都会别识别为同一物体,这一特点称为不变性。

因此可以用参数相同的卷积核去扫描整幅图像;这能掘金图像位置不变性的问题;减少计算和内存需求。

优势

卷积神经网络十分合适用于大尺寸图像的学习;

  • 训练参数少(卷积操作、权值共享、池化操作 减少了训练的参数)
  • 平移不变性(图像被平移,卷积依然保证能检测到它的特征)
  • 模式具有空间层次(当浅层的神经元学习到较小的局部模式后,后面的卷积层会将前一层学习到的模式组合成更高的模式)

经典的卷积神经网络

LeNet模型

LeNet-5 输入的二维图像,先经过两次的( 卷积层->池化层 ),再经过全连接层,最后使用softmax分类作为输出层。

LeNet-5 是用于手写体字符识别的卷积神经网络。

输入:32*32的手写字体图片,这些手写字体包含0~9数字,也就是相当于10个类别的图片

输出:分类结果,0~9之间的一个数

VGGNet模型

VGGNet模型是2014年的 ImageNet分类的亚军,物体检测冠军,使用了更小的卷积核(3x3),并且连续多层组合使用。VGG Net 经常被用来提取图像特征。

该模型有多种网络架构,较为常用的是VGG16和VGG19。

VGG由5层卷积层、3层全连接层、softmax输出层构成,层与层之间使用max-pooling(最大化池)分开,所有隐层的激活单元都采用ReLU函数。

GoogLeNet模型

GoogLeNet模型是2014年的ImageNet分类的冠军, GoogleNet提出了一种 Inception结构,该结构可以将不同的卷积层通过并联的方式结合在一起。 Inception历经了1、V2、3、V4等多个版本的发展,不断趋于完善。

保持网络结构的稀疏性,又能利用密集矩阵的高计算性能。

卷积神经网络应用

  • 图像分类
  • 目标检测
  • 目标跟踪
  • 语义分割
  • 实例分割

参考:

1)西安电子科技大学《人工智能导论》课程;

2)北京交通大学《图像处理与机器学习》课程;

3)华为云学院《 AI技术领域课程--深度学习》课程;

4)http://yann.lecun.com/exdb/lenet/index.html

5)https://zhuanlan.zhihu.com/p/43143470

6)https://my.oschina.net/u/876354/blog/1632862

7)https://www.cnblogs.com/ai-learning-blogs/p/11110391.html

8)https://leonardoaraujosantos.gitbook.io/artificial-inteligence/machine_learning/deep_learning/googlenet

9)Visualizing and Understanding Convolutional Networks Matthew D. Zeiler and Rob Fergus

如有错误,欢迎指出;欢迎交流~

声明:本篇文章,未经许可,谢绝转载。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 一文读懂卷积神经网络CNN

    来源:机器学习算法与自然语言处理 作者:白雪峰 本文为图文结合,建议阅读10分钟。 本文为大家解读如何简单明了的解释卷积,并且分享了学习中的一些方法案例。 首先...

    企鹅号小编
  • 一文读懂卷积神经网络(CNN)

    先明确一点就是,Deep Learning是全部深度学习算法的总称,CNN是深度学习算法在图像处理领域的一个应用。

    昱良
  • 使用一维数据构造简单卷积神经网络

    神经网络对于一维数据非常重要,时序数据集、信号处理数据集和一些文本嵌入数据集都是一维数据,会频繁的使用到神经网络。我们在此利用一组一维数据构造卷积层-最大池化层...

    演化计算与人工智能
  • 基于tensorflow实现简单卷积神经网络Lenet5

    徐飞机
  • 基于tensorflow实现简单卷积神经网络Lenet5

    徐飞机
  • 入门 | 一文看懂卷积神经网络

    机器之心
  • 卷积神经网络处理图像识别(一)

    在全连接神经网络中,同一层中的节点(即神经元)组织成一列,每相邻两层之间的节点都有边相连, 上一层的输出作为下一层的输入。

    用户6021899
  • 科普:CNN论文介绍的开篇」神经网络与卷积神经网络

    最开始接触这个名词的时候,很长一段时间都将它看做一个高深莫测的神奇工具。竟然和大脑神经都有关系的算法,肯定很厉害!

    AI深度学习求索
  • 一步步提高手写数字的识别率(3)

    在前面的两篇文章《一步步提高手写数字的识别率(1)》和《一步步提高手写数字的识别率(2)》中,我们分别介绍了使用Softmax回归和神经网络来实现手写数字识别,...

    云水木石
  • 卷积神经网络学习路线(六)| 经典网络回顾之LeNet

    开篇的这张图代表ILSVRC历年的Top-5错误率,我会按照以上经典网络出现的时间顺序对他们进行介绍,同时穿插一些其他的经典CNN网络。

    BBuf
  • Deep Learning Book 中文第九章 卷积神经网络CNN

    用户1908973
  • 干货 | 一文带你读懂DeepMind新论文,关联推理为什么是智能最重要的特征

    大数据文摘
  • 第五章(1.5)深度学习——卷积神经网络简介

    卷积神经网络(Convolutional Neural Network, CNN)是一种前馈神经网络, 在计算机视觉等领域被广泛应用. 本文将简单介绍其原理并分...

    两只橙
  • GNN 系列(二):图神经网络的“开山之作”GCN模型

    这是我们介绍图神经网络的第一篇文章,取自Kipf et al. 2017,文章中提出的模型叫Graph Convolutional Network(GCN),个...

    Coggle数据科学
  • 深度学习入门笔记系列 ( 八 ) ——基于 tensorflow 的手写数字的识别(进阶)

    本系列将分为 8 篇 。本次为第 8 篇 ,基于 tensorflow ,利用卷积神经网络 CNN 进行手写数字识别 。

    小小詹同学
  • GNN 系列:图神经网络的“开山之作”CGN模型

    考虑图(例如引文网络)中节点(例如文档)的分类问题,通常该图中只有一小部分节点有标签。这类问题可以划分到基于图的半监督学习问题中。为了对节点进行分类,首先我们可...

    Datawhale
  • 福利赠书!《图解深度学习与神经网络:从张量到TensorFlow实现》

    作为一个三观奇正,有志于分享的公众号,奇点在每周五都有“赠书福利”环节,把更多的好书介绍给读者。关注并转发本篇文章,然后将截图发至后台就可以参与抽奖,每周一奇点...

    刀刀老高
  • 干货 | 用深度学习来解析梦境中出现的物体

    这篇文章主要的工作算是机器学习和神经科学的结合工作,需要读者在这两个方向有一定的基础。 另有科普版本,结构更加清晰,不过删减了很多内容。科普版本如下: 用深度学...

    AI科技评论
  • 深度学习领域引用量前20篇论文简介

    深度学习是机器学习和统计学交叉领域的一个子集,在过去的几年里得到快速的发展。强大的开源工具以及大数据爆发使其取得令人惊讶的突破进展。本文根据微软学术(acade...

    用户3578099

扫码关注云+社区

领取腾讯云代金券