Verbesserung der visuellen Prompt-Tuning für selbstüberwachte Vision Transformers

Visual Prompt Tuning (VPT) ist eine effektive Anpassungsmethode zur Anpassung vortrainierter Vision Transformers (ViTs) an nachgeschaltete Aufgaben. Sie nutzt zusätzliche lernbare Tokens, sogenannte „Prompts“, die die vortrainierten, fixierten ViTs steuern. Obwohl VPT seine Anwendbarkeit bei überwachten Vision Transformers demonstriert hat, erzielt es oft schlechtere Ergebnisse bei selbstüberwachten Modellen. Durch empirische Beobachtungen schließen wir, dass die Wirksamkeit von VPT maßgeblich von den ViT-Blöcken abhängt, mit denen die Prompt-Tokens interagieren. Insbesondere zeigt VPT bei der Bildklassifizierung für MAE und MoCo v3 eine verbesserte Leistung, wenn die Prompt-Tokens in spätere Blöcke statt in den ersten Block eingefügt werden. Diese Beobachtungen deuten darauf hin, dass es eine optimale Position für die Einfügung von Prompt-Tokens innerhalb der ViT-Architektur gibt. Leider ist die Identifizierung dieser optimalen Blöcke für jeden selbstüberwachten ViT in unterschiedlichen zukünftigen Szenarien ein kostspieliger Prozess. Um dieses Problem zu mildern, schlagen wir eine einfache, jedoch effektive Methode vor, die für jeden ViT-Block ein „Gate“ lernt, um dessen Einfluss auf die Prompt-Tokens anzupassen. Mit unserer Methode werden die Prompt-Tokens selektiv von jenen Blöcken beeinflusst, die für die Anpassung an die jeweilige Aufgabe eine Steuerung benötigen. Unser Ansatz übertrifft VPT-Varianten in der FGVC- und VTAB-Bildklassifizierung sowie in der semantischen Segmentierung auf ADE20K. Der Quellcode ist unter https://github.com/ryongithub/GatedPromptTuning verfügbar.