【深度学习】特征图的上采样(nn.Upsample)和转置卷积(nn.ConvTranspose2d) | pytorch

这篇具有很好参考价值的文章主要介绍了【深度学习】特征图的上采样(nn.Upsample)和转置卷积(nn.ConvTranspose2d) | pytorch。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

这次就不废话了,我想赶在10点前回去洗头(现在9.17,还差一篇文章)

一、nn.Upsample 上采样

该函数有四个参数:
【深度学习】特征图的上采样(nn.Upsample)和转置卷积(nn.ConvTranspose2d) | pytorch
参数的介绍如下:
【深度学习】特征图的上采样(nn.Upsample)和转置卷积(nn.ConvTranspose2d) | pytorch
稍微翻译一下:
参数:
1)size(int或Tuple[int]或Tuple[int,int]或Tupple[int,int,int],可选):输出空间大小
2)scale_factor(float或Tuple[floot]或Tuple[floot,float]或Tuple[floot、float、float],可选):空间大小的乘数。如果是元组,则必须匹配输入大小。
3)mode(str,可选):上采样算法:“最近”,“线性”、“双线性”、“双三次”和“三线性”。默认值 ‘nearst’
4)align_ccorners(bool,可选):如果“True”,则输入的角像素和输出张量对齐,从而保持这些像素。仅当:attr:mode为“线性”、“线性”或“三线性”。默认值:False

深度学习里用的比较多的是二倍向上采样,比如经常出现在U-net网络结构里,例子如下:

import torch
import torch.nn as nn
A =torch.rand(1,3,24,24)
up=nn.Upsample(scale_factor=2, mode='bilinear', align_corners=True)
B =up(A)
print(B.shape)

【深度学习】特征图的上采样(nn.Upsample)和转置卷积(nn.ConvTranspose2d) | pytorch

如果少写了一个维度,就会报错:

import torch
import torch.nn as nn
A =torch.rand(3,24,24)
up=nn.Upsample(scale_factor=2, mode='bilinear', align_corners=True)
B =up(A)
print(B.shape)

【深度学习】特征图的上采样(nn.Upsample)和转置卷积(nn.ConvTranspose2d) | pytorch

二、nn.ConvTranspose2d 转置卷积

我们首先看看它的参数,依然如此得多
【深度学习】特征图的上采样(nn.Upsample)和转置卷积(nn.ConvTranspose2d) | pytorch
其实,转置卷积和普通的卷积操作,参数配置都是很相似的。看几个例子把
1)311型转置卷积:

import torch
import torch.nn as nn
A =torch.rand(1,64,24,24)
up=nn.ConvTranspose2d(64,32,3,1,1)
B =up(A)
print(B.shape)

【深度学习】特征图的上采样(nn.Upsample)和转置卷积(nn.ConvTranspose2d) | pytorch
和普通卷积的311一样,宽高不变
2)310型转置卷积:

import torch
import torch.nn as nn
A =torch.rand(1,64,24,24)
up=nn.ConvTranspose2d(64,32,3,1,0)
B =up(A)
print(B.shape)

【深度学习】特征图的上采样(nn.Upsample)和转置卷积(nn.ConvTranspose2d) | pytorch
和普通卷积类似,这里是+2(普通卷积是宽高-2)文章来源地址https://www.toymoban.com/news/detail-401616.html


