Im Inneren eines Neurons steckt ein Skalarprodukt, in einer Schicht eine Matrix, in der
Backpropagation ein Matrixprodukt. Dieses Kapitel stellt die Begriffe bereit, auf denen
der Rest des Buchs aufbaut, und legt die Schreibweisen fest.
Ein Nachschlagekapitel, kein Lehrgang: Wer aus der linearen Algebra kommt, überfliegt es.
Die Eigenschaften, die unten ohne Beweis stehen, sind in zwei, drei Zeilen nachzurechnen.
Das hochgestellte ⊤ ist das Transponieren: Es vertauscht Zeilen und Spalten, aus der
Spalte v wird die Zeile v⊤=(v1,…,vd). Die Standardbasisvektorene1,…,ed haben eine 1 in einer Komponente und sonst Nullen.
Dass unter der Wurzel nichts Negatives steht, ist die positive Definitheit; in
R2 ist es der Satz des Pythagoras. Es gilt ∥v∥=0 nur für den Nullvektor,
und ∥λv∥=∣λ∣∥v∥ – mit Betrag, denn eine Länge ist nie negativ.
Damit zerfällt jeder Vektor in Richtung und Länge, v=∥v∥v~, und mit ihm
das Skalarprodukt:
Der zweite Faktor hängt nur von den Richtungen ab und bekommt im nächsten Abschnitt einen
Namen. Nebenbei: Aus 1=v12+⋯+vd2 folgt −1≤vi≤1, normalisierte
Embeddings liefern also gutmütige Zahlen.
Dass der Bruch zwischen -1 und 1 liegt, also überhaupt ein Kosinus sein kann, ist die
Ungleichung von Cauchy und Schwarz: ∣v⋅w∣≤∥v∥∥w∥.
Der Kosinus misst Ähnlichkeit der Richtungen, unabhängig von den Längen. Als
Kosinusähnlichkeit ist er das Standardmaß für Embeddings, etwa im
Kapitel „word2vec“ und im
Kapitel „Latente Räume“.
Für Vektoren ungleich null ist das der Fall cosθ=0, also ein rechter Winkel;
die Standardbasisvektoren sind paarweise orthogonal. Daran hängt die Geometrie des
Neurons: Der Gewichtsvektor steht senkrecht auf der Trennebene, und die Aktivierung misst
den Abstand zu ihr. Ausgerechnet wird das im
Kapitel „Neuron und Perzeptron“.
Die Angabe m×n heißt im Code Shape. Sie mitzuführen ist die halbe Miete: Die
meisten Fehler beim Rechnen mit Netzen sind Shape-Fehler.
So liest man eine Schicht: In Wx+b mit W∈Rm×n steht in jeder
Zeile der Gewichtsvektor eines Neurons, und Wx+b berechnet m Aktivierungen auf
einmal. Eine Matrix ist eine lineare Abbildung Rn→Rm.
Die Shape-Regel steht in der Definition: (m×n)⋅(n×k) ergibt
m×k, die inneren Zahlen müssen übereinstimmen und fallen weg. Passen sie nicht,
ist das Produkt nicht definiert; AB und BA sind verschieden, oft ist nur eines von
beiden definiert. Inhaltlich ist das Produkt die Verkettung der Abbildungen: erst B,
dann A. Daran hängt die Backpropagation, denn die Ableitung einer Verkettung ist das
Produkt der Ableitungen
(Kapitel „Gradientenabstieg“).
Drei Regeln, die das Buch braucht: (A⊤)⊤=A; (AB)⊤=B⊤A⊤, die
Reihenfolge dreht sich also um; und v⋅w=v⊤w, denn eine Zeile mal eine
Spalte ist eine 1×1-Matrix. Die zweite Regel ist der Grund, warum in der
Backpropagation ständig transponierte Gewichtsmatrizen auftauchen: vorwärts W, rückwärts
W⊤.