torch.nn.Conv3d

这篇具有很好参考价值的文章主要介绍了torch.nn.Conv3d。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

3D卷积

比Conv2D多一个维度。

举例说明:Conv2D对720×720的3通道图像进行卷积,batch_size设为64,则输入向量的维度为 [64, 3, 720, 720], Conv3D对分辨率为720×720的视频(假设为连续5帧)进行卷积,batch_size设为64,则输入向量的维度为 [64, 3, 5, 720, 720]

torch.nn.Conv3d(in_channels, 
                out_channels, 
                kernel_size, 
                stride=1, 
                padding=0, 
                dilation=1, 
                groups=1, 
                bias=True,
                padding_mode = 'zeros')

 参数详解文章来源地址https://www.toymoban.com/news/detail-407957.html

  • in_channels(int) :输入张量的通道数
  • out_channels(int) :卷积中滤波器的数量,表示输出张量的通道数
  • kerner_size(int or tuple) :卷积窗口的宽度和高度
  • stride(int or tupleoptional) :卷积沿宽度和高度方向的步长
  • padding(int or tupleoptional) :输入的每一条边填充的层数
  • dilation(int or tupleoptional) :卷积核元素之间的间距,即膨胀卷积的膨胀率,默认为1。
  • groups(intoptional):控制输入和输出之间的连接: group=1,输出是所有的输入的卷积;group=2,此时相当于有并排的两个卷积层,每个卷积层计算输入通道的一半,并且产生的输出是输出通道的一半,随后将这两个输出连接起来。
  • bias(booloptional) :如果bias=True,添加偏置
  • padding_mode(stroptional) :填充的方式,如果padding_mode = 'zeros',表示用0填充

示例

import torch.nn as nn
import torch

# 创建一个卷积层,填充一圈0
conv1 = nn.Conv3d(in_channels=3,
                  out_channels=32,
                  kernel_size=(3, 3, 3),
                  stride=(2, 2. 2),
                  padding=1)

# 创建一个卷积层,无填充
conv2 = nn.Conv3d(in_channels=3,
                  out_channels=32,
                  kernel_size=(3, 3, 3),
                  stride=(2, 2, 2),
                  padding=0)

# 创建一个维度为[64, 3, 7, 5, 5]的tensor
x = torch.rand(64, 3, 7, 5, 5)  

# 进行卷积
y1 = conv1(x)
print(y1.shape) # [64, 32, 4, 3, 3]

# 进行卷积
y2 = conv2(x)
print(y2.shape) # [64, 32, 3, 2, 2]

到了这里,关于torch.nn.Conv3d的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 一维卷积神经网络理解(torch.nn.Conv1d)

    in_channels : (int)输入数据的通道数,即对某条训练数据来说由多少组向量表示。例如对于由一维向量表示的一条数据来说,通道数为1;对于文本数据来说,一个句子是由m个单词组成,那么通道数就可以是m out_channels : (int)卷积产生的通道数,可以理解为卷积核的个数 kernel_siz

    2023年04月08日
    浏览(45)
  • nn.Conv2d详解

    nn.Conv2d  是 PyTorch 中的一个卷积层,用于实现二维卷积操作。其主要参数有: in_channels :表示输入图像的通道数,也就是输入特征图的深度。 out_channels :表示输出特征图的通道数,也就是卷积核的个数。 kernel_size :表示卷积核的大小;可以是一个整数,表示正方形卷积核的

    2024年02月05日
    浏览(44)
  • torch.nn.functional.grid_sample(F.grid_sample)函数的说明 & 3D空间中的点向图像投影的易错点

    由于二者有一定共通之处,因此放在一篇文章内介绍。   该函数的作用是在图像/体素空间中采样特征。 变量名 数据类型 默认值 含义 备注 input Tensor - 原始图像/体素空间的特征 形状需为 ( B , C , H , W ) (B,C,H,W) ( B , C , H , W ) 或 ( B , C , D , H , W ) (B,C,D,H,W) ( B , C , D , H , W ) ,分

    2023年04月24日
    浏览(49)
  • 【PyTorch】nn.Conv2d函数详解

    CONV2D官方链接 in_channels:输入的通道数,RGB 图像的输入通道数为 3 out_channels:输出的通道数 kernel_size:卷积核的大小,一般我们会使用 5x5、3x3 这种左右两个数相同的卷积核,因此这种情况只需要写 kernel_size = 5这样的就行了。如果左右两个数不同,比如3x5的卷积核,那么写作

    2024年01月22日
    浏览(40)
  • pytorch之nn.Conv1d详解

    1、Conv1d 定义 class torch.nn.Conv1d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True) 自然语言处理中一个句子序列,一维的,所以使用Conv1d,此时卷积核(没有batch_size,参数是共享的)除去chanel,也是一维的。  2、参数  in_channels(int) – 输入信号的通道。在

    2024年02月16日
    浏览(45)
  • pytorch中nn.Conv1d功能介绍

            在使用Conv1d函数时,pytorch默认你的数据是一维的,比如一句话“深度学习”可以用一个一维数组 [\\\'深\\\', \\\'度\\\', \\\'学\\\', \\\'习\\\'] 表示,这个数据就是一维的。图片是二维数据,它有长宽两个维度。         因此在使用 Conv1d 函数时,输入是一个三位数组,三个维度分别表

    2024年02月10日
    浏览(46)
  • 【知识点】nn.Conv2d参数设置

    reference   in_channels   这个很好理解,就是输入的四维张量[N, C, H, W]中的C了,即输入张量的channels数。这个形参是确定权重等可学习参数的shape所必需的。 out_channels   也很好理解,即期望的四维输出张量的channels数。 kernel_size   卷积核的大小,一般我们会使用5x5、3x3这

    2024年02月12日
    浏览(36)
  • pytorch中 nn.Conv2d的简单用法

    参数介绍 : in_channels :卷积层输入通道数 out_channels :卷积层输出通道数 kernel_size :卷积层的卷积核大小 padding :填充长度 stride :卷积核移动的步长 dilation :是否采用空洞卷积 groups :是否采用分组卷积 bias :是否添加偏置参数 padding_mode : padding 的模式 如果输入大小为:

    2024年02月11日
    浏览(44)
  • torch.nn.BCEWithLogitsLoss与torch.nn.BCELoss

    torch.nn.BCEWithLogitsLoss 相当于 sigmoid + torch.nn.BCELoss 。代码示例如下,

    2024年02月16日
    浏览(41)
  • 【torch.nn.PixelShuffle】和 【torch.nn.UnpixelShuffle】

    PixelShuffle是一种上采样方法,它将形状为 ( ∗ , C × r 2 , H , W ) (∗, Ctimes r^2, H, W) ( ∗ , C × r 2 , H , W ) 的张量重新排列转换为形状为 ( ∗ , C , H × r , W × r ) (∗, C, Htimes r, Wtimes r) ( ∗ , C , H × r , W × r ) 的张量: 举个例子 输入的张量大小是 (1,8,2,3) ,PixelShuffle的 缩放因子是

    2024年02月13日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包