
卷积运算和特征图大小计算(2)
5星
- 浏览量: 0
- 大小:None
- 文件类型:PDF
简介:
每一篇博客都有一句格言:始终保持饥饿与愚蠢。
0. 前言
本文主要探讨在实际卷积运算中,基于不同填充策略(padding=same和padding=valid)所得到的特征图尺寸及其池化后的输出尺寸。
1. 正文
1. 卷积运算
特别强调:
当卷积核无法完全覆盖输入时,需对输入进行向下取整处理。
这一操作在深度学习中扮演着至关重要的角色,主要负责从输入数据中提取特征。本文将深入分析不同填充策略下卷积运算后的特征图尺寸变化,并探讨池化操作后特征图的尺寸演变。
参数定义如下:
- 输入高度:Input Height
- 卷积核大小:Kernel Size (K)
- 步长:Stride (S)
- 填充方式:Padding Strategy(P)
- 输出图像高度:Output Height
1.1 padding=valid
不做任何填充处理,卷积操作直接在输入的边缘区域执行。
卷积运算作为深度学习中的核心操作之一,主要用于从输入数据中提取特征。本文将详细阐述基于不同填充策略下卷积运算后特征图尺寸的变化规律,并分析池化操作对输出尺寸的影响。
卷积运算中,当采用**padding=valid**配置时,不会进行额外的填充操作(即P=0)。其计算方式为:输出特征图的高度(outputH) = (inputH - K + 1) × S。其中,`inputH`表示输入特征图的高度,`K`代表卷积核尺寸,而步长S则决定了下采样的程度。需要注意的是,在实际运算过程中,若无法整除通常会采用向下取整的方式处理,这可能导致输出特征图的维度比预期结果减少一个像素单位。
- **padding=same**:该参数确保卷积操作后输出特征图的高度保持不变。填充量P由卷积核尺寸K决定:当K为1时,P设为0;若K等于3,则P取值为1。依此类推。其高度计算公式如下所示:$outputH = \left(inputH - K + 2P\right) \times S + 1$。值得注意的是,在无法整除的情况下,输出的特征图高度将被下取整处理。池化运算主要作用在于减小特征图的空间尺寸并保留关键信息。其输出特征图的高宽计算公式为`outputH = (inputH - K) // S + 1`,其中K代表池化窗口大小,S表示步长。不同于卷积操作的主要特点在于,在无法被整除的情况下,通常采用上取整的方法以确保输出尺寸始终为整数。在TensorFlow 1.x框架下,VGG网络的结构常由一系列卷积层与池化层组合而成。具体而言,在完成上述步骤后,后续再加入两个同样采用padding=same的3×3卷积操作以保持空间维度不变。随后再次应用2×2的最大池化层进行下采样处理,最终输出的空间尺寸进一步减半至104×104。
练习一中提到,输入图像的初始大小为416×416×3通道,在经过两个采用padding=same机制的3×3卷积操作后,其空间维度保持不变仍为416×416;随后应用一个2×2的最大池化层进行下采样处理,输出的空间尺寸降至208×208。
在完成上述步骤后,后续再加入两个同样采用padding=same的3×3卷积操作以保持空间维度不变。随后再次应用2×2的最大池化层进行下采样处理,最终输出的空间尺寸进一步减半至104×104。掌握这些基础的卷积与池化运算规律对深入理解以及构建深度学习体系具有重要意义。尤其是在设计或优化网络架构的过程中,准确计算特征图尺寸有助于预估模型输出规模的同时,有效调控其复杂程度与性能水平。通过将卷积与池化操作结合使用,在实际应用中能够系统地提取图像的各种特征类型,并据此实现对图像模式的全面识别。
全部评论 (0)


