一文搞定3D卷积

本文详细介绍了3D卷积的概念,包括3D卷积核的运动自由度和其在视频处理中的应用。此外,还探讨了卷积的分解方法,如空间可分离卷积和深度可分离卷积,以及它们在降低计算复杂性和参数量方面的优势。最后提到了S3D、(2+1)D、P3D和CSN等相关的卷积网络结构。
摘要由CSDN通过智能技术生成

一文搞定3D卷积

在讨论卷积核的时候,是不把channel维加进去的

核 = 一个可以滑动的窗口

窗口内不同位置数据之间的权值共享

3D卷积,卷积核会在3个方向上运动,那么卷积核的运动需要有三个自由度(一小块立方体,在一个大面包块内3个方向上滑动
2D卷积,卷积核只在2个方向上运动,因此只有两个自由度(一小片纸,在一大张纸内2个方向上滑动
1D卷积,卷积核只在1个方向上运动,因此只有一个自由度(一条滑窗,在一大长线上1个方向上滑动

一个卷积核运算一次 得到一个输出值(先乘法再加法)


接下来考虑,卷积层如何进行计算,即将卷积核作用在多个输入通道上,又得到多个输出通道。

下图展示了CxHxW的输入特征,通过2D卷积层,得到1xHxW的输出特征的过程。

用pytorchAPI描述就是:

torch.nn.Conv2d(in_channels=C, out_channels=1, kernel_size=3, stride=1, padding=0, dilation=1, groups=1, bias=Falese, padding_mode='zeros', device=None, dtype=None)

该卷积层参数量为:输入通道数*输出通道数*kernel_size*kernel*size=

  • 75
    点赞
  • 282
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
3D卷积和RNN(循环神经网络)是两种不同的神经网络结构,用于处理不同类型的数据和任务。下面是它们之间的比较: 1. 数据类型:3D卷积主要用于处理图像、视频等三维数据,而RNN适用于序列数据,如文本、语音等。 2. 特征提取:3D卷积通过在多个维度上执行卷积运算来提取空间和时间特征。它能够同时捕捉到数据的空间和时间相关性,适合于处理视频等具有时序信息的数据。而RNN通过循环神经单元在序列中传递信息,并在每个时刻依赖前一个时刻的隐藏状态来处理序列数据。 3. 上下文建模:3D卷积网络在每个时间步都独立地处理输入,没有显式地建模上下文信息。相比之下,RNN能够通过隐藏状态来记忆和传递历史信息,具有更强的上下文建模能力。 4. 参数共享:3D卷积具有参数共享的特性,即同一个卷积核在输入的不同位置共享权重。这种参数共享使得3D卷积网络可以对输入数据进行平移不变性的处理。而RNN没有参数共享的机制,每个时刻都有独立的参数。 5. 计算效率:由于参数共享和并行计算的特性,3D卷积网络在处理大规模数据时可以更高效地进行计算。相比之下,RNN在处理长序列时可能会面临梯度消失和梯度爆炸等问题,导致训练困难。 总的来说,3D卷积和RNN是两种不同的神经网络结构,适用于处理不同类型的数据和任务。3D卷积适用于处理图像、视频等三维数据,能够同时捕捉空间和时间特征;而RNN适用于处理序列数据,能够建模上下文信息。选择合适的网络结构应根据具体任务和数据类型来确定。
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值