Klausurzusammenfassung: Deep Learning / Neural Networks

Vorlesungsskript 80_Ch.10, KI und ML: Supervised Learning

Fokus: Definitionen, Zusammenhänge, Formeln, Rechenwege, Diagrammdeutung, typische Klausuraufgaben und Prüfungsfallen.

1. Überblick und klausurrelevanter Kern

Dieses Kapitel führt neuronale Netze als parametrisierte, differenzierbare Funktionen ein. Ein neuronales Netz besteht aus vielen künstlichen Neuronen, die lineare Transformationen mit nichtlinearen Aktivierungsfunktionen kombinieren. Dadurch können Netze hochgradig nichtlineare Zusammenhänge modellieren, insbesondere bei großen und komplex strukturierten Daten wie Text, Bildern, Video, Genomik, Chemie oder physikalischen Simulationen.

Prüfungskern: Du solltest ein künstliches Neuron formal beschreiben, Aktivierungsfunktionen erklären und ableiten, einen Forward Pass per Hand rechnen, die Matrixform eines Layers verstehen, Loss und Backpropagation konzeptionell erklären, Modellarchitekturen einordnen und ein Keras-Beispiel inklusive sauberer Validierung kritisch bewerten können.

Gliederung

  1. Motivation, Anwendungen und Grenzen
  2. Künstliche Neuronen und Netze
  3. Aktivierungsfunktionen
  4. Bezug zu klassischer Statistik und ML
  5. Inferenz und Forward Pass
  6. Computation Graphs
  7. Training, Loss, Backpropagation und Architektur
  8. Libraries und Keras
  9. Palmer-Penguins-Lab
  10. Typische Klausuraufgaben
  11. Lerncheckliste und Klausurfragen
  12. Folienabdeckung

2. Motivation, Anwendungen und Grenzen

2.1 Warum Deep Learning heute so erfolgreich ist

Neuronale Netze sind nicht neu; die Grundideen reichen weit zurück. Der heutige Erfolg entsteht vor allem aus dem Zusammenspiel von besserem algorithmischem Verständnis, deutlich mehr Rechenkapazität durch GPUs und TPUs, großen gelabelten Datenmengen sowie ausgereiften Open-Source-Werkzeugen und vortrainierten Modellen.

Zusammenhang aus Folie 10: Datenmenge und Modellleistung
Menge gelabelter Daten Performance klassische ML-Verfahren Deep Learning
Folie 10: Mit zunehmender Datenmenge können tiefe Modelle oft weiter profitieren, während einfachere Lernverfahren früher sättigen. Das ist eine Tendenz, keine Garantie: schlechte Daten, Leakage oder falsches Training bleiben problematisch.
Folie 9: GPU und TPU als Rechenbeschleuniger
Folie 9: GPUs und TPUs ermöglichen die effiziente Matrix- und Tensorrechnung, die für große neuronale Netze zentral ist.

2.2 Moderne Anwendungen

Die Folien nennen Sprachmodelle wie ChatGPT, Gemini und Claude, Antwortmaschinen und Agentensysteme, Bild- und Videogenerierung, Bildklassifikation, AlphaFold in der Genomik, Moleküldesign in der Chemie und beschleunigte physikalische Simulationen. Klausurrelevant ist weniger das einzelne Produkt als die gemeinsame Idee: Eingaben wie Sprache, Bilder, Moleküle oder Zeitreihen werden in numerische Repräsentationen übersetzt und durch ein trainiertes Netz in Labels, Texte, Wahrscheinlichkeiten oder andere Zielgrößen abgebildet.

Folie 19: AlphaFold-Beispiel
Folie 19: Beispiel Genomik/Proteinstruktur: Netze modellieren hochdimensionale biologische Strukturen.
Folie 20: Moleküldesign mit Deep Learning
Folie 20: Beispiel Chemie: Datengetriebene Repräsentationen können für Moleküldesign genutzt werden.

2.3 Grenzen und Risiken

