Temario del curso
PySpark y Aprendizaje Automático
Módulo 1: Fundamentos de Big Data y Spark
- Resumen del ecosistema de Big Data y el papel de Spark en las plataformas de datos modernas.
- Comprensión de la arquitectura de Spark: controlador, ejecutores, administrador de clústeres, evaluación perezosa (lazy evaluation), DAG y planificación de ejecución.
- Diferencias entre las APIs de RDD y DataFrame y cuándo utilizar cada enfoque.
- Creación y configuración de SparkSession, así como comprensión de los fundamentos de la configuración de aplicaciones.
Módulo 2: DataFrames en PySpark
- Lectura y escritura de datos desde fuentes y formatos empresariales (CSV, JSON, Parquet, Delta).
- Trabajo con DataFrames de PySpark: transformaciones, acciones, expresiones de columnas, filtrado, uniones y agregaciones.
- Implementación de operaciones avanzadas como funciones de ventana, manejo de marcas de tiempo y trabajo con datos anidados.
- Aplicación de comprobaciones de calidad de datos y escritura de código PySpark reutilizable y mantenible.
Módulo 3: Procesamiento Eficiente de Grandes Conjuntos de Datos
- Comprensión de los fundamentos del rendimiento: estrategias de particionamiento, comportamiento del shuffle (mezcla), caché y persistencia.
- Uso de técnicas de optimización, incluidas uniones de difusión (broadcast joins) y análisis del plan de ejecución.
- Procesamiento eficiente de grandes conjuntos de datos y mejores prácticas para flujos de trabajo de datos escalables.
- Comprensión de la evolución del esquema y formatos de almacenamiento modernos utilizados en entornos empresariales.
Módulo 4: Ingeniería de Características a Gran Escala
- Realización de ingeniería de características con Spark MLlib: manejo de valores faltantes, codificación de variables categóricas y escalado de características.
- Diseño de pasos de preprocesamiento reutilizables y preparación de conjuntos de datos para flujos de aprendizaje automático.
- Introducción a la selección de características y manejo de conjuntos de datos desequilibrados.
Módulo 5: Aprendizaje Automático con Spark MLlib
- Comprensión de la arquitectura de MLlib y el patrón Estimador/Transformador.
- Entrenamiento de modelos de regresión y clasificación a gran escala (Regresión Lineal, Regresión Logística, Árboles de Decisión, Bosque Aleatorio).
- Comparación de modelos e interpretación de resultados en flujos de trabajo de aprendizaje automático distribuidos.
Módulo 6: Flujos de Trabajo de Aprendizaje Automático End-to-End
- Construcción de flujos de trabajo completos de aprendizaje automático que combinan preprocesamiento, ingeniería de características y modelado.
- Aplicación de estrategias de división de conjuntos de entrenamiento, validación y prueba.
- Realización de validación cruzada y ajuste de hiperparámetros mediante búsqueda en cuadrícula y búsqueda aleatoria.
- Estructuración de experimentos de aprendizaje automático reproducibles.
Módulo 7: Evaluación de Modelos y Toma de Decisiones Prácticas en ML
- Aplicación de las métricas de evaluación adecuadas para problemas de regresión y clasificación.
- Identificación de sobreajuste (overfitting) e insuficiente ajuste (underfitting), así como toma de decisiones prácticas en la selección de modelos.
- Interpretación de la importancia de las características y comprensión del comportamiento del modelo.
Módulo 8: Prácticas de Producción y Entornos Empresariales
- Persistencia y carga de modelos en Spark.
- Implementación de flujos de trabajo de inferencia por lotes (batch inference) sobre grandes conjuntos de datos.
- Comprensión del ciclo de vida del aprendizaje automático en entornos empresariales.
- Introducción a conceptos de versionado, seguimiento de experimentos y estrategias básicas de prueba.
Resultado Práctico
- Capacidad para trabajar de forma autónoma con PySpark.
- Capacidad para procesar grandes conjuntos de datos de manera eficiente.
- Capacidad para realizar ingeniería de características a gran escala.
- Capacidad para construir flujos de trabajo de aprendizaje automático escalables.
Requerimientos
Los participantes deben tener la siguiente formación:
Conocimientos básicos de programación en Python, incluyendo el uso de funciones, estructuras de datos y bibliotecas.
Comprensión fundamental de los conceptos de análisis de datos, como conjuntos de datos, transformaciones y agregaciones.
Conocimientos básicos de SQL y conceptos de datos relacionales.
Comprensión introductoria de los conceptos de aprendizaje automático, como conjuntos de datos de entrenamiento, características y métricas de evaluación.
Se recomienda familiaridad con entornos de línea de comandos y prácticas básicas de desarrollo de software.
La experiencia con Pandas, NumPy o bibliotecas similares de procesamiento de datos es útil pero no obligatoria.
Reseñas (1)
Me gustó que fuera práctico. Amé aplicar el conocimiento teórico con ejemplos prácticos.
Aurelia-Adriana - Allianz Services Romania
Curso - Python and Spark for Big Data (PySpark)
Traducción Automática