pytorch中沿着维度操作的理解torch.any 和 torch.sum 为列子
沿着某个维度操作,即压缩指定的维度,而其它维度保持不变
In [3]:
import torch
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"
a = torch.randint(0,10,[4,3]) < 5
a
torch.any(a,-1,True)
torch.any(a,0,True)
Out[3]:
tensor([[False, True, True],
[ True, False, True],
[False, False, True],
[ True, True, True]])
Out[3]:
tensor([[True],
[True],
[True],
[True]])
Out[3]:
tensor([[True, True, True]])
In [4]:
a = torch.randint(0,2,[4,3,3])
a
torch.any(a,1,True) #shape (4,1,3)
Out[4]:
tensor([[[1, 1, 1],
[0, 1, 0],
[1, 0, 1]],
[[1, 1, 0],
[1, 0, 1],
[1, 0, 0]],
[[1, 1, 1],
[1, 0, 0],
[0, 0, 1]],
[[1, 0, 1],
[1, 1, 1],
[1, 1, 0]]])
Out[4]:
tensor([[[True, True, True]],
[[True, True, True]],
[[True, True, True]],
[[True, True, True]]])
In [6]:
a = torch.randint(0,5,[4,3,3])
a
torch.sum(a,1,True)
Out[6]:
tensor([[[3, 4, 0],
[4, 4, 0],
[2, 2, 2]],
[[0, 0, 3],
[1, 3, 4],
[4, 3, 1]],
[[0, 2, 2],
[1, 3, 4],
[0, 3, 3]],
[[1, 2, 2],
[0, 0, 4],
[1, 1, 3]]])
Out[6]:
tensor([[[ 9, 10, 2]],
[[ 5, 6, 8]],
[[ 1, 8, 9]],
[[ 2, 3, 9]]])
知识是我们已知的
也是我们未知的
基于已有的知识之上
我们去发现未知的
由此,知识得到扩充
我们获得的知识越多
未知的知识就会更多
因而,知识扩充永无止境

浙公网安备 33010602011771号