Módulo: Datos y preprocesado con tf.data
Este módulo forma parte del curso de TensorFlow. .
Construir pipelines de datos eficientes es tan importante como el diseño del modelo. tf.data es la API de TensorFlow para crear y gestionar flujos de datos de alto rendimiento que alimentan el entrenamiento con mínima latencia.
¿Por qué importa el pipeline de datos?
En proyectos de deep learning reales, la lectura y preprocesado de datos puede convertirse en el cuello de botella del entrenamiento: si la GPU espera datos, se desperdicia potencia de cómputo. tf.data resuelve esto con operaciones asíncronas, caché en memoria y prefetch automático.
Fuentes de datos soportadas
- Imágenes:
tf.keras.utils.image_dataset_from_directorydetecta clases por subdirectorio. - CSV y texto:
tf.data.experimental.CsvDatasetyTextLineDatasetpara datos tabulares y NLP. - TFRecord: formato binario eficiente para grandes datasets que no caben en memoria.
- NumPy y tensores:
tf.data.Dataset.from_tensor_slicespara datos ya cargados en RAM.
Transformaciones clave
| Transformación | Propósito |
|---|---|
| batch(N) | Agrupa elementos en lotes de tamaño N |
| shuffle(buffer_size) | Mezcla aleatoriamente para evitar sesgo de orden |
| prefetch(AUTOTUNE) | Precarga el siguiente lote mientras la GPU procesa el actual |
| cache() | Almacena el dataset en memoria tras la primera época |
| map(fn, AUTOTUNE) | Aplica preprocesado en paralelo |
Buenas prácticas
El orden recomendado de transformaciones es: carga → map (preprocesado) → cache → shuffle → batch → prefetch. Usar tf.data.AUTOTUNE en prefetch() y map() delega en TensorFlow la elección del número óptimo de elementos a paralelizar.
Otros módulos de este curso
Datos y preprocesado con tf.data
Todos los módulos del curso
Navega entre los módulos de TensorFlow
Datos y preprocesado con tf.data
Estás aquíExplora más sobre TensorFlow
Descubre más recursos de TensorFlow
Alan Sastre
Ingeniero de Software y formador, CEO en CertiDevs
Ingeniero de software especializado en Full Stack y en Inteligencia Artificial. Como CEO de CertiDevs, TensorFlow es una de sus áreas de expertise. Con más de 15 años programando, 6K seguidores en LinkedIn y experiencia como formador, Alan se dedica a crear contenido educativo de calidad para desarrolladores de todos los niveles.