IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 传统CNN的概念理解 -> 正文阅读

[人工智能]传统CNN的概念理解

CNN结构可视化的神器

在这里插入图片描述
没错,看到这个网站了吗。有了这个网站,我们可以把CNN的结构很好的可视化。
基本上可以解释你对CNN的 feature map和卷积核filter的所有疑惑。

https://www.cs.ryerson.ca/~aharley/vis/conv/
不多说了,上面就是这个可视化工具的网址。这个可视化工具的CNN框架是LeNet-5。
来,我们看一下LeNet-5的网络结构。正好啊,这个网络的输入是单通道灰度图为例的。
在这里插入图片描述

2 CNN的一些专用名词

feature map、卷积核、卷积核个数、filter、channel的概念解释
channel RGB图像有三个channel,灰度图有一个channel

2.1 卷积核的理解

卷积核在有的文档里也称为过滤器(filter)。
关于卷积核,大家最关系的就是卷积核的尺寸。一般来讲,卷积核的33D或者55D等,前面的33或者55就是卷积核的尺寸,这个是随便大家设计的,甚至11的卷积核都可以。设置11的卷积核主要作用是为扩大下一层feature map的数量。
大家更关注的是卷积核的第三个参数D,一般来讲我们定意思D为卷积核的深度。在一些博客中,大家都会这么理解:如果输入图像是三通道的RGB图像,那么第一批卷积核的深度D就是3.。如果输入图像是灰度图,第一批卷积核的深度就是1.。
除此之外,大家更关注的就是卷积核的数量问题了,因为卷积核的数量直接影响下一层feature map的数量。即卷积核的数量=下一层feature map的数量。
以LeNet-5的第一层为例,它的第一批卷积核有6个,所以处理的feature map的数量就是6.。如下图所示:

在这里插入图片描述
在这里插入图片描述
到这里,大家也就可以理解卷积核数量是如何使用了。换句话说就是,你在下一层想有多少featuer map,那么你只需要使用多少个卷积核就可以了。
好了,我们继续讨论卷积核的深度,因为这个很重要。
其实卷积核的深度也是随便大家如何设置的。即使是在输入层的第一层输入的是RGB图像,大家也可以设置深度为1的卷积核。为了可以这样设计呢?首先,大家把RGB图像的三个通道的图像层看成是三个featuer map就可以了。这个时候,有时候我们目标的一些颜色信息。比如我们曾经写的一个关于零样本识别的论文。我们通过提取目标的语义信息判断目标的名称。比如身上五颜六色的鸟,我们需要提取他们的颜色,因此,我们在每个通道逐个使用 卷积核提取特征。
还有一点就是,在其它层的卷积核,以LeNet-5为例,在第二个卷积层时,作者想同时提取多个feature map的特征。因此他们设置卷积核的深度为4,图下图所示“
在这里插入图片描述
所以,说到这里。对卷积核的设置基本是可以根据大家的需求随意设置。

2.2 feature map

所谓的feature map,就是经过卷积核或者说是filtr处理后的图像。
feather map 是怎么生成的?
输入层:在输入层,如果是灰度图片,那就只有一个feature map;如果是彩色图片,一般就是3个feature map(红绿蓝)。
其它层:层与层之间会有若干个卷积核(kernel)(也称为过滤器),上一层每个feature map跟每个卷积核做卷积,都会产生下一层的一个feature map,有N个卷积核,下层就会产生N个feather map。

3 LeNet-5的网络结构

大家可以根据下面的文字介绍,逐层或者逐个神经元的去看那个网页。

3.1 C1层是一个卷积层

输入图片:32*32

卷积核大小:5*5

卷积核种类:6

输出featuremap大小:28*28 (32-5+1)

神经元数量:28286

可训练参数:(5*5+1)6(每个滤波器55=25个unit参数和一个bias参数,一共6个滤波器)

连接数:(55+1)62828

3.2 S2层是一个下采样层

输入:28*28

采样区域:2*2

采样方式:4个输入相加,乘以一个可训练参数,再加上一个可训练偏置。结果通过sigmoid

采样种类:6

输出featureMap大小:14*14(28/2)

神经元数量:14146

可训练参数:2*6(和的权+偏置)

连接数:(22+1)61414

S2中每个特征图的大小是C1中特征图大小的1/4

3.3 C3层也是一个卷积层

输入:S2中所有6个或者几个特征map组合

卷积核大小:5*5

卷积核种类:16

输出featureMap大小:10*10

C3中的每个特征map是连接到S2中的所有6个或者几个特征map的,表示本层的特征map是上一层提取到的特征map的不同组合

存在的一个方式是:C3的前6个特征图以S2中3个相邻的特征图子集为输入。接下来6个特征图以S2中4个相邻特征图子集为输入。然后的3个以不相邻的4个特征图子集为输入。最后一个将S2中所有特征图为输入。

则:可训练参数:6*(325+1)+6(425+1)+3(425+1)+(256+1)=1516

连接数:10101516=151600

3.4 S4层是一个下采样层

输入:10*10

采样区域:2*2

采样方式:4个输入相加,乘以一个可训练参数,再加上一个可训练偏置。结果通过sigmoid

采样种类:16

输出featureMap大小:5*5(10/2)

神经元数量:5516=400

可训练参数:2*16=32(和的权+偏置)

连接数:16*(2*2+1)55=2000

S4中每个特征图的大小是C3中特征图大小的1/4�

3.5 C5层是一个卷积层

输入:S4层的全部16个单元特征map(与s4全相连)

卷积核大小:5*5

卷积核种类:120

输出featureMap大小:1*1(5-5+1)

可训练参数/连接:120*(1655+1)=48120

3.6. F6层全连接层

输入:c5 120维向量

计算方式:计算输入向量和权重向量之间的点积,再加上一个偏置,结果通过sigmoid函数

可训练参数:84*(120+1)=10164

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-08-30 12:03:49  更:2021-08-30 12:04:17 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 17:47:46-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码