【pytorch】torch.nn.functional.pad的使用
torch.nn.functional.pad 是对Tensor做padding,输入的参数必须的torch的Tensor
一般地,习惯上会做如下声明
import torch.nn.functional as F
所以,torch.nn.functional.pad一般使用F.pad来代替
参数列表
- 第一个参数为Tensor
- 第二个参数为一个Tuple,它表示分别对前,后做多少位的padding操作
- 第三个参数位mode,mode一般有
'constant
’(default)'reflect
’'reflect
’'replicate'
or'circular'
- 第四个参数value,用于mode是
'constant
’下的填充。默认0
使用样例
example 1 (1D)
x=torch.Tensor([1,1,0,0,2,2])
x = F.pad(x, (0, 2), mode='constant')
print(x,x.shape)
example 2(1D)
x=torch.Tensor([1,1,0,0,2,2])
x = F.pad(x, (2, 0), mode='constant',value=9)
print(x,x.shape)
example 3(negetive padding)
x=torch.Tensor([1,1,0,0,2,2])
x = F.pad(x, (-2, 0), mode='constant')
print(x,x.shape)
example 4(2D)
x=torch.Tensor([1,1,0,0,2,2]).view(3,2)
x = F.pad(x, (0, 2), mode='constant')
print(x,x.shape)
example 5(3D)
x=torch.Tensor([1,1,0,0,2,2]).view(3,2,1)
x = F.pad(x, (1, 0), mode='constant')
print(x,x.shape)
example 6(reflect)
reflect模式下仅仅支持3D, 4D, 5D,其他的会报错
Only 3D, 4D, 5D padding with non-constant padding are supported for now
reflect用作于最后一维,最后一维的每一维最后一个item为轴,然后反射出一摸一样的部分。
x=torch.Tensor([1,2,3,0,4,5,0,-1,-2,-3,-4,0]).view(2,2,3)
print(x)
x = F.pad(x, (0, 2), mode='reflect')
print(x,x.shape)
example 7(replicate)
replicate模式下仅仅支持3D, 4D, 5D,其他的会报错
Only 3D, 4D, 5D padding with non-constant padding are supported for now
replicate用作于最后一维,最后一维的每一维最后一个item复制。
x=torch.Tensor([1,2,3,0,4,5,0,-1,-2,-3,-4,0]).view(2,2,3)
print(x)
x = F.pad(x, (0, 2), mode='replicate')
print(x,x.shape)
example 8(circular)
circular模式下仅仅支持3D, 4D, 5D,其他的会报错
Only 3D, 4D, 5D padding with non-constant padding are supported for now
circular用作于最后一维,最后一维从头开始复制
x=torch.Tensor([1,2,3,0,4,5,0,-1,-2,-3,-4,0]).view(2,2,3)
print(x)
x = F.pad(x, (0, 2), mode='circular')
print(x,x.shape)
【pytorch】torch.nn.functional.pad的使用相关推荐
- pytorch笔记:torch.nn.functional.pad
1 torch.nn.functional.pad函数 torch.nn.functional.pad是pytorch内置的tensor扩充函数,便于对数据集图像或中间层特征进行维度扩充 torch. ...
- Pytorch之torch.nn.functional.pad函数详解
torch.nn.functional.pad是PyTorch内置的矩阵填充函数 (1).torch.nn.functional.pad函数详细描述如下: torch.nn.functional.pa ...
- torch.nn.functional.pad
作用 用来对一个tensor进行填充.最典型的就是图片了,原来是2*2的,现在想要变成3*3的,那么就需要填充,此时有很多选择,例如是在原来的右上进行填充还是左下?又或者是左上?等等. 这个函数就可以 ...
- torch.nn.functional.pad(input, pad, mode=‘constant‘, value=0)
torch.nn.functional.pad(input, pad, mode='constant', value=0) 填充Tensor. 填充大小: 填充input的某些维度的填充大小从最后一个 ...
- mindspore.ops.Pad如何像torch.nn.functional.pad一样可以填充负维度
torch.nn.functional.pad[x,[-1,-1,-1,-1,]]可以填充负维度,而mindspore.ops.Pad 却不能填充负维度. 但是在官网中写的torch.nn.funct ...
- [Pytorch]torch.nn.functional.conv2d与深度可分离卷积和标准卷积
torch.nn.functional.conv2d与深度可分离卷积和标准卷积 前言 F.conv2d与nn.Conv2d F.conv2d 标准卷积考虑Batch的影响 深度可分离卷积 深度可分离卷 ...
- pytorch: torch.nn.functional.affine_grid(theta,size)
# 仍有部分疑惑 torch.nn.functional.affine_grid(theta,size): 给定一组仿射矩阵(theta),生成一个2d的流场.通常与 grid_sample() 结 ...
- torch.nn.functional
1. 非线性激活函数 torch.nn.functional.threshold(input, threshold, value, inplace=False) torch.nn.functional ...
- torch.nn.functional.interpolate函数
torch.nn.functional.interpolate实现插值和上采样 torch.nn.functional.interpolate(input, size=None, scale_fact ...
最新文章
- mysql左加入_MySQL左加入子查询*
- 对于索引(a,b,c),下列哪些说法是正确的
- 《阿里云SRE技术期刊》2020年10月【电子版】
- 初探弹出层的实现原理
- 如何合理的规划jvm性能调优
- 低欲望社会有多可怕?仅94万!日本去年新生人口数创历史新低,空房子如瘟疫般蔓延...
- php 打包下载网络图片,php多张图片打包下载
- J2EE的13种核心技术(一)
- 数值分析(8)-最佳一致逼近多项式
- c# 时间格式化为英文_C#格式化英文字母的三种方法
- 自制硬盘空间整数计算器,打发时间的无聊之作
- 常微分方程 伍卓群 题目
- reCAPTCHA打不开的解决方法
- js/javaScript通过setTimeout做动画和需要注意的点
- 计算机硬件网络设备,[计算机硬件及网络]网络设备的选型.ppt
- 展示正在活动时间内的活动,过期活动不显示
- 北京军区技侦局_校庆70周年系列学术活动之六:
- 微信php功能整合,微信公众平台开发功能整合
- 28推论坛邀请注册攻略
- 量子计算Shor算法
热门文章
- ProGen:蛋白质生成语言模型
- 上海交大c语言第一次作业,上海交大网络学院-计算机第一次作业及答案(含6次机会全部题目)-计算机基础的知识.docx...
- Windows/Linux 下功能强大的桌面截图软件
- 零基础入门学习Python(25)-集合·
- 【LorMe云讲堂】蔡枫:真菌的耐盐机制
- NBT | 利用血液代谢组预测肠道微生物组的多样性
- 藏在1.85亿人体内的隐形致癌病毒,有人确诊即是晚期
- NAR:扩增子OTU聚类软件SeekDeep方法解读
- 评论:玉米可利用气生根进行高效生物固氮
- R语言使用gganimate包可视化动画点直方图生成过程(dot histogram)、在数据遍历的过程中逐步在箱体内堆叠数据点形成最终的点直方图