Deep Learning ist leistungsfähig, aber nicht automatisch verlässlich. Generative Modelle können Inhalte verfälschen, Fakten halluzinieren, realitätsferne Bilder erzeugen oder nicht ausführbaren Code liefern. Zusätzlich entstehen Datenschutz-, Urheberrechts-, Bias-, Zensur-, Energie- und Hardwarefragen. Für Prüfungen ist wichtig: Hohe Modellkomplexität ersetzt keine saubere Problemdefinition, keine saubere Validierung und keine kritische Ergebnisprüfung.

Prüfungsfalle: „Deep Learning ist besser“ ist keine korrekte pauschale Aussage. Es braucht ausreichend Daten, passende Architektur, geeignete Loss-Funktion, sinnvolle Vorverarbeitung, gute Validierung und eine Fehleranalyse.

3. Künstliche Neuronen und neuronale Netze

3.1 Vom natürlichen zum künstlichen Neuron

Die Analogie zum biologischen Neuron hilft bei der Intuition: Viele Eingaben werden gesammelt, verarbeitet und führen zu einer Ausgabe. Das künstliche Neuron ist jedoch ein mathematisches Rechenmodul, keine biologische Simulation. Es nimmt einen Eingabevektor entgegen, bildet daraus eine gewichtete Summe plus Bias und wendet anschließend eine Aktivierungsfunktion an.

Folie 26: vereinfachtes natürliches Neuron
Folie 26: Biologische Neuronen motivieren Begriffe wie Eingabe und Ausgabe, das künstliche Neuron wird aber als mathematische Funktion modelliert.
Künstliches Neuron z(x) = wTx + b f(x) = g(z(x)) = g(wTx + b)
x
Eingabevektor mit den Features eines Datenpunkts.
w
Gewichtsvektor; jedes Gewicht steuert den Einfluss eines Features.
b
Bias bzw. Achsenabschnitt; verschiebt die Vor-Aktivierung.
z(x)
Vor-Aktivierung, also der lineare Teil.
g(·)
Aktivierungsfunktion, meist nichtlinear und differenzierbar.
f(x)
Ausgabe des künstlichen Neurons.

3.2 Netz, Layer, MLP und Tiefe

Ein neuronales Netz ist ein Graph aus vielen Neuronen. In einem Multi-Layer Perceptron sind die Neuronen typischerweise in Schichten angeordnet: Eingabeschicht, eine oder mehrere Hidden Layers und Ausgabeschicht. Eine dichte Schicht verbindet jedes Neuron einer Schicht mit jedem Neuron der nächsten Schicht. Ein tiefes Netz besitzt mehrere Hidden Layers; dadurch können Merkmale stufenweise transformiert werden.

Input Hidden Layer Output x₁x₂x₃ h₁h₂h₃ y₁y₂
Dense Layer: Bei d Eingaben und H Neuronen hat eine dichte Schicht d · H Gewichte plus H Bias-Terme, also insgesamt (d + 1) · H trainierbare Parameter.

4. Aktivierungsfunktionen

Aktivierungsfunktionen bilden den nichtlinearen Teil eines Neurons. Ohne nichtlineare Aktivierungen wäre die Verkettung mehrerer linearer Layer wieder nur eine lineare Funktion. Die Nichtlinearität ist deshalb zentral für die Modellierung komplexer Zusammenhänge. Für Standardtraining per Backpropagation müssen die Bausteine außerdem differenzierbar sein; an einzelnen Knickstellen reichen in der Praxis oft Subgradienten.

4.1 ReLU

Rectified Linear Unit h(x) = max(0, x) = { x, falls x > 0; 0, sonst } h′(x) = { 1, falls x > 0; 0, sonst }

Variablen: x ist die Vor-Aktivierung eines Neurons, h(x) die aktivierte Ausgabe. Bei x = 0 ist die klassische Ableitung nicht eindeutig; Implementierungen wählen üblicherweise einen Subgradienten.

Folie 30: ReLU-Aktivierung und Ableitung
Folie 30: ReLU ist für positive Werte linear und setzt negative Werte auf 0. Sie ist einfach, schnell und in tiefen Netzen häufig Standard.

4.2 Sigmoid

Sigmoid-Aktivierung h(x) = 1 / (1 + e−x) h′(x) = h(x) · (1 − h(x))

