PyTorch - 几种形状的Tensor

Tensor常见的形式有哪些

  • 0: scalar 数值
  • 1: vector 向量
  • 2: matrix 矩阵
  • 3: n-dimensional tensor 高维张量
import torch
from torch import tensor

Scalar

通常就是一个数值

x = tensor(42.) # tensor(42.)
 
x.dim() # 0
 
2 * x # tensor(84.)
 
x.item() # 42.0

Vector

在深度学习中通常指特征。
例如词向量特征,某一维度特征等;例如: [-5., 2., 0.]

\[\vec{v} = \left[ v_1, v_2, \ldots, v_n \right] \]

v = tensor([1.5, -0.5, 3.0]) # tensor([ 1.5000, -0.5000,  3.0000])
 
v.dim() # 1
 
v.size() # torch.Size([3])

Matrix

  • 多个特征组合成矩阵(行和列)
  • 一般计算的都是矩阵,通常都是多维的
M = tensor([[1., 2.], [3., 4.]]) # tensor([[1., 2.], [3., 4.]])
 
M.matmul(M) #  tensor([[ 7., 10.],  [15., 22.]])
 
tensor([1., 0.]).matmul(M) # tensor([1., 2.])
 
M * M
'''
tensor([[ 1.,  4.],
            [ 9., 16.]])
'''
 
tensor([1., 2.]).matmul(M) #  tensor([ 7., 10.])

几种形状的Tensor

Scalar, vector, matrix, tensor - a drawing by Tai-Danae Bradley

posted @ 2021-03-01 22:16  月思  阅读(816)  评论(0编辑  收藏  举报