- Der bestehende Self-Attention-Mechanismus hat eine Komplexität von O(n²) und ist bei langen Sequenzen nur begrenzt skalierbar
- In dieser Arbeit wird FFTNet vorgeschlagen, das die Fast Fourier Transform (FFT) nutzt
- FFTNet führt globale Token-Mischung mit einer Zeitkomplexität von O(n log n) aus
- Im Frequenzbereich werden lernbare Spektralfilter und die modReLU-Aktivierungsfunktion eingeführt, um wichtige Frequenzkomponenten hervorzuheben
- In Benchmarks auf Long Range Arena (LRA) und ImageNet zeigt es bessere Leistung als bestehende Self-Attention- und feste Fourier-Transformationsmodelle
Verwandte Forschung
- Komplexität von Self-Attention: Transformer-Modelle benötigen einen Rechenaufwand von O(n²) und sind daher bei der Verarbeitung langer Sequenzen ineffizient
- Fourier-basierte Ansätze: Modelle wie FNet reduzieren den Rechenaufwand durch feste Fourier-Transformationen, sind jedoch nur begrenzt anpassungsfähig an Eingaben
- Lineare, spärliche und niedrigdimensionale Approximationsverfahren: Arbeiten wie Performer, Linformer und BigBird schlagen Methoden vor, die Berechnungen von Self-Attention approximieren
- Orthogonale Matrixzerlegungsverfahren: Die Nutzung orthogonaler Transformationen (einschließlich DFT) verbessert die Stabilität beim Modelltraining
- Adaptive Spektralfilterung: Durch das Hinzufügen lernbarer Filter zu FFT-basierten Transformationen wird der Ansatz flexibler und ausdrucksstärker als bisherige Verfahren
FFTNet: Verfahren zur adaptiven Spektralfilterung
Motivation
- Self-Attention hat eine Komplexität von O(n²) und ist bei langen Sequenzen ineffizient
- FFT arbeitet mit O(n log n) und kann globale Interaktionen effizient kodieren
Methodik
- Fourier-Transformation (Anwendung von FFT)
- Die Eingabesequenz wird in den Frequenzbereich transformiert, um globale Abhängigkeiten effizient zu erfassen
- Anwendung adaptiver Spektralfilter
- Mithilfe eines globalen Kontextvektors werden lernbare Filter erzeugt, die wichtige Frequenzbänder dynamisch hervorheben
- modReLU-nichtlineare Aktivierung
- Eine ReLU-basierte Aktivierung wird im komplexwertigen Frequenzbereich angewendet, um die Ausdrucksstärke zu erhöhen
- Inverse Fourier-Transformation (IFFT)
- Nach Filterung und Aktivierung der transformierten Daten werden diese zurück in den Zeitbereich transformiert
Theoretische Grundlage von FFTNet
- Globale Token-Mischung ist mit einem Rechenaufwand von O(n log n) möglich
- Adaptive Attention: Lernbare Filter im Frequenzbereich passen Frequenzen abhängig von der jeweiligen Eingabe an
- Stärkere Ausdruckskraft durch nichtlineare Aktivierung: Durch modReLU wird das Lernen hochdimensionaler Muster möglich, die über einfache lineare Transformationen hinausgehen
- Stabilitätsgarantie auf Basis des Parseval-Theorems: Die Energie des Signals bleibt erhalten, wodurch Informationsverlust minimiert wird
Experimentelle Ergebnisse
Long Range Arena (LRA)-Benchmark
- FFTNet erzielt insgesamt eine höhere Genauigkeit als Transformer und FNet
- Besonders bei den Aufgaben ListOps, Text, Retrieval, Image und Pathfinder zeigt es bessere Leistung und erreicht im Durchschnitt die höchste Punktzahl
- Transformer zeigte bei einigen Aufgaben hohe Leistung, hatte jedoch Grenzen bei der Verarbeitung langfristiger Abhängigkeiten
- FNet nutzt zwar FFT, zeigt aber insgesamt geringere Leistung, da der feste Transformationsansatz nicht ausreichend anpassungsfähig ist
- Insbesondere bei der Path-X-Aufgabe scheiterte der Transformer an einem Speicherüberlauf (OOM), während FFTNet stabile Leistung zeigte
ImageNet-Klassifikationsexperiment
- Der auf FFTNet basierende Vision Transformer (FFTNetViT) hält eine ähnliche Genauigkeit wie bestehende ViTs aufrecht und reduziert zugleich den Rechenaufwand (FLOPs) deutlich
- Beim Base-Modell verwendet FFTNetViT rund 38 % weniger FLOPs als ViT und steigert die Genauigkeit dabei leicht
- Auch bei den Large- und Huge-Modellen hält FFTNetViT bei geringerem Rechenaufwand im Vergleich zu ViT eine ähnliche Leistung
- Damit lässt sich bestätigen, dass FFTNetViT eine hohe Recheneffizienz bietet
Ablation Study (Analyse der Bedeutung einzelner Komponenten)
- Durch das Entfernen verschiedener Elemente von FFTNet wurde analysiert, wie sich diese auf die Modellleistung auswirken
- Mit dem Entfernen zentraler Komponenten von FFTNet sinkt die Genauigkeit tendenziell
- Entfernung des Spectral Gating: Die Funktion zur Hervorhebung bestimmter Frequenzen entfällt, wodurch die Genauigkeit leicht sinkt
- Entfernung des adaptiven Moduls: Die Fähigkeit, Filter abhängig von der Eingabe dynamisch anzupassen, entfällt, was die Genauigkeit weiter verringert
- Verwendung von Faltung statt FFT: Die effiziente Mischung globaler Informationen entfällt, was zum größten Leistungsabfall führt
- Daraus wird ersichtlich, dass jede Komponente von FFTNet eine wichtige Rolle für die Leistungssteigerung spielt
Fazit
- FFTNet ist eine recheneffizientere Alternative zu Self-Attention
- Die Kombination aus adaptiven Spektralfiltern und modReLU im Frequenzbereich bietet starke Ausdruckskraft
- Die Experimente zeigen, dass Leistung und Effizienz auf LRA und ImageNet besser sind als bei bestehenden Self-Attention-Modellen
- Durch O(n log n)-Komplexität bei gleichzeitigem Leistungsniveau auf Self-Attention-Niveau eignet sich der Ansatz besonders für die Verarbeitung langer Sequenzen
- Auch der auf FFTNet basierende Vision Transformer (FFTNetViT) erreicht mit geringeren FLOPs eine ViT-ähnliche Leistung
1 Kommentare
Hacker-News-Kommentare
Im Grunde nutzt es den Faltungssatz: Teure Faltungen im direkten Raum werden im reziproken Raum zu einfachen Multiplikationen
Google stellte 2022 die Idee „FNet: Mixing Tokens with Fourier Transforms“ vor
Die Fourier-Transformation wird entlang der „Token“-Dimension ausgeführt. In vielen Anwendungen ist diese Dimension jedoch nicht sinnvoll
Die Mathematik ist so schwer, dass sie kaum zu verstehen ist. Ich wüsste gern, ob jemand in einfachem Englisch erklären kann, wie das dem Attention-Mechanismus entspricht, von welchen Frequenzen die Rede ist und wie Positionsbeziehungen zwischen Tokens codiert werden
Ich sehe nicht, wie sich kausales Masking in dieses Framework einfügen lässt. Es gibt auch keine Erwähnung von Positions-Embeddings, daher scheint die verglichene Self-Attention-Implementierung ein nicht-kausales NoPE zu sein
Es gibt keinen Verweis auf den Hyena Operator, der schon vor einigen Jahren vollständiges Kontext-Mixing in O(n log n) demonstriert hat
Ich halte es für einen großen Fehler, im Zeitalter der Telemetrie nicht FFT auf Cloud-Telemetrie anzuwenden, um Epizyklen und metastabile Systeme zu finden, bevor sie für Drama sorgen
Ich frage mich, ob jemand eine Intuition dafür hat, warum es hilfreich ist, Dinge im Frequenzbereich zu betrachten
Ich verstehe die Big-O-Notation einigermaßen, aber wie die meisten Dinge rund um Informatik oder Elektrotechnik ist auch das schwer zu begreifen
Ich verstehe nicht, warum Attention nötig ist. Auch ein vollständig verbundener Layer kann auf alle Eingaben „achten“