Interpretation: Die Ausgabe liegt zwischen 0 und 1. Deshalb ist Sigmoid naheliegend für binäre Wahrscheinlichkeiten, kann in tiefen Hidden Layers aber durch Sättigung sehr kleine Gradienten erzeugen.

Folie 31: Sigmoid-Aktivierung und Ableitung
Folie 31: Sigmoid komprimiert reelle Vor-Aktivierungen auf das Intervall von 0 bis 1.

4.3 Tanh

Tangens hyperbolicus h(x) = tanh(x) h′(x) = 1 − tanh2(x)

Interpretation: Tanh gibt Werte zwischen −1 und 1 aus und ist um 0 zentriert. Auch Tanh kann für große Beträge von x sättigen.

Folie 32: Tanh-Aktivierung und Ableitung
Folie 32: Tanh ist ähnlich wie Sigmoid S-förmig, aber symmetrisch um 0.

4.4 Softmax und weitere Aktivierungen

Softmax wird typischerweise im Output Layer für Mehrklassenklassifikation mit exklusiven Klassen verwendet. Aus Rohwerten bzw. Logits entstehen Klassenwahrscheinlichkeiten, die zusammen 1 ergeben.

Softmax für Klasse k pk = ezk / ∑j=1K ezj
zk
Logit der Klasse k.
K
Anzahl der Klassen.
pk
Vorhergesagte Wahrscheinlichkeit für Klasse k.

Weitere Aktivierungen aus den Folien sind ELU, Leaky-ReLU, Swish, Cos/Sin und Soft-Sign. Klausurrelevant ist vor allem die Auswahl nach Aufgabe: ReLU häufig in Hidden Layers, Sigmoid für binären Output, Softmax für exklusiven Mehrklassen-Output.

Prüfungsfalle: Bei mehreren exklusiven Klassen nicht mehrere unabhängige Sigmoid-Ausgaben als Standardantwort nennen. Üblich ist Softmax mit Cross-Entropy, weil die Klassenwahrscheinlichkeiten gemeinsam normiert werden.

5. Bezug zu klassischer Statistik und Machine Learning

Ein einzelnes Neuron besteht aus einem linearen Modell plus Aktivierungsfunktion. Mit Sigmoid-Aktivierung ist der Bezug zur logistischen Regression direkt: Auch dort wird eine lineare Kombination der Features durch die Sigmoid-Funktion in eine Wahrscheinlichkeit transformiert. Ein neuronales Netz verallgemeinert diese Idee, indem viele solcher Module verbunden und in mehreren Schichten verkettet werden.

Logistische Regression als Spezialfall P(Y = 1 | x) = 1 / (1 + e−(wTx + b))

Dies entspricht einem einzelnen Sigmoid-Neuron. Zusätzliche Hidden Layers machen das Modell flexibler, erhöhen aber auch Parameterzahl, Rechenaufwand und Overfitting-Risiko.

6. Modellvorhersage und Inferenz

6.1 Forward Pass im Single-Layer-NN

Bei der Inferenz sind die Gewichte bereits gelernt oder vorgegeben. Für einen neuen Eingabevektor werden zuerst die Hidden-Neuronen berechnet, danach die Ausgabeneuronen. Die Folien rechnen dies mit Sigmoid-Aktivierung und stark gerundeten Zwischenergebnissen vor.

Folie 43: Single-Layer-NN-Inferenzbeispiel
Folie 43: Übersicht des Forward Pass mit Eingabevektor, Hidden-Layer-Gewichten, Output-Layer-Gewichten und Sigmoid-Aktivierung.
Gegeben x = (0.5, 0.9, −0.3)T, Wh = [ [1, 2, 1], [−2, 1, −1], [2, −4, 0] ], Wo = [ [−3, 0], [1, 1], [−3, 2] ]

Die Spalten von Wh gehören zu den Hidden-Neuronen, die Spalten von Wo zu den Output-Neuronen. Im Folienbeispiel werden Bias-Terme nicht sichtbar verwendet.

