对Pytorch中Tensor的各种池化操作解析


Posted in Python onJanuary 03, 2020

AdaptiveAvgPool1d(N)

对一个C*H*W的三维输入Tensor, 池化输出为C*H*N, 即按照H轴逐行对W轴平均池化

>>> a = torch.ones(2,3,4)
>>> a[0,1,2] = 0
>>>> a
tensor([[[1., 1., 1., 1.],
     [1., 1., 0., 1.],
     [1., 1., 1., 1.]],

    [[1., 1., 1., 1.],
     [1., 1., 1., 1.],
     [1., 1., 1., 1.]]])
     
>>> nn.AdaptiveAvgPool1d(5)(a)
tensor([[[1.0000, 1.0000, 1.0000, 1.0000, 1.0000],
     [1.0000, 1.0000, 0.5000, 0.5000, 1.0000],
     [1.0000, 1.0000, 1.0000, 1.0000, 1.0000]],

    [[1.0000, 1.0000, 1.0000, 1.0000, 1.0000],
     [1.0000, 1.0000, 1.0000, 1.0000, 1.0000],
     [1.0000, 1.0000, 1.0000, 1.0000, 1.0000]]])
     
>>> nn.AdaptiveAvgPool1d(1)(a)
tensor([[[1.0000],
     [0.7500],
     [1.0000]],

    [[1.0000],
     [1.0000],
     [1.0000]]])

AdaptiveAvgPool2d((M,N))

对一个B*C*H*W的四维输入Tensor, 池化输出为B*C*M*N, 即按照C轴逐通道对H*W平面平均池化

>>> a = torch.ones(2,2,3,4)
>>> a[:,:,:,1] = 0
>>> a
tensor([[[[1., 0., 1., 1.],
     [1., 0., 1., 1.],
     [1., 0., 1., 1.]],

     [[1., 0., 1., 1.],
     [1., 0., 1., 1.],
     [1., 0., 1., 1.]]],


    [[[1., 0., 1., 1.],
     [1., 0., 1., 1.],
     [1., 0., 1., 1.]],

     [[1., 0., 1., 1.],
     [1., 0., 1., 1.],
     [1., 0., 1., 1.]]]])
     
>>> nn.AdaptiveAvgPool2d((1,2))(a)
tensor([[[[0.5000, 1.0000]],
     [[0.5000, 1.0000]]],
     
    [[[0.5000, 1.0000]],
     [[0.5000, 1.0000]]]])
     
>>> nn.AdaptiveAvgPool2d(1)(a)
tensor([[[[0.7500]],
     [[0.7500]]],

    [[[0.7500]],
     [[0.7500]]]])

AdaptiveAvgPool3d((M,N,K))

对一个B*C*D*H*W的五维输入Tensor, 池化输出为B*C*M*N*K, 即按照C轴逐通道对D*H*W平面平均池化

>>> a = torch.ones(1,2,2,3,4)
>>> a[0,0,:,:,0:2] = 0
>>> a
tensor([[[[[0., 0., 1., 1.],
      [0., 0., 1., 1.],
      [0., 0., 1., 1.]],
      
     [[0., 0., 1., 1.],
      [0., 0., 1., 1.],
      [0., 0., 1., 1.]]],

     [[[1., 1., 1., 1.],
      [1., 1., 1., 1.],
      [1., 1., 1., 1.]],

     [[1., 1., 1., 1.],
      [1., 1., 1., 1.],
      [1., 1., 1., 1.]]]]])
     
>>> nn.AdaptiveAvgPool3d((1,1,2))(a)
tensor([[[[[0., 1.]]],

     [[[1., 1.]]]]])
     
>>> nn.AdaptiveAvgPool3d(1)(a)
tensor([[[[[0.5000]]],

     [[[1.0000]]]]])

