Was ist Faltung?

Operation, bei der eine von zwei Folgen zeitlich gespiegelt und verschoben, mit der anderen multipliziert und die Produkte aufsummiert werden. Zeitdiskret lautet sie y[n] = Σx[k]h[n − k], und der Ausgang eines LTI-Systems ist die Faltung des Eingangs mit der Impulsantwort. Die Faltung von Folgen der Längen L und M hat die Länge L + M − 1. Eine Faltung im Zeitbereich wird im Frequenzbereich zur Multiplikation, daher lassen sich lange Faltungen mit der FFT schnell berechnen. Die „Faltung“ in Convolutional Neural Networks wird in vielen Implementierungen als Kreuzkorrelation ohne Spiegelung des Filters berechnet; da die Gewichte gelernt werden, wirken beide Definitionen nach dem Training gleich. Die Konstantenfaltung im Compiler ist ein anderer Begriff.

Japanische Bezeichnung: 畳み込み

„Faltung“ kommt in 7 Übungsfragen aus 4 Themen vor, z. B. KI-Hardware und Software-Stack, Grundlagen des maschinellen Lernens, Grundlagen der digitalen Signalverarbeitung.

Fachgebiet: Grundlagen der digitalen Signalverarbeitung

Jetzt üben: Fragen zu Faltung

Warum wird die Faltung in Convolutional Neural Networks mitunter mit Verfahren wie im2col in ein Matrixprodukt umgewandelt?

  1. AWeil sich durch die Umwandlung die Zahl der Operationen auf ein Zehntel verringert
  2. BWeil sich hochoptimierte Matrixprodukt-Bibliotheken und Matrix-Recheneinheiten wie Tensor Cores nutzen lassen
  3. CWeil sich durch die Umwandlung der Speicherbedarf immer verringert
Antwort und Erläuterung anzeigen

Antwort: B. Weil sich hochoptimierte Matrixprodukt-Bibliotheken und Matrix-Recheneinheiten wie Tensor Cores nutzen lassen

Bei im2col werden die Eingabewerte jedes Faltungsfensters spaltenweise zu einer großen Matrix angeordnet, und die Faltung wird als Produkt mit der Matrix der Filter berechnet. Durch überlappende Fenster werden Eingabewerte dupliziert und der Speicherbedarf steigt; da jedoch über Jahrzehnte optimierte Matrixprodukt-Bibliotheken und Matrix-Recheneinheiten wie Tensor Cores unverändert genutzt werden können, ist das Ganze häufig schneller. Es gibt auch Implementierungen, die dasselbe ohne Duplikate erreichen.

„Faltung“ in den Erläuterungen

Fragen mit „Faltung“ (7)

  1. Warum wird die Faltung in Convolutional Neural Networks mitunter mit Verfahren wie im2col in ein Matrixprodukt umgewandelt?
  2. Die Folge x[n] = {1, 2, 3} (n = 0, 1, 2) wird auf ein LTI-System mit der Impulsantwort h[n] = {1, −1} (n = 0, 1) gegeben. Welche Ausgangswerte y[0] bis y[3] ergeben sich?
  3. Was führt beim AFM bei der Messung sehr schmaler Gräben oder steiler Seitenwände leicht zu Messfehlern?
  4. Welche Aussage zu „Weight Stationary“, einem der Dataflow-Verfahren von KI-Beschleunigern, ist richtig?
  5. Welche Anordnung des KI-Software-Stacks von der nutzernahen oberen Schicht zur hardwarenahen unteren Schicht ist richtig?
  6. Wie viele trainierbare Parameter hat eine vollständig verbundene Schicht mit 64 Eingaben und 32 Ausgaben (mit einem Bias je Ausgabe)?
  7. Ein einkanaliges Bild mit 28×28 Pixeln wird mit einem 5×5-Filter gefaltet (Stride 1, kein Padding), anschließend folgt ein 2×2-Max-Pooling (Stride 2). Wie groß sind Höhe und Breite der Ausgabe?

Verwandte Begriffe

Impulsantwort AFM (Rasterkraftmikroskop) KI-Compiler GPU NPU (Neural Processing Unit) Dezimation Differenzengleichung Diskrete Fourier-Transformation Fensterfunktion FIR-Filter

Zur Glossarübersicht