目录
11/30/2021
数据操作
练习
11/30/2021
数据操作
练习
- 运行本节中的代码。将本节中的条件语句
X == Y 更改为X < Y 或X > Y ,然后看看你可以得到什么样的张量。
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]])
print(X)
print(Y)
运行结果
tensor([[ 0., 1., 2., 3.],
[ 4., 5., 6., 7.],
[ 8., 9., 10., 11.]])
tensor([[2., 1., 4., 3.],
[1., 2., 3., 4.],
[4., 3., 2., 1.]])
X==Y
tensor([[False, True, False, True],
[False, False, False, False],
[False, False, False, False]])
?将X==Y改为X>Y后的结果
tensor([[False, False, False, False],
[False, False, False, False],
[False, False, False, False]])
改为X< Y的结果
tensor([[True, True, True, True],
[True, True, True, True],
[True, True, True, True]])
?对比== ,<, > 三种情况的输出结果可以得到一个结论 张量中相应项的比较<和=均可以得到true的结果,>则为false。
????????2.用其他形状(例如三维张量)替换广播机制中按元素操作的两个张量。结果是否与预期相同?
a = torch.arange(10).reshape((10, 1))
b = torch.arange(3).reshape((1, 3))
a, b
?生成的张量如下
(tensor([[0],
[1],
[2],
[3],
[4],
[5],
[6],
[7],
[8],
[9]]), tensor([[0, 1, 2]]))
广播机制作用后的结果:预测为将张量a的每一行复制3份形成10行3列没一行元素都相同的张量,将张量b复制10行形成10行3列的张量,并将对应项相加得到结果,符合预期。
tensor([[ 0, 1, 2],
[ 1, 2, 3],
[ 2, 3, 4],
[ 3, 4, 5],
[ 4, 5, 6],
[ 5, 6, 7],
[ 6, 7, 8],
[ 7, 8, 9],
[ 8, 9, 10],
[ 9, 10, 11]])
|