以上这篇对Pytorch中Tensor的各种池化操作解析就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
用Python写的图片蜘蛛人代码
Aug 27 Python
python发布模块的步骤分享
Feb 21 Python
Python中函数参数设置及使用的学习笔记
May 03 Python
Python制作Windows系统服务
Mar 25 Python
Python实现爬虫抓取与读写、追加到excel文件操作示例
Jun 27 Python
pandas数据集的端到端处理
Feb 18 Python
基于python实现的百度新歌榜、热歌榜下载器(附代码)
Aug 05 Python
Python命名空间及作用域原理实例解析
Aug 12 Python
利用python汇总统计多张Excel
Sep 22 Python
pycharm激活码免费分享适用最新pycharm2020.2.3永久激活
Nov 25 Python
Python机器学习工具scikit-learn的使用笔记
Jan 28 Python
Python用any()函数检查字符串中的字母以及如何使用all()函数
Apr 14 Python
Python基础之高级变量类型实例详解
Jan 03 #Python
关于Pytorch MaxUnpool2d中size操作方式
Jan 03 #Python
pytorch中的卷积和池化计算方式详解
Jan 03 #Python
Python While循环语句实例演示及原理解析
Jan 03 #Python
在Pytorch中计算卷积方法的区别详解(conv2d的区别)
Jan 03 #Python
Python综合应用名片管理系统案例详解
Jan 03 #Python
Python tkinter常用操作代码实例
Jan 03 #Python
You might like
PHP图片上传类带图片显示
2006/11/25 PHP
php加密解密函数authcode的用法详细解析
2013/10/28 PHP
Laravel 5框架学习之Blade 简介
2015/04/08 PHP
用JavaScript显示随机图像或引用
2009/04/21 Javascript
分享10篇优秀的jQuery幻灯片制作教程及应用案例
2011/04/16 Javascript
使用insertAfter()方法在现有元素后添加一个新元素
2014/05/28 Javascript
JavaScript通过setTimeout实时显示当前时间的方法
2015/04/16 Javascript
js无提示关闭浏览器窗口的两种方法分析
2016/11/06 Javascript
Javascript Event(事件)的传播与冒泡
2017/01/23 Javascript
angular2中使用第三方js库的实例
2018/02/26 Javascript
vue组件实现弹出框点击显示隐藏效果
2020/10/26 Javascript
微信小程序实现倒计时补零功能
2018/07/09 Javascript
JavaScript设计模式之模板方法模式原理与用法示例
2018/08/07 Javascript
JavaScript封装的常用工具类库bee.js用法详解【经典类库】
2018/09/03 Javascript
Jquery实现获取子元素的方法分析
2019/08/24 jQuery
浅谈JavaScript中等号、双等号、 三等号的区别
2020/08/06 Javascript
用Python实现QQ游戏大家来找茬辅助工具
2014/09/14 Python
关于pip的安装,更新,卸载模块以及使用方法(详解)
2017/05/19 Python
Python实现的计数排序算法示例
2017/11/29 Python
python验证码识别教程之滑动验证码
2018/06/04 Python
Python3实现的反转单链表算法示例
2019/03/08 Python
python 日期排序的实例代码
2019/07/11 Python
python使用writerows写csv文件产生多余空行的处理方法
2019/08/01 Python
解决Mac下使用python的坑
2019/08/13 Python
关于Python中的向量相加和numpy中的向量相加效率对比
2019/08/26 Python
python图形界面开发之wxPython树控件使用方法详解
2020/02/24 Python
django中ImageField的使用详解
2020/12/21 Python
澳大利亚网上书店:QBD
2021/01/09 全球购物
J2EE中常用的名词进行解释
2015/11/09 面试题
行政人员工作职责
2013/12/05 职场文书
九年级政治教学反思
2014/02/06 职场文书
党员干部批评与自我批评反四风思想汇报
2014/09/21 职场文书
2015年教师节感恩寄语
2015/03/23 职场文书
学生会2016感恩节活动小结
2016/04/01 职场文书
MySQL窗口函数的具体使用
2021/11/17 MySQL
Golang日志包的使用
2022/04/20 Golang