机器学习基础-卷积的计算

1 掌握卷积计算的基本过程

1.1 单通道单卷积核

如图3所示,现在有一张形状为[5,5,1]的灰度图,我们需要用图3右边的卷积核对其进行卷积处理,同时再考虑到偏置的作用。计算过程如下:

1.2 单通道多卷积核

如下图所示,左边为输入矩阵,我们现在要用右边所示的两个卷积核对其进行卷积处理。

最后我们便能得到下图右边所示的,形状为[3,3,2]的卷积特征图,其中2表示两个特征通道。

1.3 多通道单卷积核

对于多通道的卷积过程,总体上还是还是同之前的一样,都是每次选取特定位置上的神经元进行卷积,然后依次移动直到卷积结束。下面我们先来看看多通道单卷积核的计算过程。

左边为包含有三个通道的输入,右边为一个卷积核和一个偏置。注意,强调一下右边的仅仅只是一个卷积核,不是三个。因为输入是三个通道,所以在进行卷积的时候,对应的每一个卷积核都必须要有三个通道才能进行卷积。下面我们就来看看具体的计算过程。

1.4 多通道多卷积核

其他计算

  • 通道:需要10个 5×5 的卷积核,每个卷积核的深度等于输入通道数,即3。

  • 填充(Padding):对于 5×5 的卷积核,为了保持宽高不变,应使用 padding = (kernel_size - 1) / 2。因此,padding = (5 - 1) / 2 = 2

  • 步幅可设置为1

  • 总参数数量:

    • 每个卷积核的参数数量是:5×5×3+1(其中+1是因为每个卷积核还有一个偏置项)。

    • 因此,对于10个这样的卷积核,总的参数数量是10×(5×5×3+1)=760

  • 乘法次数

    • 每个位置上的乘法次数为:5×5×3=75
    • 输入特征图的每个位置都会被卷积操作覆盖一次,因此总的乘法次数为: 75×640×480×10=230,400,000

padding,stride的作用

填充(Padding)和步幅(Stride)是卷积神经网络(CNN)中两个非常重要的超参数,它们对卷积层的输出特征图尺寸有直接影响。理解这两个参数的作用对于设计有效的卷积神经网络至关重要。

填充

  • 是什么:Padding是指在输入数据(通常是图像)的边界周围添加额外的填充层。这个填充层可以是零值(称为零填充,zero-padding),也可以是其他类型的值。
  • 作用:① 保持输入和输出的空间尺寸一致
    防止信息在边界处丢失
    控制感受野:我们可以控制覆盖输入区域的大小。

步幅

  • 是什么:指卷积核在输入数据上移动的步长。具体来说,就是每次卷积操作后,卷积核沿宽度和高度方向移动的像素数量。
  • 作用:① 减少空间尺寸控制模型复杂度 :较大的步幅可以减少模型的参数数量和计算量,有助于防止过拟合,并加速训练过程。
    增加感受野:较大的步幅意味着每个输出单元覆盖更大的输入区域,因此可以捕捉更广泛的信息。
相关推荐
道友老李19 分钟前
【PyTorch】实现卷积神经网络:使用CNN进行手写数字识别
人工智能·pytorch·cnn
视觉语言导航27 分钟前
技术实践︱利用Docker快速体验Matterport3DSimulator!让视觉语言导航(VLN)任务入门再无门槛!
人工智能·docker·具身智能
luoganttcc38 分钟前
香橙派安装 opencv 4.9.0
人工智能·opencv·webpack
技术程序猿华锋40 分钟前
Cursor AI 编程代码助手:设置自定义 AI 与 OpenAI API Key 获取教程
人工智能
菠萝派爱跨境1 小时前
电商Google广告:2025年提升转化率的5种策略
大数据·人工智能
桂月二二1 小时前
解锁2025编程新高度:深入探索编程技术的最新趋势
前端·人工智能·flutter·neo4j·wasm
西电研梦2 小时前
西安电子科技大学初/复试笔试、面试、机试成绩占比
人工智能·考研·面试·职场和发展·研究生·西电·西安电子科技大学
说私域2 小时前
开源 AI 智能名片 2+1 链动模式商城小程序在商业营销中的心理博弈与策略应用
人工智能·小程序
说私域2 小时前
开源AI智能名片2+1链动模式S2B2C商城小程序在商业流量获取中的应用研究
人工智能·小程序
island13142 小时前
【计算机组成原理课程设计】:实验0 ROM仿真、实验1 验证74L181运算和逻辑功能、实验2 运算器 2、实验 3 跑马灯、实验4 模拟微程序实现指令
机器学习·课程设计·计算机组成原理