3 Punkte von GN⁺ 2023-08-14 | 1 Kommentare | Auf WhatsApp teilen
  • Laut CMU handelt es sich um den Vorlesungsplan zu Deep-Learning-Systemen vom 26.8. bis 8.12.; Datum, Thema, Dozent, Folien und Links zu den Videos der Version von 2022 sind an einem Ort zusammengefasst
  • Einige Vorlesungstermine können sich ändern, und Folien künftiger Vorlesungen stammen aus früheren Versionen und werden vor der jeweiligen Sitzung aktualisiert
  • Der erste Teil beginnt mit Einführung und ML-Auffrischung und führt weiter zu automatischer Differenzierung, Optimierung, Abstraktionen und Implementierung von Neural-Network-Bibliotheken sowie zur Implementierung von Convolutional Networks
  • Der mittlere und spätere Teil behandelt Hardware-Beschleunigung für lineare Algebra, GPUs, RNNs, Transformers, Training großer Modelle, generative Modelle, Anpassung vortrainierter Modelle und Model Deployment
  • Online-Vorlesungsvideos werden zusammen mit den Folien veröffentlicht, sobald sie verfügbar sind; der Zeitplan umfasst außerdem vorlesungsfreie Tage wegen Fall Break, Democracy Day und Thanksgiving sowie Präsentationen von Studierendenprojekten

Bereitstellung der Materialien und Zeitraum des Plans

  • Die gesamte Vorlesung wird als vorläufiger Zeitplan bereitgestellt
    • Der genaue Zeitpunkt einiger Vorlesungen kann sich ändern
    • Folien künftiger Vorlesungen sind Materialien aus früheren Versionen der Vorlesung; aktualisierte Folien werden vor der jeweiligen Sitzung veröffentlicht
    • Öffentlich verfügbare Online-Vorlesungsvideos werden zusammen mit den Folien veröffentlicht, sobald sie verfügbar sind
  • Die Tabelle enthält nach CMU-Zeit Datum, Vorlesungsnummer und Thema, Dozent, Folien sowie Videos der Version von 2022
  • Als Dozenten sind Dettmers, Chen, Both und Students aufgeführt

Ablauf der Vorlesung

  • Von Ende August bis Mitte September werden die Grundlagen von Deep-Learning-Systemen behandelt
  • Von Mitte September bis Anfang Oktober erweitert sich der Stoff auf Modelltraining und Framework-Implementierung
    • 9/11: Optimization
    • 9/16: Neural Network Library Abstractions
    • 9/18: Normalization, Dropout, + Implementation
    • 9/23: NN Library Implementation
    • 9/25: Convolutional Networks
  • Von Ende September bis Mitte Oktober geht es um Hardware-Beschleunigung und CNN-Implementierung
  • Ende Oktober werden Sequence Modeling und Transformers behandelt
  • Ab November folgen große Modelle, generative Modelle, Deployment und Projektpräsentationen
    • Am 4.11. findet wegen Democracy Day keine Vorlesung statt
    • 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
    • Am 27.11. findet wegen Thanksgiving keine Vorlesung statt
    • 12/2, 12/4 und 12/8 sind für Präsentationen von Studierendenprojekten vorgesehen

1 Kommentare

 
GN⁺ 2023-08-14
Hacker-News-Kommentare
  • Ich mag die Stelle sehr, an der sich über Namen lustig gemacht wird, die im Deep Learning kaum Bedeutung haben, wie „keys“, „queries“ und „values“ in der Folie zu Self-Attention-Operationen.
    Auch im Kontext von LSTMs wird gespottet, man habe Namen wie „forget gate“, „input gate“ und „output gate“ hineingepackt; gerade durch solche Erklärungen bekomme ich aber eher das Gefühl, das Thema wirklich zu verstehen.
    Früher hatte ich das Gefühl, durch die unbeholfene Terminologie völlig in die falsche Richtung geführt worden zu sein.

    • Noch schlimmer wird es, wenn man sieht, wie die Machine-Learning-Community Begriffe aus der Neurowissenschaft nach Belieben übernimmt.
      Trotzdem finde ich es gut, einprägsame Namen zu haben, die man verwenden kann, wenn man Konzepte in Worten erklärt.
    • „forget gate“, „input gate“ und „output gate“ sind treffende Namen.
      cell_h = cell_(h-1) * forget_gate + tanh(linear(input_h)) * input_gate
      out_h = cell_h * output_gate
      Wie man sieht, maskiert forget_gate die Eingabe, indem es sie mit einer Zahl aus [0, 1] multipliziert; input_gate steuert die externe Eingabe, und output_gate steuert natürlich die Ausgabe.
    • Wenn man versteht, wofür sie stehen, leuchten die Namen ein. Mich würde interessieren, wie man sie sonst nennen sollte.
    • Interessant ist auch, wie Machine Learning statistische Terminologie auf nervige Weise verdreht.
  • Öffentlich zugängliche Lehrmaterialien fühlen sich wirklich erfreulich an.

  • Diese Vorlesung ist ziemlich einzigartig, weil sie eine Einführung in Machine-Learning-Kompilierung und -Deployment behandelt.

    • Der Stil des Dozenten Kolter hat mir wirklich gefallen, und ich mag diese Vorlesung besonders, weil auf jede Einheit Implementierungsvideos zusammen mit Notebook-Dateien folgen.
      In den meisten Deep-Learning-Vorlesungen wird die Implementierung den Übungsleitern überlassen, und sie wird weder aufgezeichnet noch veröffentlicht; diese Vorlesung ist eine Ausnahme.
      Eine weitere gute Ausnahme ist die NYU-Deep-Learning-Vorlesung von Yann LeCun und Alfredo Canziani [0], bei der ebenfalls alle praktischen Sitzungen, die „Practica“, aufgezeichnet und veröffentlicht werden. Canziani ist ein hervorragender Lehrer.
      [0]: https://atcold.github.io/pytorch-Deep-Learning
  • Gut. Die Deep-Learning-Vorlesung der VU Amsterdam auf YouTube gefällt mir ebenfalls ziemlich gut.
    Sie hat weniger Fokus auf Systemthemen, ist aber als Einführung in modernes neuronales Machine Learning sehr gut.

  • Ich frage mich, ob diese Vorlesung diesen Herbst wieder angeboten wird. Es scheint, als müsse man eingeschrieben sein, um Aufgaben abzugeben; ich hoffe also, dass sie bald wieder startet.

  • Es ist spannend zu sehen, wie MLSys wächst.
    Deep-Learning-Methoden sind rechnerisch so aufwendig, dass viele Fortschritte durch neue Algorithmen und Optimierungsmethoden entstanden sind.

  • Ich habe diese Vorlesung belegt, als sie an der CMU zum ersten Mal angeboten wurde; sie war wirklich hervorragend und sehr gut strukturiert.

  • Mir gefällt, dass Hardwarebeschleunigung behandelt wird. Das ist eine Lücke in meinem Wissen, und ich wollte anfangen, diesen Bereich zu verstehen.