Sistemas de aprendizaje profundo
(dlsyscourse.org)- Es un calendario de clases sobre sistemas de aprendizaje profundo de CMU, del 26/8 al 8/12, que reúne en un solo lugar fecha, tema, docente, diapositivas y enlaces a videos de la versión 2022
- Algunas fechas de las clases pueden cambiar, y las diapositivas de clases futuras son materiales de versiones anteriores que se actualizarán antes de cada clase
- La primera parte comienza con una introducción y un repaso de ML, y continúa con diferenciación automática, optimización, abstracciones e implementación de bibliotecas de redes neuronales, e implementación de redes convolucionales
- La parte media y final cubre aceleración de hardware para álgebra lineal, GPU, RNN, Transformers, entrenamiento de modelos a gran escala, modelos generativos, personalización de modelos preentrenados y despliegue de modelos
- Los videos de las clases en línea se publicarán junto con las diapositivas cuando estén disponibles, y el calendario también incluye recesos por Fall Break, Democracy Day y Thanksgiving, además de presentaciones de proyectos estudiantiles
Forma de entrega de los materiales y alcance del calendario
- El curso completo se ofrece como calendario tentativo
- El momento exacto de algunas clases puede cambiar
- Las diapositivas de clases futuras corresponden a materiales de versiones anteriores, y antes de cada clase se publicarán diapositivas actualizadas
- Los videos públicos de las clases en línea se publicarán junto con las diapositivas cuando estén disponibles
- La tabla incluye fechas según CMU, número y tema de la clase, docente, diapositivas y video de la versión 2022
- Los docentes figuran como Dettmers, Chen, Both y Students
Secuencia de las clases
- Desde fines de agosto hasta mediados de septiembre se cubren los fundamentos de los sistemas de aprendizaje profundo
- 8/26: Introduction / Logistics
- 8/28: ML Refresher / Softmax Regression
- 9/2: Manual Neural Networks / Backprop
- 9/4: Automatic Differentiation
- 9/9: Automatic Differentiation Implementation
- Desde mediados de septiembre hasta comienzos de octubre se amplía hacia el entrenamiento de modelos y la implementación de frameworks
- 9/11: Optimization
- 9/16: Neural Network Library Abstractions
- 9/18: Normalization, Dropout, + Implementation
- 9/23: NN Library Implementation
- 9/25: Convolutional Networks
- Desde fines de septiembre hasta mediados de octubre se cubren la aceleración de hardware y la implementación de CNN
- 9/30: Hardware Acceleration for Linear Algebra
- 10/2: Hardware Acceleration + GPUs
- 10/7: Hardware Acceleration Implementation
- 10/9: Convoluations Network Implementation
- El 10/14 y el 10/16 no hay clases por Fall Break
- A fines de octubre se cubren el modelado de secuencias y Transformers
- 10/21: Sequence Modeling + RNNs
- 10/23: Sequence Modeling Implementation
- 10/28: Transformers and Autoregressive Models
- 10/30: Transformers Implementation
- A partir de noviembre continúa con modelos a gran escala, modelos generativos, despliegue y presentaciones de proyectos
- El 11/4 no hay clases por Democracy Day
- 11/6: Training Large Models
- 11/11: Generative Models
- 11/13: Generative Models Implementation
- 11/18: Customize Pretrained Models
- 11/20: Model Deployment
- 11/25: Future Directions / Q&A
- El 11/27 no hay clases por Thanksgiving
- El 12/2, 12/4 y 12/8 están programadas las presentaciones de proyectos estudiantiles
1 comentarios
Opiniones de Hacker News
Me encantó la parte que se burla de nombres casi sin significado en deep learning, como “keys”, “queries” y “values” en la diapositiva de operación de autoatención
También se burla de que, en el contexto de LSTM, metieron nombres como “forget gate”, “input gate” y “output gate”; pero, más bien, gracias a este tipo de explicación me da confianza de que sí entiendo bien el tema
Antes sentía que la terminología torpe me había llevado por un camino totalmente equivocado
Aun así, creo que está bien tener nombres fáciles de recordar para poder explicar conceptos con palabras
cell_h = cell_(h-1) * forget_gate + tanh(linear(input_h)) * input_gateout_h = cell_h * output_gateComo se puede ver,
forget_gatemultiplica por un número en[0, 1]para enmascarar la entrada,input_gatecontrola la entrada externa youtput_gate, por supuesto, controla la salidaLos materiales educativos abiertos se sienten realmente alentadores
Este curso es bastante único porque cubre una introducción a la compilación y despliegue de machine learning
En la mayoría de los cursos de deep learning dejan la implementación a los ayudantes y no la graban ni la publican, pero este curso es una excepción
Otra buena excepción es el curso de Deep Learning de NYU de Yann LeCun y Alfredo Canziani [0], donde también se graban y publican todas las sesiones prácticas, llamadas “Practica”. Canziani es un excelente profesor
[0]: https://atcold.github.io/pytorch-Deep-Learning
Está bueno. También me gusta bastante el curso de deep learning de VU Amsterdam en YouTube
Tiene menos foco en sistemas, pero como introducción al machine learning moderno basado en redes neuronales es muy bueno
Me pregunto si volverán a ofrecer este curso este otoño. Parece que hay que inscribirse para entregar las tareas, así que ojalá lo abran de nuevo pronto
Me entusiasma ver cómo crece MLSys
Como los métodos de deep learning requieren muchísima computación, muchos avances han venido de nuevos algoritmos y métodos de optimización
Tomé este curso cuando se ofreció por primera vez en CMU, y fue un curso realmente excelente y bien estructurado
Me gusta que cubra aceleración por hardware. Es un hueco en mis conocimientos y era un área en la que quería empezar a entender