位置: IT常识 - 正文

PyTorch之F.pad的使用与报错记录(pytorch f)

编辑:rootadmin
PyTorch之F.pad的使用与报错记录 F.pad的使用与报错记录

推荐整理分享PyTorch之F.pad的使用与报错记录(pytorch f),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:pytorch pad,pytorch f,pytorch f,pytorch f,pytorch f,pytorch paddle,pytorch f.pad,pytorch paddlepaddle,内容如对您有帮助,希望把文章链接给更多的朋友!

原始文档:https://www.yuque.com/lart/ugkv9f/iftd9v

函数原型

函数文档:https://pytorch.org/docs/1.12/generated/torch.nn.functional.pad.html#torch-nn-functional-pad

torch.nn.functional.pad(input, pad, mode='constant', value=None) → TensorPadding格式1D-tensor:(p_left, p_right)2D-tensor:(p_left, p_right, p_top, p_bottom)3D-tensor:(p_left, p_right, p_top, p_bottom, p_front, p_back)四种模式

这一函数用于实现对高维tensor的形状补齐操作。PyTorch本身提供了四种padding模式:

constant:使用指定的常数value补齐指定的维度。对于数据012,使用0补齐,结果可以为0001200。reflect:使用tensor自身的值按照“反射”的方式补齐指定的维度。对于数据012,结果可以为2101210。replicate:使用tensor自身边界值补齐指定的维度。对于数据012,结果可以为0001222。circular:使用tensor自身的值按照“循环”的方式补齐指定的维度。对于数据012,结果可以为1201201。

需要注意的是,文档强调了这一点:

PyTorch之F.pad的使用与报错记录(pytorch f)

Constant padding is implemented for arbitrary dimensions. Replicate and reflection padding are implemented for padding the last 3 dimensions of a 4D or 5D input tensor, the last 2 dimensions of a 3D or 4D input tensor, or the last dimension of a 2D or 3D input tensor.

这四种模式使用输出展示会更便于理解一些,下面是一个例子:

import torchimport torch.nn.functional as Fpad = [2, 2, 2, 2]x = torch.arange(9, dtype=torch.float32).reshape(1, 1, 3, 3)print("x")print(x)print("F.pad(x, pad=pad, mode='constant', value=0)")print(F.pad(x, pad=pad, mode='constant', value=0))print("F.pad(x, pad=pad, mode='replicate')")print(F.pad(x, pad=pad, mode='replicate'))print("F.pad(x, pad=pad, mode='reflect')")print(F.pad(x, pad=pad, mode='reflect'))print("F.pad(x, pad=pad, mode='circular')")print(F.pad(x, pad=pad, mode='circular'))

对应的输出为:

xtensor([[[[0., 1., 2.], [3., 4., 5.], [6., 7., 8.]]]])F.pad(x, pad=pad, mode='constant', value=0)tensor([[[[0., 0., 0., 0., 0., 0., 0.], [0., 0., 0., 0., 0., 0., 0.], [0., 0., 0., 1., 2., 0., 0.], [0., 0., 3., 4., 5., 0., 0.], [0., 0., 6., 7., 8., 0., 0.], [0., 0., 0., 0., 0., 0., 0.], [0., 0., 0., 0., 0., 0., 0.]]]])F.pad(x, pad=pad, mode='replicate')tensor([[[[0., 0., 0., 1., 2., 2., 2.], [0., 0., 0., 1., 2., 2., 2.], [0., 0., 0., 1., 2., 2., 2.], [3., 3., 3., 4., 5., 5., 5.], [6., 6., 6., 7., 8., 8., 8.], [6., 6., 6., 7., 8., 8., 8.], [6., 6., 6., 7., 8., 8., 8.]]]])F.pad(x, pad=pad, mode='reflect')tensor([[[[8., 7., 6., 7., 8., 7., 6.], [5., 4., 3., 4., 5., 4., 3.], [2., 1., 0., 1., 2., 1., 0.], [5., 4., 3., 4., 5., 4., 3.], [8., 7., 6., 7., 8., 7., 6.], [5., 4., 3., 4., 5., 4., 3.], [2., 1., 0., 1., 2., 1., 0.]]]])F.pad(x, pad=pad, mode='circular')tensor([[[[4., 5., 3., 4., 5., 3., 4.], [7., 8., 6., 7., 8., 6., 7.], [1., 2., 0., 1., 2., 0., 1.], [4., 5., 3., 4., 5., 3., 4.], [7., 8., 6., 7., 8., 6., 7.], [1., 2., 0., 1., 2., 0., 1.], [4., 5., 3., 4., 5., 3., 4.]]]])可能会遇到的报错

常见的错误主要是因为padding的数量超过了对应模式的要求。

对于constant和replicate对于padding并没有限制。

但是另外两种模式replicate和circular就有要求了。

RuntimeError: Argument #4: Padding size should be less than the corresponding input dimension, but got: padding (3, 3) at dimension 3 of input 4

