python pytorch view()関数
826 ワード
viewはtensorの形状を変えるもので、単純なものではなく複数行のtensorが1行につながっているだけで、viewの-1は適応的な調整です
A = torch.arange(0, 16)
print(A)
#tensor([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15])
B = A.view(-1,2)
print(B)
#tensor([[ 0, 1],
[ 2, 3],
[ 4, 5],
[ 6, 7],
[ 8, 9],
[10, 11],
[12, 13],
[14, 15]])
B = A.view(2,-1)
print(B)
#tensor([[ 0, 1, 2, 3, 4, 5, 6, 7],
[ 8, 9, 10, 11, 12, 13, 14, 15]])
C = A.view(-1,2,2)
print(C)
#tensor([[[ 0, 1],
[ 2, 3]],
[[ 4, 5],
[ 6, 7]],
[[ 8, 9],
[10, 11]],
[[12, 13],
[14, 15]]])
C = A.view(2,2,-1)
print(C)
#tensor([[[ 0, 1, 2, 3],
[ 4, 5, 6, 7]],
[[ 8, 9, 10, 11],
[12, 13, 14, 15]]])