pytorch中Tensor(张量)

张量的定义

对于Tensor,有没有一种更确切的标识来解释它,什么是张量?
如图所示:
pytorch中Tensor(张量)_第1张图片
张量是一个任意维数组,它是标量、矩阵、向量的高维拓展。

张量的创建

1、可以通过列表创建
pytorch中Tensor(张量)_第2张图片
2、可以通过元组创建
pytorch中Tensor(张量)_第3张图片
3、通过Numpy库来进行创建
pytorch中Tensor(张量)_第4张图片
而对于张量的类型,函数type()不能够识别出张量内部的数据类型到底是什么,只能识别是张量(Tensor)类型,如果想要知道变量具体是哪一种类型,需要用dtype()方法来查看变量的具体类型。
pytorch中Tensor(张量)_第5张图片

张量的维度

张量是具有维度信息的,例如下边所提到的这些变量,可以通过ndim这个属性来查看张量的维度信息。
pytorch中Tensor(张量)_第6张图片
还可以通过张量的shape和size属性来查看向量的形状。
pytorch中Tensor(张量)_第7张图片
t1可以理解为:该向量的形状是1行2列。
t2可以理解为:包含两个一维的向量,每个向量又都是1行3列。
t3可以理解为:包含了两个二维矩阵,每个矩阵又是2行2列。
通过张量的内置方法numel()可以查看张量的个数。
pytorch中Tensor(张量)_第8张图片
如果想要将一个任意维度的张量转成一维的张量,可以使用flatten()函数
pytorch中Tensor(张量)_第9张图片
对于张量的变形,需要用的函数是reshape()
pytorch中Tensor(张量)_第10张图片
squeeze函数的作用是压缩张量,例如去掉维数为1 的维度:
pytorch中Tensor(张量)_第11张图片
与squeeze函数对应的还有unsqueeze函数,它的作用是给指定位置加上维度:
pytorch中Tensor(张量)_第12张图片
将张量转化为数值所用的函数是item():
pytorch中Tensor(张量)_第13张图片

你可能感兴趣的:(机器学习,pytorch,python)