Transformatoren im Videoverständnis

Jan 16 2023
Videos gibt es überall und sie nehmen mit der Zeit immer mehr zu. Eine Möglichkeit, Probleme im Zusammenhang mit Videos zu lösen, besteht darin, einzelne Frames zur Klassifizierung zu verwenden.

Videos gibt es überall und sie nehmen mit der Zeit immer mehr zu. Eine Möglichkeit, Probleme im Zusammenhang mit Videos zu lösen, besteht darin, einzelne Frames zur Klassifizierung zu verwenden. Diese Strategie berücksichtigt keine zeitlichen Änderungen. Für die Arbeit an Raum und Zeit haben Forscher des maschinellen Lernens viele Lösungen vorgeschlagen, und eine der neueren Techniken ist die Verwendung von Transformatoren.

Transformatoren wurden in der Verarbeitung natürlicher Sprache eingeführt. Mittlerweile gibt es fast überall Transformatoren. Sei es Bilder oder Videos, Klassifizierung, Segmentierung oder Generierung.

Videoverständnis definieren

Videoverständnis bedeutet, gelernte Informationen aus einem Stapel von Bildern zu extrahieren. Technisch gesehen nennen wir diese erlernten Informationen raumzeitliche Informationen.

Der Bereich Videoverständnis hat sich parallel zur Bilderkennung weiterentwickelt. Zu den traditionellen Architekturen gehören Spatiotemporal 3D Convolutional Neural Networks, die deutlich mehr Rechenleistung erfordern als ihre Bildgegenstücke. Eine andere Möglichkeit, mit raumzeitlichen Informationen umzugehen, besteht darin, mithilfe einer leistungsstarken Bilderkennungsarchitektur Merkmale zu extrahieren, die dann Sequenzmodellen wie LSTMs und GRUs zugeführt werden.

Heute lernen wir einige neuere Transformatorarchitekturen kennen, die beim Videoverständnis eingesetzt werden.

Video Vision Transformer (ViViT)

Arnab et al. stellen transformatorbasierte Modelle für die Videoklassifizierung vor.

Ihre Architektur hat vier Varianten:

Räumlich-zeitliche Aufmerksamkeit

Die raumzeitliche Aufmerksamkeitsarchitektur in ViViT extrahiert 3D-Röhren aus einem Stapel von Frames und projiziert sie mithilfe dichter Schichten. Der Rest der Architektur umfasst die Positionseinbettung dieser Patches, einen Transformator-Encoder und einen mehrschichtigen Perzeptronkopf zur Klassifizierung.

Um die Architektur zu erklären, habe ich das Röhrchen-Einbettungsdiagramm aus dem Papier hinzugefügt.

Raumzeitliche Aufmerksamkeit mithilfe der Tubelet-Einbettung [Quelle]

Eine TensorFlow-Implementierung des Frameworks ist hier zu sehen .

Die Architektur weist eine quadratische Komplexität in Bezug auf die Anzahl der Eingabe-Tokens auf.

Faktorisierter Encoder

Der faktorisierte Encoder verfügt über zwei separate Transformatorencoder mit unabhängigen räumlichen und zeitlichen Wechselwirkungen.

Faktorisierter Encoder (ViViT) für das Videoverständnis [Quelle]

Spatial Encoder: Nur Token aus einem Frame werden im Hinblick auf andere Token im selben Frame berücksichtigt. Diese Interaktionen innerhalb des Frames werden nach dem globalen Durchschnittspooling oder über ein Klassentoken an Temporal Encoder weitergeleitet .

Temporaler Encoder: Aus dem räumlichen Encoder extrahierte Token werden in Bezug aufeinander berücksichtigt.

Diese unabhängigen räumlich und zeitlich betreuten Token werden dann zur Klassifizierung an einen mehrschichtigen Perzeptronkopf weitergeleitet.

Die faktorisierte Encoder-Architektur reduziert auch die Komplexität gegenüber der quadratischen.

Faktorisierte Selbstaufmerksamkeit

Anstatt wie in der letzten Architektur unterschiedliche Transformator-Encoder zu verwenden, verwenden die Autoren hier unabhängige räumliche und zeitliche Interaktionen im selben Encoder.

Die Selbstaufmerksamkeit im Transformer-Encoder wird geändert, um Interaktionen zunächst nur räumlich (innerhalb eines Frames) und dann zeitlich (alle räumlich betreuten Token) zu finden.

Faktorisierte Selbstaufmerksamkeit (ViViT) für das Videoverständnis [Quelle]

Faktorisierte Skalarproduktaufmerksamkeit

Weiter unten modifizieren wir hier die Selbstaufmerksamkeit, um separate Aufmerksamkeitsköpfe für räumliche und zeitliche Token zu haben.

Faktorisierte Punktproduktaufmerksamkeit (ViViT) für das Videoverständnis [Quelle]

Video-Swin-Transformator

Der Video-Swin-Transformer beschränkt die Selbstaufmerksamkeit auf nicht überlappende lokale Fenster und ermöglicht gleichzeitig fensterübergreifende Verbindungen. Auf diese Weise wird der Transformatorarchitektur eine induktive Lokalitätsvorspannung hinzugefügt.

BISHERIGE VIDEO- TRANSFORMER berechnen die Selbstaufmerksamkeit global, sogar mit Faktorisierung über räumliche und zeitliche Dimensionen hinweg.

Video Swin Transformer: [Quelle]

Lokalitätsinduktiver Bias: „Die Vorstellung, dass Bildpixel lokal korreliert sind und dass ihre Korrelationskarten translatorisch invariant sind.“ [ Ein schöner Artikel über induktive Verzerrungen im ML-Algorithmus hier ]

TimeSFormer

Die Autoren von TimeSFormer experimentieren mit verschiedenen Selbstaufmerksamkeitsschemata und schlagen vor, dass „geteilte Aufmerksamkeit“ unter den berücksichtigten Designoptionen zur besten Videoklassifizierungsgenauigkeit führt.

Das Aufmerksamkeitsschema ist das gleiche wie die faktorisierte Selbstaufmerksamkeit in Video Vision Transformer .