pytorch中torch.max和Tensor.view函数用法详解


Posted in Python onJanuary 03, 2020

torch.max()

1.

torch.max()简单来说是返回一个tensor中的最大值。

例如:

>>> si=torch.randn(4,5)
>>> print(si)
tensor([[ 1.1659, -1.5195, 0.0455, 1.7610, -0.2064],
    [-0.3443, 2.0483, 0.6303, 0.9475, 0.4364],
    [-1.5268, -1.0833, 1.6847, 0.0145, -0.2088],
    [-0.8681, 0.1516, -0.7764, 0.8244, -1.2194]])

>>> print(torch.max(si))
tensor(2.0483)

2.

这个函数的参数中还有一个dim参数,使用方法为re = torch.max(Tensor,dim),返回的re为一个二维向量,其中re[0]为最大值的Tensor,re[1]为最大值对应的index的Tensor。

例如:

>>> print(torch.max(si,0)[0])
tensor([1.1659, 2.0483, 1.6847, 1.7610, 0.4364])

注意,Tensor的维度从0开始算起。在torch.max()中指定了dim之后,比如对于一个3x4x5的Tensor,指定dim为0后,得到的结果是维度为0的“每一行”对应位置求最大的那个值,此时输出的Tensor的维度是4x5.

对于简单的二维Tensor,如上面例子的这个4x5的Tensor。指定dim为0,则给出的结果是4行做比较之后的最大值;如果指定dim为1,则给出的结果是5列做比较之后的最大值,且此处做比较时是按照位置分别做比较,得到一个新的Tensor。

Tensor.view()

简单说就是一个把tensor 进行reshape的操作。

>>> a=torch.randn(3,4,5,7)
>>> b = a.view(1,-1)
>>> print(b.size())
torch.Size([1, 420])

其中参数-1表示剩下的值的个数一起构成一个维度。如上例中,第一个参数1将第一个维度的大小设定成1,后一个-1就是说第二个维度的大小=元素总数目/第一个维度的大小,此例中为3*4*5*7/1=420.

>>> d = a.view(a.size(0),a.size(1),-1)
>>> print(d.size())
torch.Size([3, 4, 35])

 

>>> e=a.view(4,-1,5)
>>> print(e.size())
torch.Size([4, 21, 5])

以上这篇pytorch中torch.max和Tensor.view函数用法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python计算圆周率pi的方法
Jul 11 Python
Python设置默认编码为utf8的方法
Jul 01 Python
Python制作刷网页流量工具
Apr 23 Python
浅谈python迭代器
Nov 08 Python
利用Python进行异常值分析实例代码
Dec 07 Python
python+selenium识别验证码并登录的示例代码
Dec 21 Python
python3使用腾讯企业邮箱发送邮件的实例
Jun 28 Python
Django中Middleware中的函数详解
Jul 18 Python
python 实现手机自动拨打电话的方法(通话压力测试)
Aug 08 Python
Python使用QQ邮箱发送邮件实例与QQ邮箱设置详解
Feb 18 Python
python读取多层嵌套文件夹中的文件实例
Feb 27 Python
python开发人人对战的五子棋小游戏
May 02 Python
pytorch逐元素比较tensor大小实例
Jan 03 #Python
pytorch 改变tensor尺寸的实现
Jan 03 #Python
Pytorch Tensor 输出为txt和mat格式方式
Jan 03 #Python
CentOS7下安装python3.6.8的教程详解
Jan 03 #Python
Python实现大数据收集至excel的思路详解
Jan 03 #Python
Python如何基于rsa模块实现非对称加密与解密
Jan 03 #Python
PyTorch的自适应池化Adaptive Pooling实例
Jan 03 #Python
You might like
基于curl数据采集之单页面并行采集函数get_htmls的使用
2013/04/28 PHP
PHP仿博客园 个人博客(2) 数据库增添改删
2013/07/05 PHP
PHP CURL CURLOPT参数说明(curl_setopt)
2013/09/30 PHP
浅谈php命令行用法
2015/02/04 PHP
PHP类和对象相关系统函数与运算符小结
2016/09/28 PHP
PHP基于curl post实现发送url及相关中文乱码问题解决方法
2017/11/25 PHP
THINKPHP3.2使用soap连接webservice的解决方法
2017/12/13 PHP
ThinkPHP实现的rsa非对称加密类示例
2018/05/29 PHP
枚举JavaScript对象的函数
2006/12/22 Javascript
jquery checkbox,radio是否选中的判断代码
2010/03/20 Javascript
jquery中实现标签切换效果的代码
2011/03/01 Javascript
基于jQuery的动态增删改查表格信息,可左键/右键提示(原创自Zjmainstay)
2012/07/31 Javascript
event.currentTarget与event.target的区别介绍
2012/12/31 Javascript
js中的this关键字详解
2013/09/25 Javascript
jquery dialog open后,服务器端控件失效的快速解决方法
2013/12/19 Javascript
js的image onload事件使用遇到的问题
2014/07/15 Javascript
jQuery源码解读之removeClass()方法分析
2015/02/20 Javascript
jQuery使用$.get()方法从服务器文件载入数据实例
2015/03/25 Javascript
利用Mongoose让JSON数据直接插入或更新到MongoDB
2017/05/03 Javascript
vue中使用sessionStorage记住密码功能
2018/07/24 Javascript
js实现同一个页面,多个enter事件绑定的示例
2018/10/10 Javascript
Node配合WebSocket做多文件下载以及进度回传
2019/11/07 Javascript
[07:47]DOTA2国际邀请赛采访专栏:探访Valve总部
2013/08/08 DOTA
python的exec、eval使用分析
2017/12/11 Python
Python3 replace()函数使用方法
2018/03/19 Python
python占位符输入方式实例
2019/05/27 Python
Python实现微信好友的数据分析
2019/12/16 Python
python获取整个网页源码的方法
2020/08/03 Python
基于Python模拟浏览器发送http请求
2020/11/06 Python
python实现企业微信定时发送文本消息的实例代码
2020/11/25 Python
马来西亚在线购物市场:PGMall.my
2019/10/13 全球购物
大学生毕业自我鉴定范文
2014/02/03 职场文书
2014班子成员自我剖析材料思想汇报
2014/10/01 职场文书
领导班子四风问题个人对照检查材料
2014/10/04 职场文书
九年级英语教学反思
2016/02/15 职场文书
工作转正自我鉴定范文
2019/06/21 职场文书