web-dev-qa-db-fra.com

Que signifie -1 en vue Pytorch?

Comme le dit la question, qu'est-ce que -1 faire dans pytorch view?

In [2]: a = torch.arange(1, 17)

In [3]: a
Out[3]:
tensor([  1.,   2.,   3.,   4.,   5.,   6.,   7.,   8.,   9.,  10.,
         11.,  12.,  13.,  14.,  15.,  16.])

In [7]: a.view(-1,1)
Out[7]:
tensor([[  1.],
        [  2.],
        [  3.],
        [  4.],
        [  5.],
        [  6.],
        [  7.],
        [  8.],
        [  9.],
        [ 10.],
        [ 11.],
        [ 12.],
        [ 13.],
        [ 14.],
        [ 15.],
        [ 16.]])

In [8]: a.view(1,-1)
Out[8]:
tensor([[  1.,   2.,   3.,   4.,   5.,   6.,   7.,   8.,   9.,  10.,
          11.,  12.,  13.,  14.,  15.,  16.]])

Est-ce (-1) générer une dimension supplémentaire? Se comporte-t-il de la même façon que numpy reshape-1?

5
Aerin

De la documentation PyTorch :

>>> x = torch.randn(4, 4)
>>> x.size()
torch.Size([4, 4])
>>> y = x.view(16)
>>> y.size()
torch.Size([16])
>>> z = x.view(-1, 8)  # the size -1 is inferred from other dimensions
>>> z.size()
torch.Size([2, 8])
1
Miladiouss