Systèmes de deep learning
(dlsyscourse.org)- Selon le calendrier de la CMU du 26/8 au 8/12, le planning du cours sur les systèmes de deep learning regroupe en un seul endroit les dates, sujets, intervenants, diapositives et liens vers les vidéos de la version 2022
- Le calendrier de certains cours peut encore changer, et les diapositives des cours à venir sont celles d’une version précédente ; elles seront mises à jour avant chaque séance
- La première partie commence par une introduction et une révision du ML, puis enchaîne sur la différentiation automatique, l’optimisation, les abstractions et l’implémentation de bibliothèques de réseaux de neurones, puis l’implémentation de réseaux convolutifs
- La seconde moitié couvre l’accélération matérielle de l’algèbre linéaire, les GPU, les RNN, les Transformers, l’entraînement de grands modèles, les modèles génératifs, la personnalisation de modèles préentraînés et le déploiement de modèles
- Les vidéos du cours en ligne sont publiées avec les diapositives lorsqu’elles sont disponibles, et le calendrier inclut aussi les interruptions pour les vacances d’automne, le Democracy Day, Thanksgiving, ainsi que les présentations de projets étudiants
Modalités de publication des ressources et période couverte
- L’ensemble du cours est proposé comme calendrier provisoire
- La date exacte de certains cours peut être modifiée
- Les diapositives des cours à venir proviennent d’une version antérieure du cours, et des diapositives mises à jour seront publiées avant chaque séance
- Les vidéos publiques du cours en ligne sont publiées avec les diapositives lorsqu’elles sont disponibles
- Le tableau comprend les dates selon la CMU, le numéro et le sujet du cours, l’intervenant, les diapositives et les vidéos de la version 2022
- Les intervenants indiqués sont Dettmers, Chen, Both et Students
Déroulé du cours
- De fin août à mi-septembre, le cours couvre les bases des systèmes de deep learning
- 26/8: Introduction / Logistics
- 28/8: ML Refresher / Softmax Regression
- 2/9: Manual Neural Networks / Backprop
- 4/9: Automatic Differentiation
- 9/9: Automatic Differentiation Implementation
- De mi-septembre à début octobre, il s’étend à l’entraînement de modèles et à l’implémentation de frameworks
- 11/9: Optimization
- 16/9: Neural Network Library Abstractions
- 18/9: Normalization, Dropout, + Implementation
- 23/9: NN Library Implementation
- 25/9: Convolutional Networks
- De fin septembre à mi-octobre, il traite de l’accélération matérielle et de l’implémentation des CNN
- 30/9: Hardware Acceleration for Linear Algebra
- 2/10: Hardware Acceleration + GPUs
- 7/10: Hardware Acceleration Implementation
- 9/10: Convoluations Network Implementation
- Les 14/10 et 16/10, il n’y a pas de cours en raison des Fall Break
- Fin octobre, le cours aborde la modélisation de séquences et les Transformers
- 21/10: Sequence Modeling + RNNs
- 23/10: Sequence Modeling Implementation
- 28/10: Transformers and Autoregressive Models
- 30/10: Transformers Implementation
- À partir de novembre, il enchaîne sur les grands modèles, les modèles génératifs, le déploiement et les présentations de projets
- Le 4/11, il n’y a pas de cours en raison du Democracy Day
- 6/11: Training Large Models
- 11/11: Generative Models
- 13/11: Generative Models Implementation
- 18/11: Customize Pretrained Models
- 20/11: Model Deployment
- 25/11: Future Directions / Q&A
- Le 27/11, il n’y a pas de cours en raison de Thanksgiving
- Les 2/12, 4/12 et 8/12 sont consacrés aux présentations de projets étudiants
1 commentaires
Avis sur Hacker News
J’aime beaucoup la partie qui se moque des noms qui n’ont presque aucun sens en deep learning, comme « keys », « queries » et « values » dans la diapositive sur le calcul d’auto-attention
Dans le contexte des LSTM aussi, elle ironise sur des noms ajoutés comme « forget gate », « input gate » et « output gate » ; paradoxalement, ce genre d’explication donne confiance dans le fait qu’on comprend vraiment le sujet
Avant, j’avais l’impression d’avoir été complètement entraîné dans la mauvaise direction à cause d’une terminologie maladroite
Cela dit, je trouve quand même utile d’avoir des noms faciles à retenir pour expliquer les concepts avec des mots
cell_h = cell_(h-1) * forget_gate + tanh(linear(input_h)) * input_gateout_h = cell_h * output_gateComme on le voit,
forget_gatemasque l’entrée en la multipliant par un nombre dans[0, 1],input_gatecontrôle l’entrée externe, etoutput_gatecontrôle évidemment la sortieLes supports de cours publics font vraiment chaud au cœur
Ce cours est assez unique : c’est une introduction à la compilation et au déploiement en machine learning
Dans la plupart des cours de deep learning, l’implémentation est laissée aux assistants pédagogiques, sans enregistrement ni publication ; ce cours fait exception
Un autre bon contre-exemple est le cours NYU Deep Learning de Yann LeCun et Alfredo Canziani [0], où toutes les séances de travaux pratiques, les « Practica », sont également enregistrées et publiées. Canziani est un excellent enseignant
[0]: https://atcold.github.io/pytorch-Deep-Learning
Bien. J’aime aussi beaucoup le cours de deep learning de la VU Amsterdam sur YouTube
Il est moins centré sur les systèmes, mais c’est une très bonne introduction au machine learning moderne fondé sur les réseaux neuronaux
Je me demande si ce cours sera à nouveau proposé cet automne. Il semble qu’il faille être inscrit pour rendre les devoirs, donc j’espère qu’il rouvrira bientôt
C’est encourageant de voir MLSys se développer
Les méthodes de deep learning sont tellement coûteuses en calcul que beaucoup de progrès sont venus de nouveaux algorithmes et de nouvelles méthodes d’optimisation
J’ai suivi ce cours lorsqu’il a été proposé pour la première fois à CMU : c’était vraiment un excellent cours, très bien structuré
Le fait qu’il couvre l’accélération matérielle me paraît intéressant. C’est une lacune dans mes connaissances, et c’est un domaine que j’avais envie de commencer à comprendre