到了这里,关于【深度学习】特征图的上采样(nn.Upsample)和转置卷积(nn.ConvTranspose2d) | pytorch的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 机器学习&&深度学习——torch.nn模块

    torch.nn模块包含着torch已经准备好的层,方便使用者调用构建网络。 卷积就是 输入和卷积核之间的内积运算 ,如下图: 容易发现,卷积神经网络中通过输入卷积核来进行卷积操作,使输入单元(图像或特征映射)和输出单元(特征映射)之间的连接时稀疏的,能够减少需要

    2024年02月15日
    浏览(39)
  • 深度学习中的采样:下采样,上采样,欠采样,过采样

    下采样:池化操作就是经典的下采样,将一张图片缩小,采用不同的方法将像素点合并从而获得更小分辨率的照片就叫做下采样。 上采样:也叫做图像插值上采样就和下采样反过来,将一张照片放大,在像素点之间根据放大倍数,以插值的形式插入像素值从而达到放大图像的

    2024年02月14日
    浏览(39)
  • 深度学习上采样下采样概念以及实现

    #pic_center =400x 系列文章: 【深度学习】上采样,下采样,卷积 torch.nn.functional.interpolate函数 上采样 简单说将图片放大,通过在像素键插入数据 1.插值,一般使用的是双线性插值,因为效果最好,虽然计算上比其他插值方式复杂,但是相对于卷积计算可以说不值一提,其他插

    2024年02月03日
    浏览(74)
  • UE引擎开启DLSS(深度学习超级采样)

    首先打开·NVIDIA官方网站 Getting Started with DLSS 从下面的链接里面找到unreal版本的DLSS  根据提供的几个版本去下载指定版本的压缩包(另外在上面也提供了Unity版本的压缩包) 解完压缩包后将其解压到插件目录下面去  然后启动UE5  开启插件,在设置里面打开 可以看到,有质量

    2024年02月12日
    浏览(34)
  • 图的学习,深度和广度遍历

    表示“多对多”的关系 包括: 一组顶点:通常用V(Vertex)表示顶点集合 一组边:通常用E(Edge)表示边的集合 边是顶点对:(v, w)∈E,其中v,w∈V 有向边v, w表示从v指向w的边(单行线) 不考虑重边和自回路 类型名称:图(Graph) 数据对象集:G(V, E)由一个非空的有限顶点

    2024年02月09日
    浏览(35)
  • 【深度学习】多卡训练__单机多GPU方法详解(torch.nn.DataParallel、torch.distributed)

    多GPU训练能够加快模型的训练速度,而且在单卡上不能训练的模型可以使用多个小卡达到训练的目的。 多GPU训练可以分为单机多卡和多机多卡这两种,后面一种也就是分布式训练——训练方式比较麻烦,而且要关注的性能问题也有很多,据网上的资料有人建议能单机训练最好

    2024年02月02日
    浏览(36)
  • 【深度学习】实验03 特征处理

    标准化、归一化和正则化是常见的数据处理方法,用于在机器学习和统计模型中对数据进行预处理和特征转换。它们具有不同的目的和方法。 归一化是机器学习中一个非常重要的数据预处理方法,它通过对数据进行缩放和转换,使得数据能够在计算时更加准确、更加稳定,从

    2024年02月11日
    浏览(31)
  • 深度学习 - 40. N-Gram 采样与 Session 数据获取 For EGES

    目录 一.引言 二.订单数据预处理 1.数据样例 2.订单数据处理 3.用户 Session 构建 三.构造 sku_id 游走序列 1.获取完整 Session List 2.统计 sku_id 转移词频 3.构建 sku_id 图 4.游走构造 sku 序列 四.商品侧信息预处理 1.读取商品信息 2.Left Join 匹配侧信息 3.Id2Index 构建 五.基于 Ngram 与 Negat

    2023年04月23日
    浏览(29)
  • 从零构建深度学习推理框架-7 计算图的表达式

    表达式就是一个计算过程,类似于如下: 用图形来表达就是这样的。 但是在PNNX的表达式(Experssion Layer)中不是这个样子,而是以一种抽象得方式,替换掉输入张量改为@1,@2等等 所以上面的计算图也就变成了 我们是希望把这个抽象的表达式变回到一个方便后端执行的计算过程

    2024年02月13日
    浏览(33)
  • 深度学习记录--归—化输入特征

    归化输入(normalizing inputs),对特征值进行一定的处理,可以加速神经网络训练速度 步骤 零均值化 通过x值更新让均值稳定在零附近,即为零均值化 归化方差 适当减小变量方差 归化可以让原本狭长的数据图像变得规整,梯度下降的迭代次数减少,训练速度变快 Python实现数据预

    2024年01月18日
    浏览(32)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包