Accelerating Vision Transformers on Brain Processing Unit
Dit artikel stelt een nieuwe methode voor om Vision Transformers te versnellen op CNN-geoptimaliseerde Brain Processing Units (BPUs) door het model te herstructureren om lineaire lagen te vervangen door convolutionele operatoren, wat gewichtsovererving mogelijk maakt zonder hertraining terwijl significante versnellingen in inferentie worden bereikt met minimaal nauwkeurigheidsverlies.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Stel je voor dat je een super-efficiënte, gespecialiseerde fabrieksarbeider hebt genaamd de BPU (Brain Processing Unit). Deze arbeider is een meester in het assembleren van 4D Lego-blokjes (die staan voor standaard beeldgegevens zoals hoogte, breedte, kleurkanalen en batches). In de wereld van kunstmatige intelligentie is deze arbeider de expert voor het bouwen van CNN's (Convolutional Neural Networks), wat de traditionele "steenleggers" van computer vision zijn.
Echter, er is een nieuwe, revolutionaire type architect gearriveerd: de Vision Transformer (ViT). In plaats van te bouwen met 4D Lego-blokjes, werkt de ViT met 3D stapels papier (sequenties van gegevens). De ViT is ongelooflijk slim en produceert vaak betere resultaten, maar spreekt een andere taal. Wanneer je probeert de BPU-fabrieksarbeider in te huren om een ViT te bouwen, raakt hij in de war. De arbeider is ontworpen om blokjes te stapelen, niet om door stapels papier te bladeren. Als gevolg hiervan moet de ViT worden gebouwd door een veel tragere, algemene arbeider (de CPU), waardoor de super-snelle BPU ongebruikt blijft zitten.
De oplossing van het Papier: De "Vormveranderende" Truc
De auteurs van dit paper, Jinchi Tang en Yan Guo, kwamen met een slimme workaround. Ze hebben niet geprobeerd de BPU te leren hoe hij papierstapels moet lezen (wat moeilijk zou zijn en het hertrainen van het hele systeem zou vereisen). In plaats daarvan hebben ze de papierstapels geherstructureerd zodat ze lijken op Lego-blokjes.
Dit hebben ze gedaan, gebruikmakend van eenvoudige analogieën:
Het probleem met de Lineaire Laag: In een standaard ViT gebruikt het brein "Lineaire Lagen" om informatie te verwerken. Zie deze als een vertaler die een lijst met woorden leest en een nieuwe lijst als output geeft. De BPU kan geen lijsten lezen; hij begrijpt alleen 4D-roosters.
- De oplossing: De auteurs hebben de "vertaler" genomen en de instructies ervan geherstructureerd zodat het eruitziet als een 1x1 Lego-blokje. Wiskundig gezien doet het exact hetzelfde werk, maar past het nu perfect in de BPU-fabriek. Het is alsof je een platte kaart opwikkelt tot een cilinder, enkel zodat hij in een specifieke buis past, zonder de inhoud van de kaart te veranderen.
Het probleem met Layer Normalization: De ViT gebruikt ook een stap genaamd "Layer Normalization" om de gegevens in balans te houden (zoals een thermostaat die een kamer op de juiste temperatuur houdt). De BPU heeft geen ingebouwde thermostaat.
- De oplossing: De auteurs hebben een "thermostaat" gebouwd van de bestaande Lego-blokjes van de BPU. Ze hebben een speciale keten van kleine blokjes (1x1 convoluties) gemaakt die het gemiddelde en de variantie berekent, waardoor de thermostaat effectief wordt nagebootst met alleen de tools die de BPU al bezit.
De magie van "Geen Hertraining"
Normaal gesproken, als je het blauwdruk van een gebouw verandert, moet je het gebouw afbreken en vanaf nul weer opbouwen. Maar omdat de auteurs zo voorzichtig waren om hun "Lego-blokjes" wiskundig identiek te maken aan de originele "papierstapels", werken de originele blauwdrukken (gewichten) nog steeds perfect.
Ze hoefden het model niet te hertrainen of het nieuwe dingen te leren. Ze namen simpelweg het vooraf getrainde "DeiT"-model (een populaire, efficiënte versie van de ViT), pasten hun vormveranderende truc toe, en overhandigden het aan de BPU. De BPU herkende het nieuwe formaat onmiddellijk en begon op volle snelheid te werken.
De Resultaten: Snelheid versus Nauwkeurigheid
Het team testte dit op twee verschillende taken: het herkennen van duizenden objecten (ImageNet) en het sorteren van bloemen.
- De Afweging: Wanneer je een model omzet om op deze gespecialiseerde hardware te draaien, verlies je meestal een klein beetje precisie (zoals overstappen van een foto met hoge definitie naar een licht gecomprimeerde JPEG).
- Bij de grote ImageNet-test daalde de nauwkeurigheid van het DeiT-Base model slechts met 1,4% (van 81,8% naar 80,4%).
- Bij de bloementest was de daling zelfs nog kleiner, slechts 0,5%.
- De Beloning: In ruil voor die kleine daling in nauwkeurigheid werd het model veel sneller.
- Het grootste model (DeiT-Base) draaide 3,8 keer sneller op de BPU dan op de standaard CPU.
- De kleinere modellen zagen ook versnellingen, variërend van 1,3x tot 2,1x.
Een Grappige Ontdekking
Tijdens hun testen merkten de auteurs iets interessants op. Soms waren de officiële labels op de testafbeeldingen foutief (bijv. een foto van een "leeuw" was gelabeld als een "aap"). Het originele DeiT-model identificeerde de leeuw correct, maar het systeem markeerde dit als een fout vanwege het slechte label. Het nieuwe, snelle model van de auteurs identificeerde de leeuw ook correct. Dit suggereert dat het model eigenlijk slimmer is dan de officiële scores doen vermoeden, omdat het door de "typefouten" in de testgegevens heen kan kijken.
Samenvattend
Dit paper is de eerste keer dat iemand er succesvol in is geslaagd om een Vision Transformer (de "papierstapel"-architect) te nemen en deze op een gespecialiseerde Brain Processing Unit (de "Lego"-fabriek) te laten draaien zonder de architect vanaf nul te hoeven herbouwen. Door de wiskunde slim te herstructureren om bij de hardware te passen, bereikten ze een 3,8x snelheidsboost met bijna geen verlies aan intelligentie, wat bewijst dat deze geavanceerde AI-modellen eindelijk efficiënt kunnen draaien op gespecialiseerde, embedded chips.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.