Hidden Layer h1 = g(0.5 · 1 + 0.9 · (−2) + (−0.3) · 2) = g(−1.9) ≈ 0.13 h2 = g(0.5 · 2 + 0.9 · 1 + (−0.3) · (−4)) = g(3.1) ≈ 0.96 h3 = g(0.5 · 1 + 0.9 · (−1) + (−0.3) · 0) = g(−0.4) ≈ 0.40
Output Layer y1 = g(0.13 · (−3) + 0.96 · 1 + 0.40 · (−3)) ≈ g(−0.63) ≈ 0.35 y2 = g(0.13 · 0 + 0.96 · 1 + 0.40 · 2) ≈ g(1.76) ≈ 0.85

Die Zahlen können leicht abweichen, weil die Folien die Hidden-Werte stark runden.

6.2 Matrixform eines Layers

Statt jedes Neuron einzeln zu berechnen, werden alle Neuronen eines Layers gemeinsam per Matrixmultiplikation berechnet. Das ist der Kern der effizienten Ausführung auf GPUs und TPUs.

Layerweise Vorhersage für mehrere Datenpunkte Z(l) = A(l−1)W(l) + b(l) A(l) = g(Z(l))
A(l−1)
Ausgaben des vorherigen Layers; für den ersten Layer ist das die Eingabematrix.
W(l)
Gewichtsmatrix des Layers l.
b(l)
Bias-Vektor des Layers l, auf alle Datenpunkte addiert.
Z(l)
Vor-Aktivierungen des Layers.
A(l)
Aktivierte Ausgaben des Layers.
Prüfungsfalle: Achte auf Matrixdimensionen und Orientierung. Ob Gewichte zeilen- oder spaltenweise notiert werden, ist Konvention. Deine Rechnung muss konsistent sein.

7. Computation Graphs

Ein neuronales Netz kann als gerichteter Graph von Funktionen verstanden werden. Knoten sind Operationen wie lineare Transformationen, Aktivierungen oder Loss-Berechnung. Kanten transportieren Werte. Parameter wie Gewichte und Bias beeinflussen einzelne Knoten. Diese Sicht ist wichtig, weil Backpropagation Ableitungen entlang dieses Graphen rückwärts verknüpft.

Folie 45: NN als parametrisierte Funktion
Folie 45: Ein Netz ist eine parametrisierte, nichtlineare Funktion f(x).
Folie 46: Gerichteter Graph von Funktionen
Folie 46: Die gerichtete Struktur legt fest, welche Operation von welchen vorherigen Werten abhängt.
Folie 47: Lineare und nichtlineare Funktionen
Folie 47: Netze kombinieren lineare, parametrisierte Blöcke und nichtlineare Aktivierungen.
Folie 48: Nicht strikt sequenzieller Computation Graph
Folie 48: Graphen können Verzweigungen oder zusätzliche Verbindungen enthalten, etwa Skip Connections.

8. Training, Loss, Backpropagation und Architektur

8.1 Parameter lernen

Alle Gewichte an den Kanten sowie Bias-Terme sind unbekannte Parameter. Manche Aktivierungsfunktionen besitzen zusätzliche Parameter, zum Beispiel Leaky-ReLU. Große Netze können Milliarden Parameter haben. Training bedeutet, diese Parameter so anzupassen, dass die Loss-Funktion auf den Trainingsdaten klein wird.

8.2 Loss-Funktionen

Eine Loss-Funktion misst, wie schlecht die Modellvorhersage zur Zielgröße passt. Typische Beispiele sind Mean Squared Error für Regression sowie Cross-Entropy oder Log-Loss für Klassifikation. Häufig wird zusätzlich Regularisierung addiert, um einfachere Modelle zu bevorzugen.

Empirischer Trainingsloss mit Regularisierung J(θ) = 1 / n · ∑i=1n L(yi, fθ(xi)) + λ · Ω(θ)
θ
Alle trainierbaren Parameter, also Gewichte und Bias-Terme.
n
Anzahl der Trainingsbeobachtungen.
xi, yi
Features und Zielwert der Beobachtung i.
fθ
Neuronales Netz mit Parametern θ.
L
Beobachtungsspezifische Loss-Funktion.
λ · Ω(θ)
Regularisierungsterm, zum Beispiel zur Bestrafung großer Gewichte.
Mehrklassen-Cross-Entropy bei One-Hot-Labels L(y, p) = −∑k=1K yk · log(pk)

