对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文件和目录操作函数小结
Jul 11 Python
Python3基础之输入和输出实例分析
Aug 18 Python
Python中生成器和yield语句的用法详解
Apr 17 Python
python监控键盘输入实例代码
Feb 09 Python
Python3连接SQLServer、Oracle、MySql的方法
Jun 28 Python
python实现狄克斯特拉算法
Jan 17 Python
详解PyCharm+QTDesigner+PyUIC使用教程
Jun 13 Python
python2.7的flask框架之引用js&css等静态文件的实现方法
Aug 22 Python
Python使用贪婪算法解决问题
Oct 22 Python
在tensorflow中设置使用某一块GPU、多GPU、CPU的操作
Feb 07 Python
Windows下Sqlmap环境安装教程详解
Aug 04 Python
详解Python 中的容器 collections
Aug 17 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
phpinfo 系统查看参数函数代码
2009/06/05 PHP
php生成随机数的三种方法
2014/09/10 PHP
Laravel 批量更新多条数据的示例
2017/11/27 PHP
解决php写入数据库乱码的问题
2019/09/17 PHP
JS正则表达式大全(整理详细且实用)
2013/11/14 Javascript
window resize和scroll事件的基本优化思路
2014/04/29 Javascript
用jquery.sortElements实现table排序
2014/05/04 Javascript
jQuery中prepend()方法用法实例
2014/12/25 Javascript
JS判断是否长按某一键的方法
2016/03/02 Javascript
微信小程序 slider的简单实例
2017/04/19 Javascript
对Vue- 动态元素属性及v-bind和v-model的区别详解
2018/08/27 Javascript
使用pm2自动化部署node项目的方法步骤
2019/01/28 Javascript
每天学点Vue源码之vm.$mount挂载函数
2019/03/11 Javascript
使用jquery的cookie实现登录页记住用户名和密码的方法
2019/03/13 jQuery
Vue中避免滥用this去读取data中数据
2021/03/02 Vue.js
[01:07:19]DOTA2-DPC中国联赛 正赛 CDEC vs XG BO3 第一场 1月19日
2021/03/11 DOTA
TensorFlow saver指定变量的存取
2018/03/10 Python
windows下添加Python环境变量的方法汇总
2018/05/14 Python
python3爬虫之设计签名小程序
2018/06/19 Python
Python基于Tkinter模块实现的弹球小游戏
2018/12/27 Python
详解python的argpare和click模块小结
2019/03/31 Python
python3.8 微信发送服务器监控报警消息代码实现
2019/11/05 Python
Python常用模块sys,os,time,random功能与用法实例分析
2020/01/07 Python
Python中使用threading.Event协调线程的运行详解
2020/05/02 Python
python 调用Google翻译接口的方法
2020/12/09 Python
美国女性奢华品牌精品店:INTERMIX
2017/10/12 全球购物
Groupon法国官方网站:特卖和网上购物高达-70%
2019/09/02 全球购物
财务工作个人求职的自我评价
2013/12/19 职场文书
应届本科生推荐信范文
2013/12/25 职场文书
业务员简历自我评价
2014/03/06 职场文书
老师对学生的寄语
2014/04/09 职场文书
企业安全生产月活动总结
2014/07/05 职场文书
优秀毕业生的求职信
2014/07/21 职场文书
小学运动会开幕词
2015/01/28 职场文书
广告公司文案策划岗位职责
2015/04/14 职场文书
新闻稿格式范文
2015/07/18 职场文书