卷积神经网络的最佳解释!
CNN由由可学习权重和偏置的神经元组成。每个神经元接收多个输入,对它们进行加权求和,将其传递给一个激活函数并用一个输出作为响应。整个网络有一个损失函数,在神经网络开发过程中的技巧和窍门仍然适用于CNN。很简单,对吧?
那么,卷积神经网络与神经网络有什么不同呢?
和神经网络输入不同,这里的输入是一个多通道图像(在这种情况下是3通道,如RGB)。
在我们深入之前,让我们先了解一下卷积的含义。
卷积
我们用5 * 5 * 3的滤波器滑过整个图像,并在滑动过程中与滑过的图像部分点积。
每个点积的结果都是标量。
那么,当我们将整个图像与滤波器进行卷积时会发生什么?
卷积结果的大小28是怎么来的留给读者思考。(提示:有28 * 28个独特的位置,滤波器可以放在图像上)
现在回到CNN
卷积层是卷积神经网络的重要部分。
卷积层包含一组独立的滤波器(在所示的例子中是6个)。每个滤波器都与图像独立卷积,最终形成6个形状为28 * 28 * 1的特征图。
假设我们有多个卷积层。然后会发生什么?
所有这些滤波器都是随机初始化的,并在网络训练过程中学习参数。
下面是训练好的网络的例子。
看看第一层中的滤波器(在这是5 * 5 * 3的滤波器)。通过反向传播,逐渐调整成为彩色碎片和边缘的斑点。当层次变深时,滤波器与先前一层的输出做点积。所以,他们正在用较小的彩色碎片或边缘制作出更大的碎片
对于特定的特征图,每个神经元仅与输入图像的一小块连接,并且所有神经元具有相同的连接权重,这就是CNN与神经网络的最大区别。
参数共享和局部连接
参数共享指的是特定特征图中所有神经元的权重共享。
局部连接是每个神经只与输入图像的一个子集连接(不同于全连接的神经网络)
这有助于减少整个系统中的参数数量,并使计算更加高效。
池化层
池化层是CNN的另一个构建块。
其功能是逐步缩小表示空间的大小,以减少网络中的参数和计算量。池化层独立地在每个特征映射上工作。
最常用的方法是最大池化(max pooling)。
CNN的典型架构
我们已经介绍了卷积层(由CONV表示)和池化层(由POOL表示)。
RELU只是一个应用于神经单元的非线性激活函数。
FC是CNN末端的全连接层。全连接层中的神经元与前一层中的所有激活都有完全连接,如常规神经网络中所见,并以相似的方式工作。
CNN架构有许多变化,但正如我之前提到的,基本概念保持不变。
原文发布时间为:2018-08-12
本文来自云栖社区合作伙伴“机器学习算法与Python学习”,了解相关信息可以关注“机器学习算法与Python学习”。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Coding and Paper Letter(十一)
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ESA_DSQ/article/details/81631129 接上文的这一段时间的资源整理,这一篇专门针对Coding部分。 Coding: 1.GeoTrellis框架的Spark Python库。分布式地理处理环境。 geopyspark 2.GEE(Google Earth Engine),GEE平台支持的简单命令行(基于Python)。 geeup 3.R语言包scales,用于转换ggplot2绘图所需的数据。 scales 4.R语言包rosm,R中开源的Open Street Map瓦片数据包。可以绘制OSM数据。 rosm 5.R语言包GeoMLBStadiums,ggplot2拓展包,定义了一些ggplot2里的geom对象来绘制MLB体育场、 GeoMLBStadiums 6.R语言包landscapemetrics,R包,R中的Fragsstats。 landscapemetrics 7.2015年论文提出的Stochastic antecedent modell...
- 下一篇
古灵精怪的python——地址,浅拷贝与身份运算符
首先抛出一个问题,吸引读者的阅读兴趣(如果您觉得这个不是问题,那么这篇文章不适合您:) 请看如下代码: >>> a = 3 >>> b = 3 >>> a == b True >>> a is b True >>> b = a # 这没问题 >>> a = 3 >>> a == b # 这看起来也很合理 True >>> a is b True >>> a is b >>> a = (2,3) >>> b = (2,3) >>> b = a False # ???why? >>> a == b
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Windows10,CentOS7,CentOS8安装Nodejs环境
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8安装Docker,最新的服务器搭配容器使用
- 设置Eclipse缩进为4个空格,增强代码规范
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题