PyTorch中Tensor的数据类型和运算的使用


Posted in Python onSeptember 03, 2020

     在使用Tensor时,我们首先要掌握如何使用Tensor来定义不同数据类型的变量。Tensor时张量的英文,表示多维矩阵,和numpy对应,PyTorch中的Tensor可以和numpy的ndarray相互转换,唯一不同的是PyTorch可以在GPU上运行,而numpy的ndarray只能在cpu上运行。 

       常用的不同数据类型的Tensor,有32位的浮点型torch.FloatTensor,   64位浮点型 torch.DoubleTensor,   16位整形torch.ShortTensor,    32位整形torch.IntTensor和64位整形torch.LongTensor

 一:Tensor的数据类型

1  torch.FloatTensor:用于生成数据类型为浮点型的Tensor,传递给torch.FloatTensor的参数可以是一个列表,也可以是一个维度值

PyTorch中Tensor的数据类型和运算的使用

2:torch.IntTensor:用于生成数据类型为整形的Tensor,传递给torch.IntTensor的参数可以是一个列表,也可以是一个维度值

PyTorch中Tensor的数据类型和运算的使用

3:torch.rand:用于生成数据类型为浮点型且维度指定的随机Tensor,和在NumPy中使用的numpy.rand生成随机数的方法类似,随机生成的浮点数据在0-1区间均匀分布

PyTorch中Tensor的数据类型和运算的使用

4:torch.randn:用于生成数据类型为浮点型且维度指定的随机Tensor,和在NumPy中使用numpy.randn生成随机数的方法类似,随机生成的浮点数的取值满足均值为0,方差为1的正态分布

PyTorch中Tensor的数据类型和运算的使用

5:torch.range:用于生成数据类型为浮点型且自定义起始范围和结束范围的Tensor,所以传递给torch.range的参数有三个,分别是范围的起始值,范围的结束值和步长,其中,步长用于指定从起始值到结束值得每步得数据间隔

二:Tensor的运算

       通过对Tensor数据类型的变量进行运算,来组合一些简单或者复杂的算法,常用的Tensor运算如下。

1.torch.abs:将参数传递到torch.abs后返回输入参数的绝对值作为输出,输入参数必须是一个Tensor数据类型的变量。

2.torch.add:将参数传递到torch.add后返回输入参数的求和结果作为输出,输入参数可以全部是Tensor数据类型的变量,也可以一个是Tensor数据类型的变量,另一个是标量。

PyTorch中Tensor的数据类型和运算的使用

3.torch.clamp:对输入参数按照自定义的范围进行裁剪,最后将参数裁剪的结果作为输出。所以输入参数一共有三个,分别是需要进行裁剪的一共三个,分别是需要进行裁剪的Tensor数据类型的变量,裁剪的上边界,下边界。过程是,让变量的每个元素分别和上下边界比较,如果小于下边界,该元素就被重写下边界的值,如果大于上边界,该元素就被重写上边界的值。

PyTorch中Tensor的数据类型和运算的使用

4.torch.div:将参数传递到torch.div后返回输入参数的求商结果作为输出,同样,参与运算的参数可以全部是Tensor数据类型的变量,也可以是Tensor数据类型的变量和标量的组合

PyTorch中Tensor的数据类型和运算的使用

5.torch.mul:将参数传递到torch.mul后返回输入参数求积的结果作为输出,参与运算的参数可以全部是Tensor数据类型的变量,

也可以是Tensor数据类型的变量和标量的组合

6.torch.pow:将参数传递到torch.pow后返回输入参数的求幂结果作为输出,参与运算的参数可以全部是Tensor数据类型的变量,

也可以是Tensor数据类型的变量和标量的组合

就是a的b次方

PyTorch中Tensor的数据类型和运算的使用

7.torch.mm:将参数传递到torch.mm后返回输入参数的求积结果作为输出,不过这个求积结果的方式和之前的torch.mul运算方式不一样,toch.mm运用矩阵之间的乘法法则进行计算,所以被传入的参数会被当作矩阵进行处理,参数的维度自然也要满足矩阵乘法的前提条件,即前一个矩阵的行数必须和后一个矩阵的列数相等,否则不能计算。

