Pytorch maxpool的ceil_mode用法


Posted in Python onFebruary 18, 2020

pytorch里面的maxpool,有一个属性叫ceil_mode,这个属性在api里面的解释是

ceil_mode: when True, will use ceil instead of floor to compute the output shape

也就是说,在计算输出的shape的时候,如果ceil_mode的值为True,那么则用天花板模式,否则用地板模式

???

举两个例子就明白了。

# coding:utf-8
import torch
import torch.nn as nn
from torch.autograd import Variable
 
 
class Net(nn.Module):
  def __init__(self):
    super(Net, self).__init__()
    self.maxp = nn.MaxPool2d(kernel_size=2, ceil_mode=False)
 
  def forward(self, x):
    x = self.maxp(x)
    return x
 
square_size = 6
inputs = torch.randn(1, 1, square_size, square_size)
for i in range(square_size):
  inputs[0][0][i] = i * torch.ones(square_size)
inputs = Variable(inputs)
print(inputs)
 
net = Net()
outputs = net(inputs)
print(outputs.size())
print(outputs)

在上面的代码中,无论ceil_mode是True or False,结果都是一样

但是如果设置square_size=5,那么

当ceil_mode=True

Variable containing:

(0 ,0 ,.,.) =

0 0 0 0 0 0

1 1 1 1 1 1

2 2 2 2 2 2

3 3 3 3 3 3

4 4 4 4 4 4

5 5 5 5 5 5

[torch.FloatTensor of size 1x1x6x6]

torch.Size([1, 1, 3, 3])

Variable containing:

(0 ,0 ,.,.) =

1 1 1

3 3 3

5 5 5

[torch.FloatTensor of size 1x1x3x3]

在上面的代码中,无论ceil_mode是True or False,结果都是一样

但是如果设置square_size=5,那么

当ceil_mode=True

Variable containing:

(0 ,0 ,.,.) =

0 0 0 0 0

1 1 1 1 1

2 2 2 2 2

3 3 3 3 3

4 4 4 4 4

[torch.FloatTensor of size 1x1x5x5]
torch.Size([1, 1, 3, 3])
Variable containing:

(0 ,0 ,.,.) =

1 1 1

3 3 3

4 4 4

[torch.FloatTensor of size 1x1x3x3]

当ceil_mode=False

Variable containing:

(0 ,0 ,.,.) =

0 0 0 0 0

1 1 1 1 1

2 2 2 2 2

3 3 3 3 3

4 4 4 4 4

[torch.FloatTensor of size 1x1x5x5]

torch.Size([1, 1, 2, 2])

Variable containing:

(0 ,0 ,.,.) =

1 1

3 3

[torch.FloatTensor of size 1x1x2x2]

所以ceil模式就是会把不足square_size的边给保留下来,单独另算,或者也可以理解为在原来的数据上补充了值为-NAN的边。floor模式则是直接把不足square_size的边给舍弃了。

以上这篇Pytorch maxpool的ceil_mode用法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
安装Python的web.py框架并从hello world开始编程
Apr 25 Python
python计算牛顿迭代多项式实例分析
May 07 Python
简单介绍Python中的decode()方法的使用
May 18 Python
50行Python代码实现人脸检测功能
Jan 23 Python
python如何对实例属性进行类型检查
Mar 20 Python
详解分布式任务队列Celery使用说明
Nov 29 Python
Python读取stdin方法实例
May 24 Python
django框架创建应用操作示例
Sep 26 Python
将pytorch转成longtensor的简单方法
Feb 18 Python
Python利用 utf-8-sig 编码格式解决写入 csv 文件乱码问题
Feb 21 Python
详解python模块pychartdir安装及导入问题
Oct 22 Python
Python之多进程与多线程的使用
Feb 23 Python
浅谈pytorch池化maxpool2D注意事项
Feb 18 #Python
Python3的socket使用方法详解
Feb 18 #Python
Python批量启动多线程代码实例
Feb 18 #Python
基于pytorch padding=SAME的解决方式
Feb 18 #Python
Python中pyecharts安装及安装失败的解决方法
Feb 18 #Python
Python chardet库识别编码原理解析
Feb 18 #Python
解决pytorch-yolov3 train 报错的问题
Feb 18 #Python
You might like
4.与数据库的连接
2006/10/09 PHP
php笔记之:数据类型与常量的使用分析
2013/05/14 PHP
关于php微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题
2015/12/21 PHP
使用laravel的migrate创建数据表的方法
2019/09/30 PHP
取键盘键位ASCII码的网页
2007/07/30 Javascript
模仿JQuery.extend函数扩展自己对象的js代码
2009/12/09 Javascript
Javascript基础教程之break和continue语句
2015/01/18 Javascript
省市区三级联动下拉框菜单javascript版
2015/08/11 Javascript
jQuery实现选项联动轮播效果【附实例】
2016/04/19 Javascript
JS代码实现百度地图 画圆 删除标注
2016/10/12 Javascript
Javascript之面向对象--方法
2016/12/02 Javascript
js代码实现下拉菜单【推荐】
2016/12/15 Javascript
在javaScript中检测数据类型的几种方式小结
2017/03/04 Javascript
10分钟彻底搞懂Http的强制缓存和协商缓存(小结)
2018/08/30 Javascript
nodejs aes 加解密实例
2018/10/10 NodeJs
如何去除富文本中的html标签及vue、react、微信小程序中的过滤器
2018/11/21 Javascript
浅谈VueJS SSR 后端绘制内存泄漏的相关解决经验
2018/12/20 Javascript
javascript中floor使用方法总结
2019/02/02 Javascript
深入理解es6块级作用域的使用
2019/03/28 Javascript
详解vue.js移动端配置flexible.js及注意事项
2019/04/10 Javascript
uni-app实现获取验证码倒计时功能
2020/11/01 Javascript
用Python编写分析Python程序性能的工具的教程
2015/04/01 Python
Python中获取对象信息的方法
2015/04/27 Python
python通过ftplib登录到ftp服务器的方法
2015/05/08 Python
Python创建对称矩阵的方法示例【基于numpy模块】
2017/10/12 Python
django 解决manage.py migrate无效的问题
2018/05/27 Python
Python3实现的Mysql数据库操作封装类
2018/06/06 Python
Django之PopUp的具体实现方法
2019/08/31 Python
如何理解Python中的变量
2020/06/01 Python
matplotlib交互式数据光标实现(mplcursors)
2021/01/13 Python
x-ua-compatible content=”IE=7, IE=9″意思理解
2013/07/22 HTML / CSS
描述一下JVM加载class文件的原理机制
2013/12/08 面试题
主题酒店策划书
2014/01/28 职场文书
高中政治教学反思
2016/02/23 职场文书
nginx作grpc的反向代理踩坑总结
2021/07/07 Servers
python_tkinter弹出对话框创建
2022/03/20 Python