这发生在reflect模式中,padding的数量必须小于对应维度的大小。

import torchimport torch.nn.functional as Fpad = [3, 3, 3, 3]x = torch.arange(9, dtype=torch.float32).reshape(1, 1, 3, 3)print("F.pad(x, pad=pad, mode='reflect')")print(F.pad(x, pad=pad, mode='reflect'))"""F.pad(x, pad=pad, mode='reflect')Traceback (most recent call last): File "e:/Coding/PythonTools/TorchPadding/main.py", line 20, in <module> print(F.pad(x, pad=pad, mode='reflect')) File "D:\Programming\Python\envs\pt1102\lib\site-packages\torch\nn\functional.py", line 4189, in _pad return torch._C._nn.reflection_pad2d(input, pad)RuntimeError: Argument #4: Padding size should be less than the corresponding input dimension, but got: padding (3, 3) at dimension 3 of input 4"""AssertionError: Padding value causes wrapping around more than once.

这发生在circular模式中,padding的数量不得超出原始tensor对应维度的大小。

import torchimport torch.nn.functional as Fpad = [4, 4, 4, 4]x = torch.arange(9, dtype=torch.float32).reshape(1, 1, 3, 3)print("F.pad(x, pad=pad, mode='circular')")print(F.pad(x, pad=pad, mode='circular'))"""F.pad(x, pad=pad, mode='circular')Traceback (most recent call last): File "e:/Coding/PythonTools/TorchPadding/main.py", line 17, in <module> print(F.pad(x, pad=pad, mode='circular')) File "D:\Programming\Python\envs\pt1102\lib\site-packages\torch\nn\functional.py", line 4193, in _pad return _pad_circular(input, pad) File "D:\Programming\Python\envs\pt1102\lib\site-packages\torch\nn\functional.py", line 4585, in _pad_circular assert padding[-(idx * 2 + 1)] <= size, "Padding value causes wrapping around more than once."AssertionError: Padding value causes wrapping around more than once."""
本文链接地址:https://www.jiuchutong.com/zhishi/288989.html 转载请保留说明!

上一篇:js如何把时间戳转化为日期(js怎么把时间戳转为日期yyyy-mm-dd)

