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

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

参数介绍

torch.nn.Conv1d(in_channels,       
                out_channels,     
                kernel_size,      
                stride,        
                padding,        
                padding_mode    
                dilation,      
                groups,        
                bias,           
                )
  • in_channels: (int)输入数据的通道数,即对某条训练数据来说由多少组向量表示。例如对于由一维向量表示的一条数据来说,通道数为1;对于文本数据来说,一个句子是由m个单词组成,那么通道数就可以是m
  • out_channels: (int)卷积产生的通道数,可以理解为卷积核的个数
  • kernel_size: (int or tuple)卷积核的大小,若参数为元组,元组中应只有一个元素
  • stride: (int or tuple, optional)卷积的步幅。默认值为1,若为元组,元组中应只有一个元素
  • padding: (int, tuple or str, optional)添加到输入两侧的填充个数。默认值为0
  • padding_mode(string, optional),两侧的填充模式,表示两侧不同的填充方式,可选的模式有"‘zeros’, ‘reflect’, ‘replicate’ 或 ‘circular’. 默认:‘zeros’"
  • dilation:(int or tuple, optional)内核元素之间的间距。默认值为1,即卷积核的每个的元素都是紧挨着的,这个比较难以描述,可以在这里看到直观的动图
  • groups:(int, optional)从输入通道到输出通道的阻塞连接数。默认值为1,输入通道数和输出通道数应该能整除groups,当groups为n时,意味着有n个卷积核,分别把输入数据拆分成n份去获取卷积之后的特征
  • bias:(bool, optional)如果是True,向输出添加可学习的偏差。默认为True

输入输出

input – [batch_size , in_channels , i] (批大小, 输入数据的通道数, 输入数据维度)。
output – ( batch_size , out_channels , i](批大小, 输出数据的通道数, 卷积后数据维度)。
卷积后的维度计算方法 n − k + 2 × p s + 1 \frac{n-k+2\times{p}}{s} + 1 snk+2×p+1,(n:输入数据维度,k: 卷积核大小,p: 使用边界填充,s: 步长)。
卷积核维度:[in_channels, kernel_size, out_channels],out_channels代表卷积核的个数,用来提取多维特征。

举个例子

定义如下:

  • in_channels=1, out_channels=1
  • 输入通道:1, 输出通道:1,卷积核:1 × \times × 3 × \times × 1,步长:1,填充:0
  • 批大小:1, 数据的通道数:1, 数据长度: 5
import torch
import torch.nn as nn
input = torch.randn(1, 1, 5)
conv = nn.Conv1d(in_channels=1, out_channels=1, kernel_size=3, stride=1, padding=0)
out = conv(input)

计算过程:
一维卷积神经网络理解(torch.nn.Conv1d)
输出:批大小:1, 数据的通道数:1, 数据长度: 3
参考:https://blog.csdn.net/xu624735206/article/details/124961990文章来源地址https://www.toymoban.com/news/detail-401321.html

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

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

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

相关文章

  • 如何使用torch.nn.utils.prune稀疏神经网络,以及如何扩展它以实现自己的自定义剪裁技术

    最新的深度学习技术依赖于难以部署的过度参数化模型。 相反,已知生物神经网络使用有效的稀疏连通性。 为了减少内存,电池和硬件消耗,同时又不牺牲精度,在设备上部署轻量级模型并通过私有设备上计算来确保私密性,确定通过减少模型中的参数数量来压缩模型的最

    2024年02月12日
    浏览(44)
  • 理解卷积神经网络(CNN)

    卷积神经网络(CNN)是一种专为处理具有类似网格结构的数据(如图像)而设计的深度学习架构。自从在图像处理和计算机视觉领域取得突破性成就以来,CNN已成为这些领域的核心技术之一。 CNN的起源与发展 CNN的概念最初是受到生物视觉感知机制的启发而提出的。早期的研

    2024年03月10日
    浏览(66)
  • 卷积神经网络的简单理解

      CNN主要灵感来自于神经科学视觉系统中的视觉皮层,经研究发现大脑生物皮层的不通视觉细胞仅会对特定部分的视觉区域敏感。   卷积神经网络(Convolutional Neural Networks)是一种 深度学习模型 或类似于人工神经网络的多层感知器,常用来分析 视觉图像 。   该层要

    2024年02月05日
    浏览(39)
  • 卷积神经网络中的padding理解

    在进行卷积神经网络中,经常用到padding,padding在卷积神经网络中起到什么样的作用呢,又是如何发挥作用的呢?本文就此谈下自己看法。 通过上面的代码可以看到padding作为参数被使用。那么下面就简单说下关于padding的作用及其如何发挥作用的。 假设我们已经知道了卷积的

    2024年02月06日
    浏览(51)
  • 卷积神经网络每一层输出的形状、通道数、特征图数量以及过滤器数量的理解与计算。

    参考: http://t.csdn.cn/8ApfD ‘http://t.csdn.cn/ZmEOJ 核心观点:  前一层的通道数(特征图数量),决定这一层过滤器的深度; 这一层过滤器的数量,决定这一层输出的通道数(特征图数量) 神经网络每一层输出矩阵的形状一般是4个维度[y1, y2, y3, y4] y1 通常是batch_size,就是每一圈丢

    2023年04月09日
    浏览(52)
  • 计算机视觉的应用12-卷积神经网络中图像特征提取的可视化研究,让大家理解特征提取的全过程

    大家好,我是微学AI,今天给大家介绍一下计算机视觉的应用12-卷积神经网络中图像特征提取的可视化研究,让大家理解特征提取的全过程。 要理解卷积神经网络中图像特征提取的全过程,我们可以将其比喻为人脑对视觉信息的处理过程。就像我们看到一个物体时,大脑会通

    2024年02月10日
    浏览(46)
  • CNN(一维卷积Conv1D)实现时间序列预测(PyTorch版)

    💥项目专栏:【深度学习时间序列预测案例】零基础入门经典深度学习时间序列预测项目实战(附代码+数据集+原理介绍)

    2024年02月01日
    浏览(43)
  • 神经网络(NN)网络构建及模型算法介绍

    神经网络最主要的作用是作为提取特征的工具,最终的分类并不是作为主要核心。 人工神经网络也称为多层感知机,相当于将输入数据通过前面多个全连接层网络将原输入特征进行了一个非线性变换,将变换后的特征拿到最后一层的分类器去分类。 神经网络是由多个神经元

    2024年02月04日
    浏览(75)
  • Pytorch学习笔记(5):torch.nn---网络层介绍(卷积层、池化层、线性层、激活函数层)

     一、卷积层—Convolution Layers  1.1 1d / 2d / 3d卷积 1.2 卷积—nn.Conv2d() nn.Conv2d 1.3 转置卷积—nn.ConvTranspose nn.ConvTranspose2d  二、池化层—Pooling Layer (1)nn.MaxPool2d (2)nn.AvgPool2d (3)nn.MaxUnpool2d  三、线性层—Linear Layer  nn.Linear  四、激活函数层—Activate Layer (1)nn.Sigmoid  (

    2024年01月20日
    浏览(44)
  • pytorch(6)——神经网络基本骨架nn.module的使用

    torch.nn(Neural network, 神经网络)内包含Pytorch神经网络框架 Containers: 容器 Convolution Layers: 卷积层 Pooling Layers: 池化层 Padding Layers: 填充层 Non-linear Activations (weighted sum, nonlinearity):非线性激活 Non-linear Activations (other):非线性激活 Normalization Layers:归一化层 Recurrent Layers:递归层 Tr

    2024年02月14日
    浏览(43)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包