yk ist 1 für die wahre Klasse und 0 sonst; pk ist die per Softmax vorhergesagte Wahrscheinlichkeit.

8.3 Backpropagation und Gradient Descent

Da die Knoten eines neuronalen Netzes normalerweise differenzierbar sind, können partielle Ableitungen berechnet und über die Kettenregel verkettet werden. Im Forward Pass werden Vorhersage und Loss berechnet. Im Backward Pass werden die Ableitungen des Loss rückwärts durch den Graphen propagiert, bis für alle Parameter ein Gradient vorliegt. Danach aktualisiert ein Gradientenverfahren die Parameter.

Folien 52/53: Verkettung differenzierbarer Knoten
Folien 52/53: Backpropagation nutzt die Kettenregel, um lokale Ableitungen entlang des Graphen zu einem Gradienten des Loss nach den Parametern zu verknüpfen.
Gradient-Descent-Update θneu = θalt − η · ∇θJ(θalt)
η
Lernrate; zu groß kann Divergenz verursachen, zu klein kann Training stark verlangsamen.
θJ
Gradient des Loss nach allen Parametern.

8.4 Modellarchitektur

Die bisherigen Beispiele verwenden vollständig verbundene bzw. dichte Schichten. Die Folien nennen weitere Architekturbausteine: Convolutional Layers für Bilder, Videos und Zeitreihen; Skip- und Residual-Connections zur Stabilisierung tiefer Netze; rekurrente Schichten für Sequenzen; LSTM, GRU und Transformer-Blöcke insbesondere für Sprache und andere Sequenzen. Die Architektur selbst wird normalerweise nicht direkt durch Backpropagation gelernt, sondern durch Expertenwissen, Ausprobieren, Hyperparameter-Tuning oder Neural Architecture Search gewählt.

BausteinTypischer EinsatzKlausurhinweis
Dense LayerTabellarische Daten, MLP-GrundbausteinParameterzahl und Matrixmultiplikation beherrschen.
Convolutional LayerBilder, Video, ZeitreihenNutzt lokale Strukturen statt vollständiger Verbindung.
Skip/Residual ConnectionSehr tiefe NetzeHilft beim Gradientenfluss und bei stabilerem Training.
RNN/LSTM/GRUSequenzen und ZeitstrukturBezieht frühere Schritte in die Vorhersage ein.
TransformerSprache, Sequenzen, moderne Foundation ModelsZentraler Baustein vieler LLMs.

9. Libraries und Keras/TensorFlow

Für neuronale Netze werden in der Praxis fast immer Frameworks verwendet. Die Folien zeigen Keras/TensorFlow; außerdem werden PyTorch, JAX, Caffe, CNTK, gensim, spaCy, Theano, MXNet und dmlc als Ökosystembeispiele genannt. Für die Klausur ist wichtig, dass Frameworks den Computation Graph, automatische Differentiation, Optimierung und GPU/TPU-Ausführung kapseln.

Folie 11/56: Deep-Learning-Libraries und Frameworks
Folien 11 und 56: Deep-Learning-Frameworks übernehmen die praktische Umsetzung von Graph, Differentiation und Optimierung.

9.1 Keras Sequential als Computation Graph

Das Folienbeispiel baut ein einfaches sequentielles Netz: Dense Layer definiert die lineare Transformation mit Gewichtsmatrix, Activation definiert die Nichtlinearität, und Softmax erzeugt Klassenwahrscheinlichkeiten.

model = Sequential()
model.add(Dense(H, input_dim=N))      # linearer Layer mit Gewichtsmatrix W0
model.add(Activation("tanh"))         # erste Nichtlinearität
model.add(Dense(K))                   # linearer Output-Layer mit Gewichtsmatrix W1
model.add(Activation("softmax"))      # Mehrklassen-Wahrscheinlichkeiten

10. Palmer-Penguins-Lab

10.1 Daten und Ziel

Das Lab verwendet den Datensatz palmerpenguins: 344 Pinguine mit drei Spezies, aufgenommen auf drei Inseln zwischen 2007 und 2009. Nach Entfernen fehlender Werte bleiben in den Folien 333 Beobachtungen. Als Features werden numerische Messwerte wie Schnabellänge, Schnabeltiefe, Flossenlänge und Körpergewicht genutzt; Ziel ist die Klassifikation der Spezies.

