Convolutional Neural Networks eignen sich hervorragend für die Verarbeitung rasterähnlicher Daten (z. B. Bilder), da sie lokale Muster erkennen. CNNs sind jedoch weniger effektiv bei der Erfassung globaler Beziehungen innerhalb der Daten. Transformer überwinden dieses Problem, indem sie Selbstaufmerksamkeit nutzen, um die Bedeutung verschiedener Teile der Eingabedaten als Teil des großen Ganzen abzuwägen. Während CNNs in erster Linie für Aufgaben wie Bilderkennung verwendet werden, wurden Transformer sowohl für Text- als auch für Bildverarbeitung angepasst und bieten so vielseitigere Lösungen.
- Eingabeeinbettungen
- Positionscodierung
- Transformer-Block
- Lineare/Softmax-Blöcke
- Die Eingabesequenz wird in Zahlenfolgen umgewandelt, die als Einbettungen bezeichnet werden und die semantische Bedeutung der Token repräsentieren.
- Die Positionscodierung fügt der Einbettung jedes Tokens eindeutige Signale hinzu, um die Reihenfolge der Token in der Sequenz beizubehalten.
- Der Multi-Head-Aufmerksamkeitsmechanismus verarbeitet diese Einbettungen, um verschiedene Beziehungen zwischen Token zu erfassen.
- Layer-Normalisierung und Residualverbindungen stabilisieren und beschleunigen den Trainingsprozess.
- Die Ausgabe der Selbstaufmerksamkeitsebene durchläuft neuronale Feedforward-Netze für nicht lineare Umwandlungen.
- Hierbei werden mehrere Transformer-Blöcke gestapelt, die jeweils die Ausgabe der vorherigen Ebene optimieren.
- Bei Aufgaben wie Übersetzung generiert ein separates Decoder-Modul die Ausgabesequenz.
- Das Modell wird mithilfe von überwachtem Lernen trainiert, um den Unterschied zwischen Vorhersagen und Grundwissen (Ground-Truth-Daten) zu minimieren.
- Während der Schlussfolgerungen (Inferenz) verarbeitet das trainierte Modell neue Eingabesequenzen, um Vorhersagen oder Darstellungen zu generieren.
- Natural Language Processing
- Maschinelle Übersetzung
- Spracherkennung
- Bildgenerierung
- DNA-Sequenzanalyse
- Proteinstrukturanalyse