卷积神经网络CNN基本原理

卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(deep learning)的代表算法之一,擅长处理图像特别是图像识别等相关机器学习问题。

卷积神经网络的基本结构大致包括:卷积层、激活函数、池化层、全连接层、输出层等。

卷积层(Convolutional layer),卷积神经网路中每层卷积层由若干卷积单元组成,每个卷积单元的参数都是通过反向传播算法优化得到的。卷积运算的目的是提取输入的不同特征,第一层卷积层可能只能提取一些低级的特征如边缘、线条和角等层级,更多层的网络能从低级特征中迭代提取更复杂的特征。
激活函数,即线性整流层(Rectified Linear Units layer, ReLU layer),这一层神经的活性化函数(Activation function)使用线性整流(Rectified Linear Units, ReLU)
池化层(Pooling layer),通常在卷积层之后会得到维度很大的特征,将特征切成几个区域,取其最大值或平均值,得到新的、维度较小的特征。
全连接层( Fully-Connected layer), 把所有局部特征结合变成全局特征,用来计算最后每一类的得分。

卷积层

二维卷积运算:给定二维的图像I作为输入,二维卷积核K,卷积运算可表示为 :

卷积核需要进行上下翻转和左右反转

卷积实际上就是互相关

局部感知(Local Connectivity)

普通神经网络把输入层和隐含层进行“全连接(Full Connected)”的设计。从计算的角度来讲,相对较小的图像从整幅图像中计算特征是可行的。但是,如果是更大的图像,要通过这种全联通网络的这种方法来学习整幅图像上的特征,从计算角度而言,将变得非常耗时。

卷积层解决这类问题的一种简单方法是对隐含单元和输入单元间的连接加以限制:每个隐含单元仅仅只能连接输入单元的一部分。例如,每个隐含单元仅仅连接输入图像的一小片相邻区域。(对于不同于图像输入的输入形式,也会有一些特别的连接到单隐含层的输入信号“连接区域”选择方式。如音频作为一种信号输入方式,一个隐含单元所需要连接的输入单元的子集,可能仅仅是一段音频输入所对应的某个时间段上的信号。)

空间排列(Spatial arrangement)

一个输出单元的大小有以下三个量控制:depth, stride 和 zero-padding

深度(depth) : 顾名思义,它控制输出单元的深度,也就是filter的个数,连接同一块区域的神经元个数。又名:depth column
步长(stride):它控制在同一深度的相邻两个隐含单元,与他们相连接的输入区域的距离。如果步长很小(比如 stride = 1)的话,相邻隐含单元的输入区域的重叠部分会很多; 步长很大则重叠区域变少。

 卷积的模式:

数据填充,即补零(zero-padding) : 我们可以通过在输入单元周围补零来改变输入单元整体大小,从而控制输出单元的空间大小。如果我们有一个

卷积神经网络CNN基本原理相关推荐

  1. 卷积神经网络 (CNN) 基本原理和公式

    卷积神经网络是一种前馈型神经网络, 受生物自然视觉认知机制启发而来的. 现在, CNN 已经成为众多科学领域的研究热点之一, 特别是在模式分类领域, 由于该网络避免了对图像的复杂前期预处理, 可以直接 ...

  2. 一文看懂卷积神经网络-CNN(基本原理+独特价值+实际应用)

    http://blog.itpub.net/29829936/viewspace-2648775/ 2019-06-25 21:31:18 卷积神经网络 – CNN 最擅长的就是图片的处理.它受到人类 ...

  3. 【深度学习系列】卷积神经网络CNN原理详解(一)——基本原理(1)

    上篇文章我们给出了用paddlepaddle来做手写数字识别的示例,并对网络结构进行到了调整,提高了识别的精度.有的同学表示不是很理解原理,为什么传统的机器学习算法,简单的神经网络(如多层感知机)都可 ...

  4. 卷积神经网络CNN原理详解(一)——基本原理

    卷积神经网络CNN原理详解(一)--基本原理 转载过来为了自己以后学习方便,大家请看原文章 为什么要用神经网络? 特征提取的高效性. 大家可能会疑惑,对于同一个分类任务,我们可以用机器学习的算法来做, ...

  5. python卷积神经网络cnn的训练算法_【深度学习系列】卷积神经网络CNN原理详解(一)——基本原理...

    上篇文章我们给出了用paddlepaddle来做手写数字识别的示例,并对网络结构进行到了调整,提高了识别的精度.有的同学表示不是很理解原理,为什么传统的机器学习算法,简单的神经网络(如多层感知机)都可 ...

  6. 水很深的深度学习(四)——卷积神经网络CNN

    参考资料: 1.水很深的深度学习-CNN 2.卷积神经网络超详细介绍_呆呆的猫的博客-CSDN博客_卷积神经网络 3.大话卷积神经网络CNN(干货满满)-CSDN博客 卷积神经网络的概念 计算机视觉和 ...

  7. 卷积神经网络 CNN 简述

    文章目录 所解决的问题 需要处理的数据量太大 很难保留图像特征 基本原理 卷积层 -- 提取图像特征 池化层 -- 数据降维(避免过拟合) 全连接层 -- 输出结果 实际应用 图像分类.检索 目标检测 ...

  8. 【人工智能实验】卷积神经网络CNN框架的实现与应用-手写数字识别

    目录 实验六 卷积神经网络CNN框架的实现与应用 一.实验目的 二.实验原理 三.实验结果 1.调整学习率.epochs以及bacth_size这三个参数,分别观察参数的变化对于实验结果的影响. 2. ...

  9. 卷积神经网络 – CNN简介

    概念 人工神经网络(Artificial Neural Networks,ANN)是一种模拟生物神经系统的结构和行为,进行分布式并行信息处理的算法数学模型.ANN通过调整内部神经元与神经元之间的权重关 ...

最新文章

  1. 检索、问答、情感分析产业范例分享,代码模型全开源太香了!
  2. JDBC常见面试题集锦(一)
  3. 40款奇特的名片设计,吸引大家的眼球《上篇》
  4. Yii 1.1.4发布,高性能的PHP框架
  5. Modules(最小树形图)
  6. PyTorch | Tensor、Numpy、Variable之间的转换
  7. atitit.Oracle 9 10 11 12新特性attilax总结
  8. 学习手记(2020/8/19~2021/3/19)
  9. cli dll打包 vue_vue-cli3使用 DllPlugin 实现预编译提升构建速度
  10. 腾讯这套SpringMVC面试题你懂多少(面试题和答案)
  11. C++动态绑定和静态绑定
  12. VB6(Fast Report Studio 4.6.80)
  13. Hibernate之HQL查询
  14. 左手补贴右手社交 杀入直播红海的拼多多会有机会吗?
  15. DSA数字签名原理及JAVA实现
  16. 电脑远程软件TeamViewer
  17. 携手Wi-SUN联盟,利尔达助Wi-SUN落地生花
  18. 买手机是不是主要看处理器?
  19. Ecshop系统二次开发教程及流程演示
  20. What are Kernels in Machine Learning and SVM?

热门文章

  1. 数据分析系列之Python数据分析简介
  2. HP-UX实战:扩展HP小机rx8640上的swap和dump空间
  3. 微信小程序中css常用属性
  4. Label mx制作出的小尺寸条码如何保证被识别扫描
  5. English_tool
  6. ASO优化之如何维护关键词群
  7. 高薪程序员面试题精讲系列96之分库分表了解吗?你项目中用到过吗?怎么用的?
  8. jQuery库——引入CDN
  9. BIM Revit2018软件安装激活教程
  10. P2P下载器(Linux下C++项目实战)