Folie 59: Palmer-Penguins-Datensatz
Folie 59: Das Lab-Beispiel nutzt tabellarische Pinguin-Daten für eine Mehrklassenklassifikation.

10.2 Python-Setup und Imports

import pandas
import numpy
from keras.models import Sequential
from keras.layers import Dense
from keras.utils import to_categorical, set_random_seed
from sklearn.model_selection import KFold
from sklearn.preprocessing import LabelEncoder

Der Seed set_random_seed(42) erhöht Reproduzierbarkeit. Er garantiert aber nicht, dass jede Umgebung bitgenau identische Ergebnisse liefert, weil Hardware, TensorFlow-Version und parallele Ausführung eine Rolle spielen können.

10.3 Datenvorbereitung

set_random_seed(42)
dataset = pandas.read_csv("https://raw.githubusercontent.com/mwaskom/seaborn-data/refs/heads/master/penguins.csv")
dataset = dataset.dropna()

X = dataset.values[:, 2:6]
X = numpy.asarray(X).astype("float32")
Y = dataset.values[:, 0]

encoder = LabelEncoder()
encoder.fit(Y)
encoded_Y = encoder.transform(Y)
dummy_y = to_categorical(encoded_Y)

Die Labels werden zuerst als Klassenindizes codiert und danach per One-Hot-Encoding in Zielvektoren umgewandelt. Das passt zur Softmax-Ausgabe mit drei Neuronen und zur Loss-Funktion categorical_crossentropy.

Prüfungsfalle: Vorverarbeitung darf bei echter Validierung nicht auf zukünftige Validierungs- oder Testdaten schauen. Im Foliencode wird die Klassenkodierung auf allen Labels fit gemacht; bei Labels ist das meist unkritisch, bei Skalierung, Imputation oder Feature Selection wäre das Datenleckage.

10.4 Modellstruktur

def my_model():
    model = Sequential()
    model.add(Dense(10, input_dim=X.shape[1], activation="relu"))
    model.add(Dense(8, activation="relu"))
    model.add(Dense(3, activation="softmax"))
    model.compile(loss="categorical_crossentropy", optimizer="adam", metrics=["accuracy"])
    return model
Parameterzahl im Lab-Modell Layer 1: (4 + 1) · 10 = 50 Layer 2: (10 + 1) · 8 = 88 Output: (8 + 1) · 3 = 27 Gesamt: 165 trainierbare Parameter

Die „+1“ steht jeweils für den Bias pro Neuron.

10.5 Training und erste Bewertung

Die Folien trainieren zunächst fünf Epochen auf allen Daten. Die Genauigkeit bleibt niedrig, und ohne Validierung lässt sich nicht beurteilen, ob das Modell generalisiert. Ein niedriger Trainingswert kann an zu wenig Training, ungünstiger Skalierung, Modellstruktur, Optimierer-Einstellungen oder an Daten-/Labelproblemen liegen. Ein hoher Trainingswert wäre ebenfalls noch kein Beweis für gute Generalisierung.

Prüfungsfalle: Training auf allen Daten und anschließende Aussage „Modell ist gut“ ist methodisch falsch. Eine Güteaussage braucht ungesehene Validierungs- oder Testdaten.

10.6 K-fold Cross-Validation

Die Folien führen eine 5-fold Cross-Validation mit Shuffle und festem Random State durch. Für jeden Fold wird ein neues Modell erstellt, auf den Trainingsindizes trainiert und auf den Validierungsindizes evaluiert. Danach werden Mittelwert und Standardabweichung der Accuracy berichtet.

kf = KFold(n_splits=5, shuffle=True, random_state=42)
scores = []

for train_index, test_index in kf.split(X):
    X_train, X_val = X[train_index], X[test_index]
    y_train, y_val = dummy_y[train_index], dummy_y[test_index]
    model = my_model()
    model.fit(X_train, y_train, epochs=5, batch_size=5, verbose=0)
    loss, acc = model.evaluate(X_val, y_val, verbose=0)
    scores.append(acc)

