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自动连接ssh的方法
Mar 07 Python
Python2和Python3中print的用法示例总结
Oct 25 Python
python如何统计序列中元素
Jul 31 Python
Python分割指定页数的pdf文件方法
Oct 26 Python
pandas 时间格式转换的实现
Jul 06 Python
基于Python实现ComicReaper漫画自动爬取脚本过程解析
Nov 11 Python
使用Python的Turtle绘制哆啦A梦实例
Nov 21 Python
Pytorch之finetune使用详解
Jan 18 Python
python代码如何注释
Jun 01 Python
Pycharm制作搞怪弹窗的实现代码
Feb 19 Python
python反编译教程之2048小游戏实例
Mar 03 Python
学会用Python实现滑雪小游戏,再也不用去北海道啦
May 20 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
php smarty的预保留变量总结
2008/12/04 PHP
解析php取整的几种方式
2013/06/25 PHP
PHP中strtr字符串替换用法详解
2014/11/26 PHP
PHP实现的DES加密解密实例代码
2016/04/06 PHP
php使用Jpgraph创建3D饼形图效果示例
2017/02/15 PHP
php服务器的系统详解
2019/10/12 PHP
PHP使用PDO实现mysql防注入功能详解
2019/12/20 PHP
一段多浏览器的"复制到剪贴板"javascript代码
2007/03/27 Javascript
让Firefox支持event对象实现代码
2009/11/07 Javascript
JQuery Dialog的内存泄露问题解决方法
2010/06/18 Javascript
JavaScript 操作键盘的Enter事件(键盘任何事件),兼容多浏览器
2010/10/11 Javascript
Extjs优化(二)Form表单提交通用实现
2013/04/15 Javascript
jQuery实现ctrl+enter(回车)提交表单
2015/10/19 Javascript
最全面的百度地图JavaScript离线版开发
2016/09/10 Javascript
Bootstrap CSS组件之面包屑导航(breadcrumb)
2016/12/17 Javascript
QRCode.js:基于JQuery的生成二维码JS库的使用
2017/06/23 jQuery
利用Node.js了解与测量HTTP所花费的时间详解
2017/09/22 Javascript
webpack-dev-server自动更新页面方法
2018/02/22 Javascript
nuxt框架中对vuex进行模块化设置的实现方法
2019/09/06 Javascript
浅谈layui框架自带分页和表格重载的接口解析问题
2019/09/11 Javascript
vue点击页面空白处实现保存功能
2019/11/06 Javascript
Node.js学习之内置模块fs用法示例
2020/01/22 Javascript
[01:18:35]DOTA2-DPC中国联赛 正赛 Elephant vs LBZS BO3 第一场 1月29日
2021/03/11 DOTA
python中使用百度音乐搜索的api下载指定歌曲的lrc歌词
2014/07/18 Python
Python中的zip函数使用示例
2015/01/29 Python
安装Python的web.py框架并从hello world开始编程
2015/04/25 Python
基于Python批量生成指定尺寸缩略图代码实例
2019/11/20 Python
PYQT5开启多个线程和窗口,多线程与多窗口的交互实例
2019/12/13 Python
家乐福巴西网上超市:Carrefour巴西
2016/10/31 全球购物
家居装修公司创业计划书范文
2014/03/20 职场文书
2015年文明创建工作总结
2015/04/30 职场文书
幸福来敲门观后感
2015/06/04 职场文书
巴黎圣母院读书笔记
2015/06/26 职场文书
2016入党积极分子党课学习心得体会
2015/10/09 职场文书
浅谈mysql执行过程以及顺序
2021/05/12 MySQL
Python之matplotlib绘制折线图
2022/04/13 Python