Grote taalmodellen personaliseren zonder dat je privédata de cloud in gaat: dat is nu mogelijk op een smartphone. Onderzoekers, onder wie Xu Zheng, presenteerden in een studie op arxiv.org een systeem dat LLM's efficiënt bijgeschaafd op de Neural Processing Unit (NPU) van een telefoon.
Waarom trainen op een telefoon zo moeilijk is
On-device fine-tuning laat een taalmodel leren van de data van één gebruiker, terwijl die data op het toestel blijft. Handig voor privacy, maar technisch een flinke klus: telefoons hebben beperkte rekenkracht en een hoog energieverbruik is funest voor de batterij.
De onderzoekers pakken dit aan met Low-Rank Adaptation (LoRA), een techniek die het aantal te trainen parameters flink verkleint. Toch blijft het zwaar: bij elke trainingsstap moeten berekeningen worden uitgevoerd met de bevroren gewichten van het basismodel.
En daar wringt het. De NPU van een telefoon is gebouwd om die gewichten te gebruiken voor inferentie — het genereren van antwoorden. De standaardinterface van deze chips ondersteunt geen input-gradiënten, terwijl die juist essentieel zijn voor training.
De oplossing: NPU en CPU samen
Het nieuwe systeem verdeelt het werk slim. De drie belangrijkste berekeningen met bevroren gewichten draaien op de NPU. De trainingsgrafiek, de adapters en de optimizer blijven op de CPU.
Daarbovenop komen een aantal technische optimalisaties:
- Speciale kernels voor input-gradiënten hergebruiken reeds aanwezige gewichtstegels en de forward dequantizer. Gewichten hoeven dus niet meer getransponeerd en gekopieerd te worden, en de voorwaartse en achterwaartse fase van het leerproces gebruiken dezelfde effectieve gewichten.
- Selectieve precisie op basis van de gevoeligheid van de gradiënt houdt de kwaliteit van de berekeningen op peil. Een 'per-row range guard' beveiligt de outputs in half-precisie (FP16).
- Slimme runtime: CPU-operatoren worden gefuseerd en de NPU-berekeningen lopen parallel aan de adapters op de CPU.
- Thermal pacing en hervatbare uitvoering zorgen dat de telefoon niet oververhit raakt en de gebruiker niet gehinderd wordt. De training draait gewoon als achtergrondproces.
Getest op Snapdragon, met Llama en Qwen
De onderzoekers testten hun systeem op twee verschillende Qualcomm Snapdragon-platforms, met vier taalmodellen uit de Llama- en Qwen-families. De evaluatie richtte zich op twee scenario's: nachtelijke personalisatie op basis van labels op de telefoon en de publieke LaMP-2 benchmark.
Ter referentie vergeleken ze de resultaten met een geoptimaliseerde CPU-trainer, een trainer op de GPU van de telefoon, forward-only training en referentiemodellen die op een GPU waren getraind. De volledige details van die vergelijkingen staan in de technische documentatie op arxiv.org.
Tot slot een nuance over de term "first-order". In dit onderzoek verwijst die naar de wiskundige methode van gradiëntberekening. Buiten de AI-wereld kan de term ook iets anders betekenen: het cambridge.org-woordenboek beschrijft 'of the first order' bijvoorbeeld als iets van zeer hoge graad of kwaliteit, en merriam-webster.com biedt voor deze specifieke NPU-implementatie geen technische context. In dit artikel gaat het dus om de wiskundige betekenis.