Tensores

Para aprovechar al máximo las capacidades de TensorFlow, es esencial comprender ¿Qué son los tensores?:

Los tensores son estructuras matemáticas que permiten modelar datos complejos en prácticamente cualquier disciplina (Matemáticas, Física, Economía, Biología, etc.). Y en programación son ampliamente utilizados para:

  1. Gráficos por computadora,
  2. Procesamiento de imágenes,
  3. Visión por computadora,
  4. Big Data,
  5. Aprendizaje profundo,
  6. Aprendizaje automático,
  7. Redes neuronales,
  8. Procesamiento de lenguaje natural (NLP),
  9. Robótica,
  10. etc....

Los tensores nos permiten organizar datos en una estructura de matriz n-dimensional.

Dimensionalidad:

  • Escalar: Tensor de rango 0 (un número).
  • Vector: Tensor de rango 1 (una lista de números).
  • Matriz: Tensor de rango 2 (una tabla de datos).
  • Tensor de rango N: Estructura con N dimensiones (3D, 4D, etc.).

Los tensores tienen 3 características:

  1. Rango: número de dimensiones.
    • Cada elemento en un tensor se puede acceder mediante índices en sus dimensiones.
  2. Forma: tamaño de las dimensiones.
  3. Tipo de datos.
    • Todos los elementos de un tensor tienen el mismo tipo.

Ejemplos:

  1. Una imagen en color se puede representar como un tensor 3D (altura, ancho, canales de color).
  2. Un video sería un tensor 4D al agregar la dimensión temporal.

Operaciones

Se pueden realizar cálculos matemáticos sobre tensores para manipular (preprocesar) y transformar datos de forma eficaz:

  1. Operaciones escalares:
    • Suma, Resta, Multiplicación y División entre un tensor y un escalar.
  2. Operaciones entre tensores.
  3. Transposición, clasificación, concatenación, apilamiento, división, codificación one-hot, relleno, recopilación, dispersión, reducción
  4. y Funciones no lineales (sigmoides, ReLU, etc.).

TensorFlow

Puedes crear tensores usando varias funciones de TensorFlow.