- 基础数据操作
x=torch.arange(num)
x.shape //每个张量的形状
x.reshape(n1,n2,...,nm)
torch.zeros(n1,n2,...,nm)
torch.ones(n1,n2,...,nm)
torch.randn(n1,n2,...,nm)//正态分布随机数
torch.tensor(vector1,vector2,...) //手动将向量变成张量
X=torch.arange(12,dtype=torch.float32).reshape((3,4))
Y=torch.tensor([2.0,1,4,3],[1,2,3,4],[4,3,2,1,])
torch.cat((X,Y),dim=0) //0轴为列
torch.cat((X,y),dim=1) //1轴为行
X.sum() //最终形成一个元素
-
张量机制
可以看到,a,b两个张量形状不一样,但是却能够直接相加a+b
这里的直接相加是pytorch进行了操作,他将a与b变得形状相同了
这里的操作是将a行列复制,变成了2列,即为3x2的矩阵
将b进行行复制,变成了3行,即为3x2的矩阵 -
索引和切片
X:
当[]中只有一个数时,则是按照0轴取,0轴是列,即可以将X看作:
X=[a1,a2,a3]
a1=[0,1,2,3],a2=[4,5,6,7],a3=[8,9,10,11]
那么每取一个就是取出一个ai出来