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

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),也可以是其他类型的值。
  • 作用:① 保持输入和输出的空间尺寸一致
    防止信息在边界处丢失
    控制感受野:我们可以控制覆盖输入区域的大小。

步幅

  • 是什么:指卷积核在输入数据上移动的步长。具体来说,就是每次卷积操作后,卷积核沿宽度和高度方向移动的像素数量。
  • 作用:① 减少空间尺寸控制模型复杂度 :较大的步幅可以减少模型的参数数量和计算量,有助于防止过拟合,并加速训练过程。
    增加感受野:较大的步幅意味着每个输出单元覆盖更大的输入区域,因此可以捕捉更广泛的信息。
相关推荐
光羽隹衡1 分钟前
机器学习——决策树
人工智能·决策树·机器学习
roman_日积跬步-终至千里1 分钟前
【计算机视觉(17)】语义理解-训练神经网络2_优化器_正则化_超参数
人工智能·神经网络·计算机视觉
档案宝档案管理2 分钟前
电子会计档案管理系统:档案宝如何发挥会计档案的价值?
大数据·数据库·人工智能·档案·档案管理
世岩清上4 分钟前
AI绘就文化新画卷:数字化保护留存历史瑰宝,普惠创作绽放艺术繁花
人工智能
像风一样自由20206 分钟前
从GAN到WGAN-GP:生成对抗网络的进化之路与实战详解
人工智能·神经网络·生成对抗网络
性感博主在线瞎搞8 分钟前
【神经网络】超参调优策略(二):Batch Normalization批量归一化
人工智能·神经网络·机器学习·batch·批次正规化
好风凭借力,送我上青云9 分钟前
Pytorch经典卷积神经网络-----激活函数篇
人工智能·pytorch·深度学习·算法·矩阵·cnn
扫地的小何尚12 分钟前
NVIDIA CUDA-Q QEC权威指南:实时解码、GPU解码器与AI推理增强
人工智能·深度学习·算法·llm·gpu·量子计算·nvidia
hy156878614 分钟前
COZE编程-智能体-起飞起飞起飞(一句话生成智能体大升级)
人工智能·coze·自动编程
人工智能培训16 分钟前
深度学习初学者指南
人工智能·深度学习·群体智能·智能体·人工智能培训·智能体搭建·深度学习培训