numpy.mean(scores)
numpy.std(scores)
Cross-Validation-Ergebnis aus den Folien AccuracyCV, mean ≈ 0.448 AccuracyCV, st.dev. ≈ 0.242

Die hohe Standardabweichung zeigt instabile Fold-Ergebnisse. Bei nur fünf Epochen und unskalierten numerischen Features ist das Modell noch kein überzeugendes Endmodell.

10.7 Naheliegende Verbesserungen für die Lab-Aufgabe

11. Typische Klausuraufgaben und Rechenwege

Aufgabe 1: Künstliches Neuron definieren.

Erkläre linearen Teil, Bias und Aktivierung. Schreibe z(x) = wTx + b und f(x) = g(z(x)). Nenne die Rolle jedes Symbols.

Aufgabe 2: Aktivierungsfunktion auswählen.

Für Hidden Layers ist ReLU ein plausibler Standard. Für binäre Klassifikation passt Sigmoid im Output. Für drei exklusive Klassen wie Pinguinspezies passt Softmax mit Cross-Entropy.

Aufgabe 3: Forward Pass rechnen.

Berechne zuerst alle Vor-Aktivierungen im Hidden Layer, wende Sigmoid/ReLU/Tanh an, nutze diese Werte als Eingabe für den Output Layer und aktiviere erneut. Runde erst am Ende oder notiere, dass starke Rundung Abweichungen erzeugt.

Aufgabe 4: Parameterzahl bestimmen.

Für einen Dense Layer mit d Eingaben und H Neuronen gilt (d + 1) · H. Addiere diese Größe über alle Dense Layers.

Aufgabe 5: Backpropagation erklären.

Beschreibe Forward Pass, Loss, lokale Ableitungen, Kettenregel im Backward Pass, Gradienten für alle Parameter und anschließendes Gradientenupdate.

Aufgabe 6: Validierung im Lab bewerten.

Begründe, warum Training ohne Validierung keine Generalisierungsaussage erlaubt. Erkläre K-fold CV, warum pro Fold ein neues Modell trainiert wird, und warum Mittelwert plus Streuung informativer ist als ein einzelner Score.

12. Häufige Fehler und Prüfungsfallen

13. Lerncheckliste und mögliche Klausurfragen

Kompakte Lerncheckliste

Mögliche Klausurfragen

  1. Warum braucht ein neuronales Netz nichtlineare Aktivierungsfunktionen?
  2. Leite die Ausgabe eines Sigmoid-Neurons für einen gegebenen Eingabevektor und Gewichtsvektor her.
  3. Berechne die Parameterzahl eines Netzes mit Eingabedimension 4, Hidden Layers 10 und 8 sowie 3 Output-Neuronen.
  4. Erkläre den Unterschied zwischen Sigmoid und Softmax im Output Layer.
  5. Beschreibe Backpropagation in eigenen Worten und nenne die Rolle der Kettenregel.
  6. Warum reicht eine Trainingsaccuracy nicht aus, um Modellgüte zu bewerten?
  7. Welche Fehler können bei K-fold Cross-Validation mit neuronalen Netzen auftreten?
  8. Warum können GPUs/TPUs neuronale Netze besonders gut beschleunigen?
  9. Nenne Grenzen von generativer KI und erkläre, warum diese für ML-Projekte relevant sind.
  10. Welche Änderungen würdest du am Penguins-Lab vornehmen, um die Validierung belastbarer zu machen?

14. Folienabdeckung

