Pytorch中的Tensor(概要)

一、Tensor的数据类型

说明:

  • Tensor在 PyTorch中负责存储基本数据,PyTorch针对 Tensor也提供了丰富的函数和方法,Pytorch的Tensor与NumPy的数组具有极高的相似性;
  • Tensor是一种高级的API;
  • PyTorch中定义的Tensor数据变量可以在GPUs上进行运算,而且只需对变量做一些简单的类型转换就能够实现;

类型:

1、浮点型​

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

演示:

Pytorch中的Tensor(概要)_第1张图片

2、整型

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

演示:

Pytorch中的Tensor(概要)_第2张图片

3、随机数

(1)​torch.rand

用于浮点型且指定维度的随机Tensor,与NumPy中numpy.rand生成随机数的方法类似,随机生成的浮点数据在0~1区间均匀分布。

演示:

Pytorch中的Tensor(概要)_第3张图片

(2)​torch.randn

用于生成浮点型且指定维度的随机Tensor,与NumPy中numpy.randn生成随机数的方法类似,随机生成的浮点数的取值满足均值为0、方差为1的正太分布

4、零

torch.zeros​:用于生成数据类型为浮点型且维度指定的Tensor,不过这个浮点型的Tensor中的元素值全部为0。

演示:

Pytorch中的Tensor(概要)_第4张图片

 

二、Tensor的运算

(1)​torch.abs:返回输入参数的绝对值,输入参数必须是一个Tensor数据类型的变量。

Pytorch中的Tensor(概要)_第5张图片

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

Pytorch中的Tensor(概要)_第6张图片

(3)​torch.clamp​:对输入参数按照自定义的范围进行裁剪,最后将参数裁剪的结果作为输出。

输入参数一共有三个,分别是:需要进行裁剪的Tensor数据类型的变量裁剪的上边界裁剪的下边界

具体的裁剪过程是:使用变量中的每个元素分别和裁剪的上边界及裁剪的下边界的值进行比较,如果元素的值小于裁剪的下边界的值,该元素就被重写成裁剪的下边界的值;同理,如果元素的值大于裁剪的上边界的值,该元素就被重写成裁剪的上边界的值。

Pytorch中的Tensor(概要)_第7张图片

Pytorch中的Tensor(概要)_第8张图片

 

(4)​torch.div​:返回输入参数的求商结果,同样,参与运算的参数可以全部是Tensor数据类型的变量,也可以是Tensor数据类型的变量和标量的组合。

Pytorch中的Tensor(概要)_第9张图片

(5)​torch.mul​:返回输入参数求积的结果作为输出,参与运算的参数可以全部是Tensor数据类型的变量,也可以是Tensor数据类型的变量和标量的组合。

(6)​torch.pow​:返回输入参数的求幂结果作为输出,参与运算的参数可以全部是Tensor数据类型的变量,也可以是Tensor数据类型的变量和标量 的组合。

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

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(python,pytorch)