Machine Learning en producción (curso de CMU)
(mlip-cmu.github.io)Curso de producción de machine learning de Carnegie Mellon University
-
Descripción general del curso
- Este curso aborda cómo construir, desplegar y mantener modelos de machine learning como productos de software.
- Cubre todo el ciclo de vida, incluyendo IA responsable, MLOps, seguridad operativa, ciberseguridad, equidad y explicabilidad.
- Está dirigido a estudiantes con experiencia en ciencia de datos y habilidades básicas de programación.
-
Objetivos del curso
- Aprender cómo convertir modelos de machine learning en productos, asegurar su calidad y operarlos y mantenerlos a gran escala.
- Fomentar la colaboración entre ingenieros de software y científicos de datos para construir un entendimiento mutuo necesario para desarrollar sistemas de ML.
- Es adecuado para estudiantes que estén considerando una carrera como ingenieros de ML.
-
Temas principales
- Diseño para predicciones erróneas y métodos para garantizar seguridad y protección.
- Diseño de interfaces de usuario y sistemas que puedan funcionar en entornos reales.
- Cómo desplegar y actualizar modelos de manera confiable.
- Cómo detectar problemas de calidad de datos, concept drift y bucles de retroalimentación.
- Cómo diseñar y probar sistemas de ML a gran escala.
- Cómo identificar y medir requisitos de calidad importantes más allá de la precisión predictiva del modelo, como equidad, explicabilidad, privacidad, robustez y seguridad.
-
Resultados de aprendizaje
- Analizar trade-offs al diseñar sistemas de producción que incluyan componentes de ML.
- Planificar los errores de los componentes de ML e implementar sistemas robustos.
- Diseñar infraestructura de datos y sistemas para la experimentación.
- Asegurar la calidad de todo el pipeline de ML.
- Considerar requisitos a nivel de sistema al construir productos complejos de ML.
- Comunicarse eficazmente en equipos multidisciplinarios.
-
Prácticas y proyecto
- Los estudiantes participan en un proyecto para construir, desplegar, evaluar y mantener un servicio de recomendación de películas para 1 millón de usuarios.
-
Clases y prácticas
- Las clases se imparten los lunes y miércoles, y las prácticas se realizan los viernes en distintos horarios.
- Se puede participar en actividades de clase a través de Slack, y las grabaciones de las clases están disponibles en Canvas.
-
Evaluación y tareas
- La evaluación incluye tareas individuales, proyecto grupal, examen parcial, participación, prácticas y quizzes de lectura.
- Cada tarea proporciona especificaciones claras y distribución de puntajes para que los estudiantes tengan expectativas bien definidas.
-
Trabajo en equipo y colaboración
- El proyecto en equipo se realiza en grupos de 3 a 5 estudiantes, y el trabajo en equipo es indispensable.
- Los equipos trabajan de forma independiente, y se recomienda la colaboración dentro de cada equipo.
-
Información adicional
- Los avisos importantes se comunican por Slack, y se pueden hacer preguntas por correo electrónico y por Slack.
- Los materiales del curso están publicados en GitHub y también se ofrecen a estudiantes que quieran aprender por su cuenta.
Este curso ofrece habilidades y conocimientos esenciales para estudiantes interesados en desarrollar productos de software con machine learning, y brinda la oportunidad de adquirir experiencia práctica mediante diversos casos reales y proyectos.
1 comentarios
Comentarios en Hacker News
Kafka, Docker, Kubernetes y Jenkins son herramientas estándar de la industria, y se siente refrescante que el enfoque esté en MLOps. Está bueno que no se queden solo en construir modelos, sino que también aborden cómo conectarlos con sistemas reales de producción. También impresiona que cubran explicabilidad, equidad y monitoreo.
Casi no hay contenido sobre calidad de datos y aparece recién en el capítulo 16... Me pregunto cuánta experiencia práctica en la industria tienen los autores. El 90% del tiempo se va en calidad y limpieza de datos.
¿Alguien conoce bibliografía o cursos sobre cómo construir infraestructura de clústeres para machine learning? Me interesa sobre todo la construcción y escalado de infraestructura de almacenamiento, así como enfoques de networking y scheduling.
Me pregunto si hay algún lugar donde seguir esto junto con otras personas que no sean estudiantes.
Me pregunto si cualquiera puede inscribirse o si hay que ser admitido en uno de los mejores programas de ciencias de la computación del país.
Qué bueno ver este curso aquí. Christian es una gran persona y hace un trabajo excelente. Conozco los inicios de este curso y del libro, y lo puedo recomendar ampliamente.
Llevo 9.5 años trabajando en plataformas y sistemas de ML en todo tipo de escalas. El material se ve excelente.
Interesante; revisé las prácticas y, como desarrollador full-stack sin mucha experiencia en LLM, ya conozco la mitad (git, flask, kafka, kubernetes) y lo demás es simplemente código. No hay matemáticas complejas relacionadas con ML.
Me gusta la idea de aprender un solo "Kubernetis".
Puede que esté subestimando la complejidad del curso, pero esto suena como un curso introductorio. Honestamente, la mayor parte del contenido, incluso las herramientas de explicación de modelos, se ve bastante simple. Me parece bueno que estén usando herramientas estándar de la industria para la mayoría de los casos de uso.