Folie/Kapitel Inhalt In Zusammenfassung enthalten? Wo behandelt?
1Titel und KapitelkontextJaHeader, Überblick
2Kapitel Deep Learning / Neural NetworksJa1. Überblick
3Quellen und Bezug zu ISL/KursmaterialJaHeader, Überblick
4Einführung und MotivationJa2. Motivation
5Künstliches Neuron als RechenmodulJa3.1 Künstliches Neuron
6Neuronale Netze, MLP, dichte SchichtenJa3.2 Netze und Layer
7Tiefe neuronale NetzeJa3.2 Netze und Layer
8Erfolg durch besseres VerständnisJa2. Motivation
9Erfolg durch GPUs/TPUsJa2. Motivation
10Erfolg durch Datenmenge und PerformanceJa2. Motivation
11Open-Source-Tools und ModelleJa9. Libraries
12Moderne AnwendungenJa2.2 Anwendungen
13SprachanwendungenJa2.2 Anwendungen
14LLMs, Antwortmaschinen, AgentenJa2.2 Anwendungen
15BildverarbeitungJa2.2 Anwendungen
16Stable DiffusionJa2.2 Anwendungen
17DALL.E 3Ja2.2 Anwendungen
18Video-GenerierungJa2.2 Anwendungen
19Genomik / AlphaFoldJa2.2 Anwendungen
20Chemie / MoleküldesignJa2.2 Anwendungen
21Physik / Fluid SimulationJa2.2 Anwendungen
22Qualitätsgrenzen generativer KIJa2.3 Grenzen
23Datenschutz, Urheberrecht, Bias, RechenaufwandJa2.3 Grenzen
24Kapitel NeuronenJa3. Neuronen
25Natürliches Neuron detailliertJa3.1 Künstliches Neuron
26Natürliches Neuron vereinfachtJa3.1 Künstliches Neuron
27Künstliches Neuron, Gewichte, Bias, AktivierungJa3.1 Künstliches Neuron
28Kapitel AktivierungsfunktionenJa4. Aktivierungsfunktionen
29Rolle und Differenzierbarkeit von AktivierungenJa4. Aktivierungsfunktionen
30ReLU und AbleitungJa4.1 ReLU
31Sigmoid und AbleitungJa4.2 Sigmoid
32Tanh und AbleitungJa4.3 Tanh
33Softmax und weitere AktivierungenJa4.4 Weitere Aktivierungen
34Anknüpfung zu Statistik und MLJa5. Bezug zu klassischer ML
35Neuron als lineares Modell plus TransformationJa5. Bezug zu klassischer ML
36Sigmoid-Neuron und logistische RegressionJa5. Bezug zu klassischer ML
37Modellvorhersage / InferenzJa6. Inferenz
38Single-Layer-NN-StrukturJa6. Inferenz
39Eingaben, Gewichte, Sigmoid für Forward PassJa6.1 Rechenbeispiel
40Hidden-Layer-BerechnungJa6.1 Rechenbeispiel
41Output-Layer-Berechnung und RundungJa6.1 Rechenbeispiel
42Matrixmultiplikation pro LayerJa6.2 Matrixform
43NVIDIA-DLI-InferenzbeispielJa6.1 Rechenbeispiel
44Alternative SichtweiseJa7. Computation Graphs
45NN als parametrisierte nichtlineare FunktionJa7. Computation Graphs
46Gerichteter Graph abhängig von ParameternJa7. Computation Graphs
47Lineare und nichtlineare FunktionsblöckeJa7. Computation Graphs
48Nicht strikt sequenzielle GraphenJa7. Computation Graphs
49ModelldetailsJa8. Training und Architektur
50Parameter, Gewichte und Bias lernenJa8.1 Parameter
51Loss-Funktionen und RegularisierungJa8.2 Loss
52Differenzierbare Knoten und KettenregelJa8.3 Backpropagation
53Forward Pass, Backward Pass, Gradient DescentJa8.3 Backpropagation
54Architekturen: Dense, CNN, Skip, RNN, Transformer, NASJa8.4 Architektur
55Libraries und FrameworksJa9. Libraries
56Keras / TensorFlowJa9. Libraries
57Keras Sequential Computation GraphJa9.1 Keras-Code
58Lab-BeispielJa10. Palmer-Penguins-Lab
59Palmer-Penguins-DatenJa10.1 Daten
60Module installierenJa10.2 Python-Setup
61ImportsJa10.2 Python-Setup
62Daten lesen, fehlende Werte entfernenJa10.3 Datenvorbereitung
63Feature-Auswahl und KlassenkodierungJa10.3 Datenvorbereitung
64NN-Modellstruktur in KerasJa10.4 Modell
65Training ohne ValidierungJa10.5 Training
66Modellgüte kritisch hinterfragenJa10.5 Training
67K-fold Cross-ValidationJa10.6 Validierung
68CV-Mittelwert und StandardabweichungJa10.6 Validierung
69Lab Task: ausprobieren und verbessernJa10.7 Verbesserungen