1.torch.tensor()
用户自己创建一个张量,且张量内的值都是确定值。如下:
x=torch.tensor([[[2,3],[4,5]],[[6,7],[8,9]]])
print(x)
输出为:
tensor([[[2, 3],
[4, 5]],
[[6, 7],
[8, 9]]])
2.torch.randn()
torch.randn(n1,n2,......,n3,n4)
构建一个张量,形状由括号内数字大小和数量决定,其中每个元素都从均值为0、标准差为1的标准高斯分布(正态分布)中随机采样。如下:
x=torch.randn(2,3)
y=torch.randn(2,2,2)
print(x)
print(y)
输出为:
tensor([[ 0.6409, 0.5946, 0.3098],
[ 1.0964, 0.9432, -0.1990]])
tensor([[[ 1.4089, -2.4086],
[ 0.8739, -1.3335]],
[[ 0.1143, 0.9053],
[-0.2677, 1.2597]]])
3.print中换行
关于在一个完整的print语句中用 \n 换行,需要注意的是 \n 是被" "或' '包含在内的输出内容的一部分,不是具体的值,不能脱离" "或' '使用, 下面举个例子:
x = torch.tensor([1,2,3,4])
print('HELLO\n',x[0],'\n',x[1],'\n',x[2],'\n')
注意在值的输出之间用逗号“ , ”分开 ,输出结果如下:
HELLO
tensor(1)
tensor(2)
tensor(3)
需要注意的是 r' ' 表示 ' ' 内的字符串默认不转义,如下:
x = torch.tensor([1,2,3,4])
print('HELLO\n',x[0],r'\n',x[1],'\n',x[2],R'\n')
HELLO
tensor(1) \n tensor(2)
tensor(3) \n
4.任意具有相同形状的张量之间的运算
标准算术运算符 + ,- ,* ,/ ,** x**y 意义是 x的y次方 即求幂运算 如下:
x = torch.tensor([1.0, 2, 4, 8])
y = torch.tensor([2, 2, 2, 2])
print(x + y,'\n',x - y,'\n',x * y,'\n', x / y,'\n', x ** y)
输出为:
tensor([ 3., 4., 6., 10.])
tensor([-1., 0., 2., 6.])
tensor([ 2., 4., 8., 16.])
tensor([0.5000, 1.0000, 2.0000, 4.0000])
tensor([ 1., 4., 16., 64.])