8.torch.mv:将参数传递到torch.mv后返回输入参数的求积结果作为输出,torch.mv运用矩阵与向量之间的乘法规则进行计算,被传入的第一个参数代表矩阵,第二个参数代表向量,顺序不能颠倒

PyTorch中Tensor的数据类型和运算的使用

到此这篇关于PyTorch中Tensor的数据类型和运算的使用的文章就介绍到这了,更多相关PyTorch Tensor数据类型和运算内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python 和 JS 有哪些相同之处
Nov 23 Python
浅谈使用Python内置函数getattr实现分发模式
Jan 22 Python
TensorFlow实现卷积神经网络
May 24 Python
python切片及sys.argv[]用法详解
May 25 Python
Django项目中model的数据处理以及页面交互方法
May 30 Python
Python shelve模块实现解析
Aug 28 Python
python机器学习实现决策树
Nov 11 Python
pytorch 自定义参数不更新方式
Jan 06 Python
python模拟实现斗地主发牌
Jan 07 Python
Python创建空列表的字典2种方法详解
Feb 13 Python
详解基于Jupyter notebooks采用sklearn库实现多元回归方程编程
Mar 25 Python
详解Django中views数据查询使用locals()函数进行优化
Aug 24 Python
python开发入门——set的使用
Sep 03 #Python
使用anaconda安装pytorch的实现步骤
Sep 03 #Python
解决Python安装cryptography报错问题
Sep 03 #Python
解决python打开https出现certificate verify failed的问题
Sep 03 #Python
详解torch.Tensor的4种乘法
Sep 03 #Python
详解pytorch tensor和ndarray转换相关总结
Sep 03 #Python
python开发入门——列表生成式
Sep 03 #Python
You might like
thinkphp的静态缓存用法分析
2014/11/29 PHP
Laravel框架查询构造器简单示例
2019/05/08 PHP
document.getElementById的简写方式(获取id对象的简略写法)
2010/09/10 Javascript
jQuery中:focus选择器用法实例
2014/12/30 Javascript
JavaScript必知必会(七)js对象继承
2016/06/08 Javascript
js实现可键盘控制的简单抽奖程序
2016/07/13 Javascript
深入理解JavaScript函数参数(推荐)
2016/07/26 Javascript
jQuery插件FusionWidgets实现的Cylinder图效果示例【附demo源码】
2017/03/23 jQuery
jQury Ajax使用Token验证身份实例代码
2017/09/22 Javascript
详解vue-loader在项目中是如何配置的
2018/06/04 Javascript
JavaScript实现连连看连线算法
2019/01/05 Javascript
实例讲解JS中pop使用方法
2019/01/27 Javascript
Node.js API详解之 util模块用法实例分析
2020/05/09 Javascript
javascript实现前端成语点击验证
2020/06/24 Javascript
WebPack工具运行原理及入门教程
2020/12/02 Javascript
Python压缩解压缩zip文件及破解zip文件密码的方法
2015/11/04 Python
python框架中flask知识点总结
2018/08/17 Python
python flask安装和命令详解
2019/04/02 Python
Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】
2019/05/23 Python
python使用writerows写csv文件产生多余空行的处理方法
2019/08/01 Python
python3.7 openpyxl 删除指定一列或者一行的代码
2019/10/08 Python
pytorch 实现打印模型的参数值
2019/12/30 Python
python GUI库图形界面开发之PyQt5时间控件QTimer详细使用方法与实例
2020/02/26 Python
Python如何给函数库增加日志功能
2020/08/04 Python
html5 touch事件实现触屏页面上下滑动(一)
2016/03/10 HTML / CSS
HTML5实践-图片设置成灰度图
2012/11/12 HTML / CSS
瑞典轮胎在线:Tirendo.se
2018/06/21 全球购物
应届毕业生的自我鉴定
2013/11/13 职场文书
语文教研活动总结
2014/07/02 职场文书
幼儿园中班区域活动总结
2014/07/09 职场文书
2015年生产车间工作总结
2015/04/22 职场文书
承诺书模板大全
2015/05/04 职场文书
刑事附带民事起诉状
2015/05/19 职场文书
2015年小学语文工作总结
2015/05/25 职场文书
元旦联欢晚会主持词
2015/07/01 职场文书
关于职业道德的心得体会
2016/01/18 职场文书