Kurs
KI in der 10. Klasse: Tiefes Lernen und multimodale KI
Baue und trainiere neuronale Netze in PyTorch für Bilder, Text und Ton.
Mach die Lektionen der Reihe nach. Am Ende kannst du die Ausgabe eines Neurons berechnen, die Aktivierungen ReLU, Sigmoid und Softmax vergleichen und den Vorwärtslauf eines kleinen Netzes mit NumPy schreiben. Du kannst einen Verlust wählen, den Gradientenabstieg und die Rückpropagation erklären und ein Skript mit der vollen Trainings- und Testschleife in PyTorch schreiben. Du kannst einen Bildklassifikator mit einem CNN trainieren, einen Stimmungsklassifikator trainieren, der positive von negativen Bewertungen unterscheidet, erklären, wie Aufmerksamkeit andere Tokens gewichtet, und kurze Tonclips klassifizieren. Du kannst Überanpassung verringern, ein vortrainiertes Modell auf neue Klassen feinjustieren, Fehler gruppieren und ihre Ursache finden und einen intelligenten Wildtiermonitor vorstellen, der an ungesehenen Bildern getestet ist.
So benutzt du diese Lektionen
- Fang bei der Lektion an, auf der Mach das steht. Geh weiter, wenn du die Zeile unter dem Titel allein machen kannst.
- Spiel zuerst die Spiele. Dann mach das Quiz. 8 von 10 richtig zum Bestehen. Die Arbeitsblätter sind auf Papier. Die Antworten sind unten.
- Jede Lektion baut auf der vorigen auf. Notiere jeden Trainingslauf: die Einstellungen, die Verlustkurve und den Testwert.
- Die Code-Lektionen nutzen Python und PyTorch in einem kostenlosen Online-Notizbuch mit einer GPU. Kleine Modelle und kleine Datensätze reichen. Nutze nur offene Datensätze, die du benutzen darfst, und trainiere nie mit Fotos von Menschen ohne ihre Erlaubnis.
Jede Lektion hat Spiele, Quiz und Arbeitsblätter.
0 von 36
Grundlagen neuronaler Netze
- 1NeuronenBerechne die Ausgabe eines Neurons aus Eingaben, Gewichten und Bias.
- Schreibe die gewichtete Summe plus Bias.
- Rechne sie von Hand für drei Eingaben.
- Rechne sie im Code mit einem Skalarprodukt.
- 2AktivierungenVergleiche die Aktivierungen ReLU, Sigmoid und Softmax.
- Zeichne jede Aktivierung.
- Erkläre, warum ein Netz eine nichtlineare Aktivierung braucht.
- Nutze Softmax, um Punkte in Wahrscheinlichkeiten zu verwandeln.
- 3Schichten und NetzeStapele Schichten zu einem Netz.
- Schreibe eine Schicht als Matrixmultiplikation.
- Verfolge die Form der Daten durch jede Schicht.
- Zähle die Parameter eines Netzes.
- 4Ein kleines NetzSchreibe den Vorwärtslauf eines kleinen Netzes mit NumPy.
- Baue ein Netz mit zwei Schichten in NumPy.
- Schicke einen Stapel Eingaben hindurch.
- Prüfe die Form der Ausgabe.
Neuronale Netze trainieren
- 5VerlustWähle einen Verlust für eine Aufgabe und berechne ihn.
- Nutze den mittleren quadratischen Fehler für Regression.
- Nutze Kreuzentropie für Klassifikation.
- Sag, was ein fallender Verlust bedeutet.
- 6GradientenabstiegErkläre, wie der Gradientenabstieg Gewichte bergab schiebt.
- Finde die Steigung einer Verlustkurve.
- Mach Schritte mit einer Lernrate.
- Sieh, was passiert, wenn die Rate zu groß oder zu klein ist.
- 7RückpropagationVerfolge die Rückpropagation des Fehlers zurück durch das Netz.
- Nutze die Kettenregel an einem winzigen Netz.
- Berechne einen Gradienten von Hand.
- Prüfe ihn gegen automatische Differentiation.
- 8Trainiere ein NetzTrainiere ein kleines Netz und zeichne den Verlust.
- Trainiere mit kleinen Stapeln.
- Zeichne Trainings- und Validierungsverlust.
- Stoppe, wenn der Validierungsverlust nicht mehr besser wird.
Bibliotheken für tiefes Lernen
- 9TensorenErstelle PyTorch-Tensoren und ändere ihre Form.
- Erstelle Tensoren und prüfe Form und Typ.
- Ändere die Form, staple und schneide sie.
- Schiebe Tensoren auf eine GPU.
- 10ModuleBaue ein Modell mit Modulen von torch.nn.
- Bilde eine Unterklasse von nn.Module.
- Nutze Linear- und Aktivierungsschichten.
- Gib das Modell und seine Parameterzahl aus.
- 11OptimiererTrainiere mit den Optimierern SGD und Adam.
- Nutze zero_grad, backward und step.
- Vergleiche SGD und Adam an einer Aufgabe.
- Nutze einen Lernraten-Plan.
- 12TrainingsskriptSchreibe ein Skript mit der vollen Trainings- und Testschleife.
- Lade Daten mit einem DataLoader.
- Trainiere, validiere und teste.
- Speichere das beste Modell.
Computersehen
- 13Bilder als TensorenLade Bilder als Tensoren und normalisiere sie.
- Lade ein Bild als Kanäle, Höhe und Breite.
- Ändere die Größe und normalisiere es.
- Zeige einen Stapel als Gitter.
- 14FaltungenErkläre, wie ein Faltungsfilter Kanten findet.
- Schiebe einen 3×3-Filter von Hand über ein Bild.
- Wende Kantenfilter im Code an.
- Erkläre Stride, Padding und Pooling.
- 15CNNBaue ein faltendes neuronales Netz, ein CNN.
- Stapele Faltungs-, Aktivierungs- und Pooling-Schichten.
- Mache es flach und hänge einen Klassifikator-Kopf an.
- Verfolge die Formen durch das Netz.
- 16BildklassifikatorTrainiere einen Bildklassifikator mit einem CNN.
- Trainiere auf einem kleinen Bilddatensatz.
- Gib die Testgenauigkeit an.
- Zeige Bilder, die er falsch hatte.
Verarbeitung natürlicher Sprache
- 17TokenisierungMach Tokenisierung: wandle Text in Tokens und Kennungen.
- Vergleiche Wort- und Teilwort-Tokens.
- Baue ein Vokabular.
- Fülle Sequenzen auf dieselbe Länge.
- 18EmbeddingsErkläre, wie Embeddings ähnliche Wörter nah zusammenlegen.
- Nutze eine Embedding-Schicht.
- Finde die nächsten Wörter zu einem Wort.
- Zeichne Embeddings in zwei Dimensionen.
- 19TextmodelleBaue ein Textmodell, das eine Folge von Tokens liest.
- Bilde den Mittelwert der Embeddings zu einem Vektor.
- Nutze eine einfache rekurrente Schicht.
- Vergleiche die beiden.
- 20StimmungsklassifikatorTrainiere einen Stimmungsklassifikator, der positive von negativen Bewertungen unterscheidet.
- Trainiere auf einem Bewertungsdatensatz.
- Gib Genauigkeit, Präzision und Trefferquote an.
- Finde Bewertungen, die ihn täuschen, wie Sarkasmus.
Transformers
- 21AufmerksamkeitErkläre, wie Aufmerksamkeit andere Tokens gewichtet.
- Erkläre Abfragen, Schlüssel und Werte.
- Berechne Aufmerksamkeitsgewichte für einen kurzen Satz.
- Sag, warum Aufmerksamkeit bei Bedeutung über weite Abstände hilft.
- 22Transformer-BlöckeBenenne die Teile eines Transformer-Blocks.
- Benenne Multi-Head-Attention, die Feed-forward-Schicht und Normalisierungsschichten.
- Erkläre Residualverbindungen.
- Erkläre Positionskodierungen.
- 23Vortrainierte ModelleNutze ein vortrainiertes Transformer-Modell für eine Aufgabe.
- Lade ein vortrainiertes Modell und einen Tokenisierer.
- Klassifiziere Text damit.
- Vergleiche es mit deinem eigenen Stimmungsmodell.
- 24AufmerksamkeitskartenLies eine Aufmerksamkeitskarte.
- Zeichne Aufmerksamkeitsgewichte als Wärmekarte.
- Finde, auf welche Wörter ein Token achtet.
- Sag, warum Aufmerksamkeit keine volle Erklärung ist.
Audio und multimodale KI
- 25Ton als DatenWandle Ton in eine Wellenform und ein Spektrogramm.
- Lade Audio und zeichne seine Wellenform.
- Erkläre die Abtastrate.
- Mach ein Spektrogramm.
- 26AudioklassifikatorKlassifiziere kurze Tonclips mit einem Audioklassifikator.
- Behandle Spektrogramme als Bilder.
- Trainiere ein CNN darauf.
- Teste mit Hintergrundgeräusch.
- 27Multimodale EingabenErkläre, wie ein Modell multimodale Eingaben aus Bildern und Text kombiniert.
- Erkläre getrennte Encoder für jede Eingabe.
- Erkläre einen gemeinsamen Embedding-Raum.
- Nenne drei multimodale Anwendungen.
- 28Bild und TextOrdne Bild und Text zu: verbinde Bilder mit Bildunterschriften mit einem vortrainierten Modell.
- Bette Bilder und Bildunterschriften ein.
- Ordne die Bildunterschriften für jedes Bild.
- Suche Bilder mit einer Textanfrage.
Modell verbessern
- 29RegularisierungVerringere Überanpassung mit Regularisierung: Dropout und Gewichtsabnahme.
- Füge Dropout hinzu.
- Füge Gewichtsabnahme hinzu.
- Vergleiche die Validierungskurven.
- 30DatenerweiterungMach Datenerweiterung: füge gespiegelte und beschnittene Bilder zur Trainingsmenge hinzu.
- Wende Spiegeln, Beschneiden und Farbänderungen an.
- Erweitere nur die Trainingsmenge.
- Miss die Änderung der Testgenauigkeit.
- 31TransferlernenNutze Transferlernen, um ein vortrainiertes Modell auf neue Klassen feinzujustieren.
- Friere die vortrainierten Schichten ein.
- Ersetze den Kopf und trainiere ihn.
- Taue auf und justiere fein mit einer kleinen Lernrate.
- 32FehleranalyseMach eine Fehleranalyse: gruppiere Fehler und finde ihre Ursache.
- Lies eine Konfusionsmatrix für viele Klassen.
- Sortiere Fehler in Gruppen.
- Wähle die Verbesserung für die größte Gruppe.
Projekt zum tiefen Lernen
- 33WildtierdatenWähle und teile einen offenen Bilddatensatz von Wildtieren.
- Wähle einen offenen Kamerafallen- oder Wildtierdatensatz.
- Wähle fünf bis zehn Arten.
- Teile nach Ort, damit der Test fair ist.
- 34Justiere das Modell feinJustiere das Bildklassifikator-Modell fein auf Wildtierklassen.
- Justiere ein vortrainiertes Modell fein.
- Verfolge die Validierungsgenauigkeit.
- Speichere den besten Zwischenstand.
- 35Demo-OberflächeBaue eine Demo-Oberfläche, die Vorhersagen zu hochgeladenen Bildern zeigt.
- Nimm ein hochgeladenes Bild an.
- Zeige die drei besten Arten und ihre Punkte.
- Zeige „nicht sicher“, wenn das Vertrauen niedrig ist.
- 36Intelligenter WildtiermonitorStelle einen intelligenten Wildtiermonitor vor: die Genauigkeit auf ungesehenen Bildern und die Hauptfehler.
- Gib die Genauigkeit auf ungesehenen Bildern an.
- Zeige die Hauptfehler und ihre Ursachen.
- Sag, was du als Nächstes ändern würdest.