Uso de la vista en pytorch (tensor de refactorización)

La vista se usa para cambiar la forma del tensor en pytorch, que es simple y fácil de usar.

El uso de view en pytorch suele ser llamar a .view directamente después del nombre del tensor y luego poner la forma que desee. Como

tensor_name.view (forma)

Ejemplo :

1. Uso directo:

 >>> x = antorcha.randn (4, 4)
 >>> x.size ()
 antorcha.Size ([4, 4])
 >>> y = x.view (16)
 >>> y.size ()
 antorcha.Tamaño ([16])

2. Haga hincapié en el tamaño de una determinada dimensión:

>>> z = x.view (-1, 8) # el tamaño -1 se infiere de otras dimensiones
>>> z.size ()
antorcha.Size ([2, 8])

3. Enderezar el tensor: (rellenar directamente -1 significa enderezar, equivalente a tensor_name.flatten ())

 >>> y = x.view (-1)
 >>> y.size ()
 antorcha.Tamaño ([16])

4. No cambie la disposición de la memoria al realizar la transformación de dimensión            

>>> a = antorcha.randn (1, 2, 3, 4)
>>> a.size ()
antorcha.Size ([1, 2, 3, 4])
>>> b = a.transpose (1, 2) # Intercambia 2da y 3ra dimensión
>>> b.size ()
antorcha.Size ([1, 3, 2, 4])
>>> c = a.view (1, 3, 2, 4) # No cambiar el diseño del tensor en la memoria
>>> c.size ()
antorcha.Size ([1, 3, 2, 4])
>>> antorcha.equal (b, c)

Falso

Tenga en cuenta que el Falso final no es equivalente en los tensores by c . De esto podemos ver que la función de vista, como su nombre indica, solo cambia el "aspecto", pero no cambia la disposición de los tensores en la memoria .

Supongo que te gusta

Origin blog.csdn.net/leviopku/article/details/108470760
Recomendado
Clasificación