下一篇:触屏不灵敏怎么办(触屏不灵敏怎么调整oppo)

  • 小米civi怎么设置锁屏时间(小米civi怎么设置全面屏)

    小米civi怎么设置锁屏时间(小米civi怎么设置全面屏)

  • vivox70怎么分屏(vivox70怎么分屏多任务)

    vivox70怎么分屏(vivox70怎么分屏多任务)

  • ctrl键加什么是截图

    ctrl键加什么是截图

  • 华为手机电话已经加入黑名单,怎么取消(华为手机电话已经设置黑名单了我怎么发出来)

    华为手机电话已经加入黑名单,怎么取消(华为手机电话已经设置黑名单了我怎么发出来)

  • 如何判断soul限流(soul怎么看出自己是否被屏蔽)

    如何判断soul限流(soul怎么看出自己是否被屏蔽)

  • 快手一块币是什么意思(快手上的一块币是多少钱呢)

    快手一块币是什么意思(快手上的一块币是多少钱呢)

  • 淘宝是几天自动确认收货(淘宝几天自动评价)

    淘宝是几天自动确认收货(淘宝几天自动评价)

  • 微信备注名字怎么突然没有了(微信备注名字怎么改不了)

    微信备注名字怎么突然没有了(微信备注名字怎么改不了)

  • 微信左下角显示1却没有未读消息(微信在下面显示)

    微信左下角显示1却没有未读消息(微信在下面显示)

  • 京东回收手机什么时候能到账(京东回收手机什么时候检测完毕)

    京东回收手机什么时候能到账(京东回收手机什么时候检测完毕)

  • 蓝屏代码0x000001a(蓝屏代码0X0000007B)

    蓝屏代码0x000001a(蓝屏代码0X0000007B)

  • 拼多多is昵称是指什么(拼多多呢称是什么)

    拼多多is昵称是指什么(拼多多呢称是什么)

  • 闲鱼链接是什么意思(闲鱼新开链接)

    闲鱼链接是什么意思(闲鱼新开链接)

  • win7家庭版和旗舰版区别(win7家庭版和旗舰版能共享打印机吗)

    win7家庭版和旗舰版区别(win7家庭版和旗舰版能共享打印机吗)

  • 电脑为什么上不了网(电脑为什么上不了网课)

    电脑为什么上不了网(电脑为什么上不了网课)

  • ipad wlan是几代(ipad wlan版本什么意思)

    ipad wlan是几代(ipad wlan版本什么意思)

  • 华为jkmal00b是什么型号(华为手机jkmal00b是什么型号)

    华为jkmal00b是什么型号(华为手机jkmal00b是什么型号)

  • 苹果8p微信怎么分身(苹果8P微信怎么添加其他应用打开)

    苹果8p微信怎么分身(苹果8P微信怎么添加其他应用打开)

  • 手机 ud版什么意思(啥是ud版)

    手机 ud版什么意思(啥是ud版)

  • 用美颜相机拍照怎么把字去掉(用美颜相机拍照怎么把美颜logo去掉)

    用美颜相机拍照怎么把字去掉(用美颜相机拍照怎么把美颜logo去掉)

  • qq恩爱墙怎么看(qq如何看恩爱值)

    qq恩爱墙怎么看(qq如何看恩爱值)

  • 如何制作婚礼视频(如何制作婚礼视频mv短片)

    如何制作婚礼视频(如何制作婚礼视频mv短片)

  • 默认网关不可用(默认网关不可用修复后过一会又不好使了)

    默认网关不可用(默认网关不可用修复后过一会又不好使了)

  • 快手上的小黄车是怎么弄的(快手上的小黄车怎么挂)

    快手上的小黄车是怎么弄的(快手上的小黄车怎么挂)

  • 电脑管家免费WiFi怎么使用?(电脑管家免费wifi)

    电脑管家免费WiFi怎么使用?(电脑管家免费wifi)

  • Spring Boot 整合 Bootstrap(spring boot整合hibernate)

    Spring Boot 整合 Bootstrap(spring boot整合hibernate)

  • speedtest-cli命令  测试服务器外网速度(speedtest教程)

    speedtest-cli命令 测试服务器外网速度(speedtest教程)

  • 前端面试题整理——webpack相关考点(前端面试题汇总.pdf)

    前端面试题整理——webpack相关考点(前端面试题汇总.pdf)

  • 企业如何做增量
  • 工商年报多久能显示
  • 增值税普通发票和电子普通发票的区别
  • 2021年销售农机免增值税吗
  • 水电气费用属于固定成本
  • 没有发票的费用可以抵扣企业所得税吗
  • 个人去税务局开专票需要提供什么
  • 积分兑换礼品需要缴纳个人所得税吗
  • 企业如何运用内部招募
  • 转出未交增值税借方余额怎么处理
  • 出售商标使用权收入计入什么科目
  • 上期留抵税额计算
  • 个人转让怎么写
  • 城建税和教育费附加可以税前扣除吗
  • 装修费可以作为开办费吗
  • 商业汇票付款方通过哪个会计科目核算
  • 工程前期咨询收费标准
  • 利用Windows Media将二进制文件转音频
  • 药店 医保收入占比
  • windows10如何开热点
  • 收到投标保证金利息会计分录
  • 一次性付一年的房租要摊销吗
  • 发出商品是在产品吗
  • 购入办公楼按多少折算
  • 发票冲红怎么开具
  • Laravle eloquent 多对多模型关联实例详解
  • ajax调用php函数
  • 如何重装系统win7旗舰版
  • PHP:mb_detect_order()的用法_mbstring函数
  • 如何获取openai api
  • 失业保险稳岗补贴是什么意思
  • 固定资产折旧折完了
  • 公司出租房租怎么交税
  • os x 10.10 yosemite自动纠正怎么关?os x yosemite自动纠正功能关闭教程
  • 承包经营税率表
  • 营业费用这个科目还在用吗
  • 会计核算的实训目的
  • thinkphp3.2框架
  • 只申报个税不交社保
  • php socket_create
  • javaweb界面设计
  • vue项目使用less
  • 员工体检费发票可以抵扣进项吗
  • 营业外收支核算的内容有哪些?
  • 文化事业建设费征收范围及计税依据
  • mysql备份工具
  • 租车出差差旅费标准
  • 增值税会计账务处理例题
  • 员工工资需要交税吗
  • 物业公司一般纳税人简易征收
  • 经营性投资范畴
  • 短期理财会计处理
  • 发放福利视同销售进项税要转出吗?
  • 企业所得税汇算清缴时间
  • 建行E信通贴现需要发票吗
  • 写字楼里的公司怎么赚钱
  • 科目余额表如何核对
  • 09年前的固定资产
  • 代扣代缴的个人所得税在现金流量表
  • 土地租金怎么做账
  • 临时人员是什么
  • 工业企业增值税负率一般控制在多少
  • mysql 最新稳定版本
  • freebsd 安装
  • smsvchost.exe是什么文件 电脑中Svchost.exe病毒解决办法
  • window7主题变成xp了
  • xp系统的设置在哪里
  • win8操作
  • Win7开机就蓝屏
  • 简单阐述javascript的主要作用
  • linux那么多命令怎么记
  • JavaScript的21条基本知识点
  • bat批处理执行cmd命令
  • vue router 组件
  • jquery defaultvalue
  • javascript面向对象精要pdf下载
  • jquery设置背景颜色
  • 电梯维护保养费按什么缴纳增值税
  • 进口肉的税率是多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设