¿Cómo convertir Numpy Array a Tensor?

El método tf.convert_to_tensor() de la biblioteca TensorFlow se usa para convertir una array NumPy en un Tensor. La distinción entre una array NumPy y un tensor es que los tensores, a diferencia de las arrays NumPy, son compatibles con la memoria del acelerador, como la GPU, tienen una velocidad de procesamiento más rápida. hay algunas otras maneras de lograr esta tarea. 

función tf.convert_to_tensor():

Sintaxis:

tf.convert_to_tensor(valor, dtype=Ninguno, dtype_hint=Ninguno, nombre=Ninguno)

parámetros:

  • value : El tipo de un objeto con una función de conversión Tensor registrada.
  • dtype: por defecto es Ninguno. El tipo de elemento del tensor devuelto es opcional. Si no se especifica el tipo, el tipo se deduce del tipo de valor.
  • dtype_hint : por defecto Ninguno. Cuando dtype es None, este es un tipo de componente opcional para el tensor devuelto. Al convertir a un tensor, es posible que la persona que llama no tenga un tipo de datos en mente, por lo tanto, la sugerencia de tipo d se puede usar como preferencia. Este parámetro no tiene efecto si no es posible la conversión a sugerencia de dtype.
  • nombre : por defecto Ninguno. Si se produce un nuevo Tensor, este es un nombre opcional para usar.

Ejemplo 1:

Se importan los paquetes Tensorflow y NumPy. una array NumPy se crea utilizando el método np.array() . La array NumPy se convierte en tensor utilizando el método tf.convert_to_tensor() . se devuelve un objeto tensor. 

Python3

# import packages
import tensorflow as tf
import numpy as np
 
#create numpy_array
numpy_array = np.array([[1,2],[3,4]])
 
# convert it to tensorflow
tensor1 = tf.convert_to_tensor(numpy_array)
print(tensor1)

Producción:

tf.Tensor(
[[1 2]
 [3 4]], shape=(2, 2), dtype=int64)

Caso especial:

Si queremos que nuestro tensor sea de un tipo específico, debemos especificar el tipo sin pasar por el tipo de datos. en el siguiente ejemplo, float se especifica como dtype.

Python3

# import packages
import tensorflow as tf
import numpy as np
 
# create numpy_array
numpy_array = np.array([[1, 2], [3, 4]])
 
# convert it to tensorflow
tensor1 = tf.convert_to_tensor(numpy_array, dtype=float, name='tensor1')
tensor1

Salida :

<tf.Tensor: shape=(2, 2), dtype=float32, numpy=
array([[1., 2.],
       [3., 4.]], dtype=float32)>

Ejemplo 2:

También podemos usar el método tf.Variable() para convertir una array NumPy en un tensor. La función tf.Variable() también tiene parámetros dtype y name. Son opcionales y podemos especificarlos cuando sea necesario.

Python3

# import packages
import tensorflow as tf
import numpy as np
 
# create numpy_array
numpy_array = np.array([[1, 2], [3, 4]])
 
# convert it to tensorflow
tensor1 = tf.Variable(numpy_array, dtype=float, name='tensor1')
tensor1

Producción:

<tf.Variable 'tensor1:0' shape=(2, 2) dtype=float32, numpy=
array([[1., 2.],
       [3., 4.]], dtype=float32)>

Publicación traducida automáticamente

Artículo escrito por isitapol2002 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *