Los tensores constituyen la estructura de datos primaria que usa TensorFlow para operar con los gráficos computacionales. Por lo general, podemos declarar estos tensores como variables y alimentarlos como variables de posición, por tanto, sería interesante conocer como crear los tensores.
Cuando creamos un tensor y declaramos que es una variable, TensorFlow crea varias estructuras gráficas en nuestro gráfico de cálculo. También es importante señalar que con solo crear un tensor, TensorFlow no agrega nada al gráfico computacional.
Tensores fijos
¿cómo crear un tensor lleno de ceros?
¿cómo crear un tensor lleno de unos?
¿cómo crear un tensor con todos los números iguales?
¿cómo crear un tensor con números predeterminados?
Con tf.constant()
podemos imitar el comportamiento de tf.fill()
de la siguiente manera:
Tensores con la misma dimensión que otro
Secuencia de tensores
TensorFlow nos permite especificar tensores que contienen intervalos definidos. Las siguientes funciones se comportan de manera muy similar a las salidas range()
y salidas linspace()
de numpy.
Tensores con datos aleatorios
El siguiente ejemplo genera un tensor con números aleatorios a partir de una distribución uniforme. Es importante saber que esta distribución uniforme aleatoria genera datos donde se incluye el valor mínimo del intervalo (en este caso el 10) pero no el valor máximo (en este caso el 20)
Este otro ejemplo genera un tensor con números aleatorios a partir de una distribución normal, donde especificamos la media aritmética y la desviación estándar
También hay momentos en los que deseamos generar valores aleatorios normales que estén dentro de ciertos límites. La función tf.truncated_normal()
siempre selecciona valores normales dentro de dos desviaciones estándar de la media especificada.
También podríamos estar interesados en aleatorizar entradas de matrices. Para lograr esto, hay dos funciones que nos ayudan: random_shuffle()
y random_crop()
.
tf.random_crop()
nos será de mucha utilidad para el trabajo con imágenes