提交 7412f0c7 编写于 作者: W wizardforcel

2021-01-05 23:21:28

上级 1a9816e2
......@@ -17,7 +17,7 @@
SSD 是一种非常快速的对象检测器,非常适合部署在移动设备和边缘设备上以进行实时预测。 在本章中,我们将学习如何使用 SSD 开发模型,在下一章中,我们将评估在边缘设备上部署时的性能。 但是在详细介绍 SSD 之前,我们将快速了解到目前为止我们在本书中了解的其他对象检测器模型。
我们在“第 5 章”,“神经网络架构和模型”中了解到,Faster R-CNN 包含 21,500 个区域提议(60 x 40 滑动窗口和 9 个锚定框),这些建议被扭曲为 2K 固定层。 这些 2K 层被馈送到全连接层和包围盒回归器,以检测图像中的包围盒。 9 个锚框来自 3 个比例尺,框面积分别为`128^2``256^2``512^2`和三个长宽比:`1:1``1:2``2:1`
我们在“第 5 章”,“神经网络架构和模型”中了解到,Faster R-CNN 包含 21,500 个区域提议(`60 x 40`滑动窗口和 9 个锚定框),这些建议被扭曲为 2K 固定层。 这些 2K 层被馈送到全连接层和包围盒回归器,以检测图像中的包围盒。 9 个锚框来自 3 个比例尺,框面积分别为`128^2``256^2``512^2`和三个长宽比:`1:1``1:2``2:1`
9 个锚点框的说明如下:
128x128:1:1; 128x128:1:2; 128x128:2:1
......
......@@ -28,8 +28,8 @@
CNN 的图像过滤和处理方法包括执行多种操作,所有这些操作都可以通过以下方式进行:
* 卷积(Conv2D)
* 卷积– 3 x 3 滤镜
* 卷积– 1 x 1 过滤器
* 卷积`3 x 3`滤镜
* 卷积`1 x 1`过滤器
* 汇集
* 填充
* 大步走
......@@ -60,7 +60,7 @@ CNN 的图像过滤和处理方法包括执行多种操作,所有这些操作
* 逐元素矩阵乘法和总和结果,用于生成特征图。
* 随着多次卷积运算而堆叠的多个特征图将生成最终输出。
# 卷积– 3 x 3 滤镜
# 卷积 – `3 x 3`滤镜
在前面的示例中,我们在二维图像(灰度)上应用了`3 x 3`卷积。 在本节中,我们将学习具有三个通道(**红色****绿色****蓝色****RGB**)的三维图像 使用卷积运算的`3 x 3`边缘过滤器对)进行变换。 下图以图形方式显示了此转换:
......@@ -72,15 +72,15 @@ CNN 的图像过滤和处理方法包括执行多种操作,所有这些操作
通常,在卷积层中,有许多执行不同类型边缘检测的过滤器。 在前面的示例中,我们有 32 个过滤器,这将导致 32 个不同的堆栈,每个堆栈由`5 x 5`层组成。
3 x 3 过滤器将在本书的其余部分中广泛用于神经网络开发。 例如,您将在 ResNet 和 Inception 层中看到大量使用它,我们将在“第 5 章”,“神经网络架构和模型”中进行讨论。 TensorFlow 中可以将大小为`3 x 3`的 32 个过滤器表示为`.tf.keras.layers.Conv2D(32, (3,3))`。 在本章的后面,您将学习如何将此卷积与 CNN 的其他层一起使用。
`3 x 3`过滤器将在本书的其余部分中广泛用于神经网络开发。 例如,您将在 ResNet 和 Inception 层中看到大量使用它,我们将在“第 5 章”,“神经网络架构和模型”中进行讨论。 TensorFlow 中可以将大小为`3 x 3`的 32 个过滤器表示为`.tf.keras.layers.Conv2D(32, (3,3))`。 在本章的后面,您将学习如何将此卷积与 CNN 的其他层一起使用。
# 卷积– 1 x 1 过滤器
# 卷积 – `1 x 1`过滤器
在本节中,我们将学习`1 x 1`卷积的重要性及其用例。 1 x 1 卷积过滤器是图像的直倍数,如下图所示:
在本节中,我们将学习`1 x 1`卷积的重要性及其用例。 `1 x 1`卷积过滤器是图像的直倍数,如下图所示:
![](img/d37f03a9-c3a6-4796-8ca8-0c40c106eb73.png)
在上图中,在上一节输出的`5 x 5`图像上使用了`5 x 5`卷积过滤器值 1,但实际上它可以是任何数字。 在这里,我们可以看到使用`5 x 5`过滤器可以保留其高度和宽度,而深度则增加到过滤器通道的数量。 这是`5 x 5`过滤器的基本优点。 三维内核(`f[i]`)中三个(1 x 1 x 3)单元中的每一个都与输入的相应三个单元相乘 (`A[i]`)。 然后,将这些值与 ReLU 激活函数(`b[i]`)一起加在一起,以形成单个元素(`Z`):
在上图中,在上一节输出的`5 x 5`图像上使用了`5 x 5`卷积过滤器值 1,但实际上它可以是任何数字。 在这里,我们可以看到使用`5 x 5`过滤器可以保留其高度和宽度,而深度则增加到过滤器通道的数量。 这是`5 x 5`过滤器的基本优点。 三维内核(`f[i]`)中三个(`1 x 1 x 3`)单元中的每一个都与输入的相应三个单元相乘 (`A[i]`)。 然后,将这些值与 ReLU 激活函数(`b[i]`)一起加在一起,以形成单个元素(`Z`):
![](img/f772de26-1cb9-482d-9bfd-27910c641878.png)
......@@ -90,7 +90,7 @@ CNN 的图像过滤和处理方法包括执行多种操作,所有这些操作
上图显示了`1 x 1 x 128`图像过滤器如何将卷积深度减少到 32 个通道。
1 x 1 卷积在所有 128 个通道中与`5 x 5`输入层执行逐元素乘法–将其在深度维度上求和,并应用 ReLU 激活函数在`5 x 5`中创建单个点 输出表示 128 的输入深度。本质上,通过使用这种机制(卷积+整个深度的和),它会将三维体积折叠为具有相同宽度和高度的二维数组。 然后,它应用 32 个过滤器以创建`5 x 5 x 32`输出,如前所示。 这是有关 CNN 的基本概念,因此请花一些时间来确保您理解这一点。
`1 x 1`卷积在所有 128 个通道中与`5 x 5`输入层执行逐元素乘法–将其在深度维度上求和,并应用 ReLU 激活函数在`5 x 5`中创建单个点 输出表示 128 的输入深度。本质上,通过使用这种机制(卷积+整个深度的和),它会将三维体积折叠为具有相同宽度和高度的二维数组。 然后,它应用 32 个过滤器以创建`5 x 5 x 32`输出,如前所示。 这是有关 CNN 的基本概念,因此请花一些时间来确保您理解这一点。
本书将使用`1 x 1`卷积。 稍后,您将了解到池化会减小宽度,而`1 x 1`卷积会保留宽度,但可以根据需要收缩或扩展深度。 例如,您将看到在网络和 Inception 层中使用了`1 x 1`卷积(在“第 5 章”,“神经网络架构和模型”中。具有 1 的 32 过滤器) x 1 的卷积可以在 TensorFlow 中表示为`.tf.keras.layers.Conv2D(32, (1,1))`
......@@ -105,7 +105,7 @@ CNN 的图像过滤和处理方法包括执行多种操作,所有这些操作
![](img/e008ce29-8194-4fe6-baa0-058c073a2f98.png)
请注意,由于合并,3 x 3 窗口如何缩小(由绿线显示)为单个值,从而导致`5 x 5`矩阵尺寸更改为`5 x 5`矩阵。
请注意,由于合并,`3 x 3`窗口如何缩小(由绿线显示)为单个值,从而导致`5 x 5`矩阵尺寸更改为`5 x 5`矩阵。
# 填充
......
......@@ -221,7 +221,7 @@ VGG16 的基本思想总结如下:
左图显示了传统 CNN 中的线性过滤器,它将输入图像连接到下一层。 右图显示了微网络,该微网络由多个全连接层组成,然后是将输入图像连接到下一层的激活功能。 这里的初始层是 NIN 的逻辑顶点,描述如下:
* 初始架构的主要思想是基于发现如何用易于获得的密集分量(3 x 3 和 5 x 5)补充 CNN 中的最佳局部稀疏(并行`1 x 1`多个)结构。 初始论文的作者找到了答案,方法是将`1 x 1`卷积与 3 x 3、5 x 5 卷积和池化层并行使用。 可以认为,附加的`1 x 1`卷积和 ReLU 相当于 NIN 微网络。 1 x 1 卷积可作为降维机制,还有助于增加网络的宽度(通过并排堆叠)以及深度。 在同一层(起始层)中同时并行部署具有多个过滤器和池化层的多个卷积会导致该层是稀疏层,并且宽度增加。 1 x 1 卷积由于较小的内核大小而遭受了较少的过拟合。
* 初始架构的主要思想是基于发现如何用易于获得的密集分量(`3 x 3``5 x 5`)补充 CNN 中的最佳局部稀疏(并行`1 x 1`多个)结构。 初始论文的作者找到了答案,方法是将`1 x 1`卷积与`3 x 3``5 x 5`卷积和池化层并行使用。 可以认为,附加的`1 x 1`卷积和 ReLU 相当于 NIN 微网络。 `1 x 1`卷积可作为降维机制,还有助于增加网络的宽度(通过并排堆叠)以及深度。 在同一层(起始层)中同时并行部署具有多个过滤器和池化层的多个卷积会导致该层是稀疏层,并且宽度增加。 `1 x 1`卷积由于较小的内核大小而遭受了较少的过拟合。
* 目的是让神经网络在训练网络时学习最佳权重,并自动选择更有用的功能。
* 为了进一步减小尺寸,在`3 x 3``3 x 3`卷积之前使用`3 x 3`卷积,如下图所示:
......@@ -234,7 +234,7 @@ VGG16 的基本思想总结如下:
该网络包括以下部分:
* 1 x 1 卷积,带 128 个滤镜,用于减小尺寸和校正线性激活
* `1 x 1`卷积,带 128 个滤镜,用于减小尺寸和校正线性激活
* 具有 1,024 个单元和 ReLU 激活的全连接层
* 丢包层,其丢包比率为 70%
* 一个具有 softmax 损失的线性层作为分类器(预测与主分类器相同的 1,000 个分类,但在推理时将其删除)
......
......@@ -61,8 +61,8 @@ DeepLabV3 执行几个并行的 Atrous 卷积,所有这些卷积以不同的
解码器模块的主要功能如下:
* 1 x 1 卷积用于减少来自编码器模块的低级特征图的通道。
* 3 x 3 卷积用于获得更清晰的分割结果。
* `1 x 1`卷积用于减少来自编码器模块的低级特征图的通道。
* `3 x 3`卷积用于获得更清晰的分割结果。
* 向上采样 4。
# DeepLab 中的语义分割-示例
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册