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判断给定的字符串是否是有效日期的方法
May 13 Python
详解Python中的文件操作
Aug 28 Python
Python实现的朴素贝叶斯算法经典示例【测试可用】
Jun 13 Python
Python Matplotlib实现三维数据的散点图绘制
Mar 19 Python
python 将日期戳(五位数时间)转换为标准时间
Jul 11 Python
pytorch使用指定GPU训练的实例
Aug 19 Python
使用Python实现画一个中国地图
Nov 23 Python
python线程join方法原理解析
Feb 11 Python
Python 合并拼接字符串的方法
Jul 28 Python
Python读取Excel一列并计算所有对象出现次数的方法
Sep 04 Python
Django admin组件的使用
Oct 24 Python
Python实战之实现康威生命游戏
Apr 26 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
PHP中文字符串截断无乱码解决方法
2016/10/10 PHP
PHP lcfirst()函数定义与用法
2019/03/08 PHP
JQuery的一些小应用收集
2010/03/27 Javascript
jquery实现图片等比例缩放以及max-width在ie中不兼容解决
2013/03/21 Javascript
对jQuery的事件绑定的一些思考(补充)
2013/04/20 Javascript
js 获取input点选按钮的值的方法
2014/04/14 Javascript
上传图片预览JS脚本 Input file图片预览的实现示例
2014/10/23 Javascript
解决jQuery uploadify在非IE核心浏览器下无法上传
2015/08/05 Javascript
jQuery基于ajax实现星星评论代码
2015/08/07 Javascript
基于jQuery实现点击弹出层实例代码
2016/01/01 Javascript
学习javascript面向对象 理解javascript原型和原型链
2016/01/04 Javascript
关于原生js中bind函数的简单实现
2016/08/10 Javascript
EditPlus中的正则表达式 实战(2)
2016/12/15 Javascript
Node.js连接MongoDB数据库产生的问题
2017/02/08 Javascript
页面间固定参数,通过cookie传值的实现方法
2017/05/31 Javascript
Vue使用vue-cli创建项目
2017/09/01 Javascript
vue引入jq插件的实例讲解
2017/09/12 Javascript
微信小程序实现MUI数字输入框效果
2018/01/31 Javascript
Vue-router的使用和出现空白页,路由对象属性详解
2018/09/03 Javascript
vue.js指令v-for使用以及下标索引的获取
2019/01/31 Javascript
JS数组的常用10种方法详解
2020/05/08 Javascript
python+matplotlib演示电偶极子实例代码
2018/01/12 Python
Python3中详解fabfile的编写
2018/06/24 Python
对numpy中向量式三目运算符详解
2018/10/31 Python
python安装读取grib库总结(推荐)
2020/06/24 Python
如何在mac版pycharm选择python版本
2020/07/21 Python
Python字典取键、值对的方法步骤
2020/09/30 Python
大学四年职业生涯规划书范文
2014/01/02 职场文书
干部现实表现材料
2014/02/13 职场文书
2014年小学教师工作总结
2014/11/10 职场文书
教师个人事迹材料
2014/12/17 职场文书
酒店前台岗位职责
2015/04/16 职场文书
python入门之算法学习
2021/04/22 Python
解决golang结构体tag编译错误的问题
2021/05/02 Golang
vue实现移动端div拖动效果
2022/03/03 Vue.js
改造DE1103三步曲
2022/04/07 无线电