Los tensores son las estructuras de datos básicas utilizadas de forma general en Deep Learning, hasta el punto que ha dado nombre a una de las herramientas de este tutorial. Con estos tensores alimentaremos nuestra red. Debemos tener en cuenta que las operaciones realizadas por una red neuronal son realmente reducibles a operaciones aritméticas con tensores. Será importante conocer bien sus parámetros de cara a ponerse con la programación de los modelos.
Un tensor no deja de ser una matriz y como tal tiene dimensiones, que en el campo del Deep Learning se denominan ejes. Este parámetro da nombre a los diferentes tipos de tensor. En caso de tratarse de un tensor con un único dato sin ningún eje este se denomina escalar. Llamamos vectores a las cadenas de datos unidimensionales y matrices cuando son dos ejes. El número de ejes determina el rango del tensor, y pueden existir tensores de mayor rango, aunque en la práctica es raro ver tensores de más de cinco ejes. Una fotografía a color por ejemplo es un tensor de rango 3, es decir, con tres ejes: alto, ancho y los canales de colores.
Cada dato individual dentro de un tensor será definido por una terna de números, tantas como ejes tenga el tensor. Téngase en cuenta que siempre se cuenta incluyendo el 0.
La forma nos indica el número de elementos en cada eje. Por ejemplo, en una fotografía una forma podría ser [850, 490, 3], es decir, 850 píxeles de ancho, 490 de alto y tres valores por píxel que serían los tres colores de RGB. De forma implícita, también se nos está indicando el rango del tensor: tres parámetros, rango 3.