Kwantisatiebewuste training: hoe AI-modellen slanker en sneller worden
Stel je voor dat een chef-kok een recept moet omzetten van een precisieweegschaal die tot op een tiende gram nauwkeurig weegt, naar een simpele keukenweegschaal die alleen hele grammen aangeeft. Zet de chef het recept zomaar een-op-een over, dan gaat de smaak waarschijnlijk net iets mis: een snufje hier, een scheutje daar, allemaal afgerond. Maar weet de chef vooraf dat hij met de grovere weegschaal moet koken, en past hij het recept daarop aan - iets meer zout hier, een fractie minder suiker daar - dan proeft niemand het verschil. Dat is in essentie wat kwantisatiebewuste training (Engels: quantization-aware training, afgekort QAT) doet met kunstmatige-intelligentiemodellen.
Grote AI-modellen, zoals de taalmodellen achter chatbots of de beeldherkenning in een smartphone, bestaan uit miljoenen tot miljarden interne "gewichten": getallen die bepalen hoe het model tot een antwoord komt. Die getallen worden doorgaans opgeslagen met hoge precisie, wat veel rekenkracht, geheugen en energie kost. Kwantisatie is de techniek waarbij die getallen worden afgerond naar een grovere, compactere vorm, zodat het model kleiner en sneller wordt. Het probleem: afronden achteraf kan de nauwkeurigheid van het model schaden. Kwantisatiebewuste training lost dat op door het model tijdens het trainen al bewust te maken van die afronding, zodat het zich eraan aanpast - net als de chef die zijn recept alvast afstemt op de grovere weegschaal.
Wat is het precies?
Om te begrijpen wat kwantisatiebewuste training doet, helpt het om eerst te weten hoe getallen in een AI-model worden opgeslagen. Standaard gebeurt dat met zogeheten 32-bits floating-point getallen (FP32): een notatie die zeer precieze decimale waarden kan weergeven, vergelijkbaar met een rekenmachine die met veel cijfers achter de komma rekent. Dat is nauwkeurig, maar kost veel geheugen: elk getal neemt 32 bits (4 bytes) in beslag, en een model met bijvoorbeeld 7 miljard parameters heeft dan al snel 28 gigabyte geheugen nodig.
Bij kwantisatie worden die getallen omgezet naar een compactere representatie, meestal 8-bits gehele getallen (INT8) of soms nog minder, zoals 4 bits. Dat scheelt niet alleen geheugen - een model wordt tot wel vier keer kleiner - maar ook rekentijd, omdat processors met gehele getallen doorgaans sneller kunnen rekenen dan met precieze kommagetallen. Het addertje onder het gras: bij het simpelweg afronden van een al getraind model (dit heet post-training quantization, PTQ) kunnen kleine afrondingsfouten zich opstapelen en de prestaties merkbaar verslechteren, vooral bij taken die veel precisie vergen.
Kwantisatiebewuste training pakt dit anders aan. In plaats van pas na de training af te ronden, wordt tijdens het trainingsproces zelf al gesimuleerd hoe de afronding eruit zal zien. Dit gebeurt met zogeheten "nep-kwantisatie" (fake quantization): op strategische plekken in het netwerk worden de getallen tijdelijk afgerond alsof ze al in de lage precisie staan, waarna er toch met de volle precisie wordt doorgerekend om het model bij te stellen. Zo "voelt" het model tijdens het leren telkens de afrondingsfouten die het straks in de praktijk zal tegenkomen, en leert het zijn interne gewichten zo te kiezen dat die fouten zo min mogelijk schade aanrichten.
Een technische complicatie is dat afronden geen vloeiende, differentieerbare bewerking is - iets wat wel nodig is voor de gebruikelijke trainingsmethode (backpropagation, het achterwaarts doorrekenen van fouten om het model bij te stellen). Onderzoekers lossen dit meestal op met een truc die de straight-through estimator heet: tijdens het voorwaarts doorrekenen wordt er echt afgerond, maar tijdens het achterwaarts doorrekenen doet het model alsof er niet is afgerond, zodat de bijstellingen toch soepel kunnen doorlopen. Deze truc is wiskundig niet helemaal zuiver, maar werkt in de praktijk verrassend goed.
Wat wil men ermee bereiken?
Het belangrijkste doel van kwantisatiebewuste training is simpel: AI-modellen die net zo goed presteren als hun volledig precieze versie, maar die veel minder geheugen, rekenkracht en energie vergen. Dat is om verschillende redenen belangrijk.
Ten eerste is er de wens om AI te laten draaien op apparaten met beperkte middelen: smartphones, smartwatches, slimme luidsprekers, camera's en andere "edge"-apparaten die niet permanent verbonden zijn met een krachtig datacenter. Een gekwantiseerd model kan lokaal op zo'n apparaat draaien, wat sneller reageert en minder afhankelijk is van een internetverbinding.
Ten tweede spelen kosten en energieverbruik een steeds grotere rol, ook in datacenters. Het draaien van grote taalmodellen kost aanzienlijke hoeveelheden elektriciteit en dure gespecialiseerde chips. Kleinere, gekwantiseerde modellen kunnen meer gebruikers tegelijk bedienen op dezelfde hardware, wat zowel de operationele kosten als de milieu-impact verlaagt.
Ten derde is er de wens om privacy te verbeteren: als een model volledig op het apparaat van de gebruiker kan draaien in plaats van in de cloud, hoeven gevoelige gegevens - spraak, foto's, berichten - nooit het apparaat te verlaten.
Belangrijk is dat kwantisatiebewuste training niet belooft dat er helemaal geen kwaliteitsverlies optreedt. De inzet is vooral het verlies zo klein mogelijk te houden - vaak binnen een fractie van een procent op standaardmetingen - in ruil voor een aanzienlijke winst in snelheid en compactheid. Bij zeer lage precisie, bijvoorbeeld 2 of 4 bits, is enig kwaliteitsverlies vaak lastiger te vermijden, en blijft het zoeken naar de juiste balans een actief onderzoeksgebied.
Voorbeelden uit de praktijk
Google publiceerde in 2017-2018 invloedrijk onderzoek (bekend als het "Jacob et al."-paper) over het trainen van neurale netwerken met gesimuleerde 8-bits kwantisatie, wat mede de basis vormde voor de latere TensorFlow Model Optimization Toolkit. Dit gereedschap wordt onder meer gebruikt om beeldherkenningsmodellen efficiënt op Android-telefoons te laten draaien.
Qualcomm, bekend van de Snapdragon-chips die in veel Android-telefoons zitten, bracht in 2020 zijn AI Model Efficiency Toolkit (AIMET) uit als opensource-project. Dit gereedschap ondersteunt zowel kwantisatie achteraf als kwantisatiebewuste training, gericht op efficiënte AI op de eigen chips, bijvoorbeeld voor cameraverwerking en spraakherkenning.
NVIDIA voegde ondersteuning voor kwantisatiebewuste training toe aan zijn TensorRT-softwareplatform, dat modellen optimaliseert voor de eigen grafische chips (GPU's). Ontwikkelaars kunnen een model trainen met gesimuleerde INT8-precisie in een framework als PyTorch, en het resultaat vervolgens laten draaien op NVIDIA-hardware met een aanzienlijke snelheidswinst.
De onderzoeksgroep van Song Han aan het Massachusetts Institute of Technology (MIT) publiceerde met werk als "Deep Compression" (2016) en later AWQ (Activation-aware Weight Quantization, 2023) invloedrijke methoden die de basis legden voor veel praktische compressietechnieken - al richt een deel van dat werk zich juist op slimmere kwantisatie achteraf, precies omdat volledige training met kwantisatiebewustzijn voor zeer grote modellen kostbaar is.
Rond opensource-taalmodellen, zoals de Llama-reeks van Meta, is een actieve gemeenschap ontstaan (onder meer rond het project llama.cpp) die modellen comprimeert naar 4 bits of minder via het GGUF-bestandsformaat, zodat ze op gewone laptops kunnen draaien. Dit is doorgaans post-training kwantisatie, maar recentere methoden combineren dit steeds vaker met een lichte vorm van bijstelling die dicht bij kwantisatiebewuste training ligt, om kwaliteitsverlies te beperken. Een verwant voorbeeld is QLoRA (2023, Tim Dettmers en collega's), waarmee grote taalmodellen efficiënt kunnen worden bijgesteld terwijl ze grotendeels in 4-bits precisie in het geheugen blijven.
Hoe ver is de techniek?
Kwantisatiebewuste training is inmiddels een volwassen, breed toegepaste techniek voor "klassieke" neurale netwerken zoals beeldherkenningsmodellen: de belangrijkste machine-learning-bibliotheken (TensorFlow, PyTorch) bevatten kant-en-klare gereedschappen ervoor, en veel apps die AI op smartphones gebruiken leunen er al jaren op.
Voor grote taalmodellen (large language models, LLM's) ligt dit genuanceerder. Deze modellen zijn zo groot en kostbaar om te trainen dat volledig opnieuw trainen met kwantisatiebewustzijn vaak onpraktisch duur is - het trainen van een taalmodel met tientallen miljarden parameters kost al snel miljoenen euro's aan rekenkracht. Daarom wordt in de praktijk vaker gekozen voor goedkopere alternatieven: kwantisatie achteraf, of een kortere "nabijstelling" (fine-tuning) met kwantisatiebewustzijn op een deel van de data, in plaats van een volledige training vanaf nul.
Een belangrijk obstakel blijft de afweging tussen compressie en kwaliteit: bij 8 bits is het kwaliteitsverlies meestal verwaarloosbaar, maar bij 4 bits of minder wordt het merkbaarder, vooral bij taken die precieze redenering vereisen. Onderzoekers experimenteren met slimmere vormen van kwantisatie - bijvoorbeeld waarbij niet elk onderdeel van het model even grof wordt afgerond, maar de gevoeligste onderdelen hun precisie behouden - om dit te verzachten. Er is geen consensus over de "beste" methode voor elke situatie; de keuze hangt sterk af van het type model, de beschikbare hardware en hoeveel kwaliteitsverlies acceptabel is.
Ook op hardwareniveau is er beweging: nieuwere chips ondersteunen steeds vaker rechtstreekse berekeningen in 4-bits of zelfs lagere precisie, wat de praktische voordelen van kwantisatie vergroot. Tegelijk blijft software-ondersteuning soms achter bij de theorie, waardoor niet elke veelbelovende onderzoeksmethode meteen in de praktijk hetzelfde voordeel oplevert.
Wie werken eraan?
Grote techbedrijven met eigen chips en AI-producten investeren fors in kwantisatieonderzoek, omdat het hen direct geld en energie bespaart. Google (met TensorFlow en de Tensor-chips in Pixel-telefoons), Qualcomm (met AIMET en Snapdragon-chips), NVIDIA (met TensorRT) en Meta (dat mede het PyTorch-framework onderhoudt) behoren tot de meest actieve partijen.
Apple ontwikkelt eigen kwantisatiegereedschap voor zijn Core ML-platform, gericht op efficiënte AI-functies op iPhones en Macs, al is Apple doorgaans terughoudend met het publiceren van onderzoeksdetails.
Op universitair vlak is het MIT HAN Lab, onder leiding van Song Han, een van de bekendste onderzoeksgroepen op het gebied van modelcompressie en kwantisatie. Ook onderzoekers aan de University of Washington - onder meer verbonden aan het QLoRA-onderzoek - en Stanford University hebben invloedrijke publicaties over kwantisatie van grote taalmodellen op hun naam staan.
Daarnaast speelt de opensource-gemeenschap een grote rol: platforms als Hugging Face bieden gereedschap en gedeelde modellen waarmee ontwikkelaars wereldwijd kwantisatietechnieken kunnen uitproberen en verbeteren, vaak buiten de grote bedrijven om.