Dit artikel introduceert byteificatie, een innovatieve methode om bestaande subwoord-gebaseerde grote taalmodellen (LLM's) om te vormen tot byte-gebaseerde modellen. De auteurs stellen dat traditionele subwoord-tokenisatie beperkingen oplevert, zoals een gebrek aan begrip op tekenniveau, impliciete bias en een focus op de Engelse taal, wat vooral problematisch is voor wetenschappelijke data en computercode.
De Architectuur en Methode
De onderzoekers maken gebruik van een Latent Tokenizer Language Model (LTLM). De kern van deze aanpak is een conversieprocedure in twee fasen:
- Distillatie: Het model leert het gedrag van het bronmodel te imiteren terwijl het globale model bevroren blijft.
- End-to-end training: Het volledige model wordt geoptimaliseerd om byte-informatie effectief te gebruiken.
Een cruciale technische verbetering is de non-causale grensbepaling, waarbij een klein beetje toekomstige context wordt gebruikt om patches semantisch coherenter te maken.
Resultaten en Voordelen
De resulterende modellen (Bolmo, Bwen en Blama) vertonen significante verbeteringen ten opzichte van eerdere byte-modellen, met name in STEM-taken en karakterbegrip. Andere belangrijke voordelen zijn:
- Efficiëntie: Byte-modellen vermijden de 'softmax-bottleneck' van subwoord-modellen, waardoor de snelheid kan worden verhoogd door de compressieratio (bytes per patch) aan te passen.
- Aanpasbaarheid: Via taak-aritmetiek kunnen verbeteringen uit bestaande post-trained subwoord-modellen direct worden overgedragen naar de byteificeerde modellen.
De studie concludeert dat byte-gebaseerde modellering een praktisch en concurrerend alternatief is voor traditionele tokenisatie, vooral in domeinen waar precisie op byte-niveau essentieel is.
Taalmodellen aanpassen om op bytes te opereren
Abstract
Recente vorderingen in kunstmatige intelligentie (AI) zijn grotendeels gedreven door grote taalmodellen (LLM's), diepe neurale netwerken die opereren over discrete eenheden genaamd tokens. Om tekst te representeren gebruiken de meeste grote taalmodellen woorden of woordfragmenten als tokens, bekend als subwoord-tokenisatie. Subwoord-tokenisatie maskeert fijnmazige informatie, wat problematisch is voor wetenschappelijke data—zoals computercode of biologische sequenties—waar de betekenis afhangt van individuele tekens of bytes.
Modellen die direct opereren op de byte-codering van tekst vermijden deze beperkingen, maar tot nu toe bleven ze in prestaties achter bij subwoord-gebaseerde modellen. Hier introduceren we een algemene methode voor het creëren van byte-gebaseerde grote taalmodellen via byteificatie, die de mogelijkheden van subwoord-gebaseerde systemen benaderen. We gebruiken een conversieprocedure in twee fasen om bestaande subwoord-gebaseerde modellen aan te passen tot byte-modellen met minimale extra training. De resulterende modellen presteren beter dan eerdere byte-gebaseerde benaderingen en blinken uit in redeneringstaken op tekenniveau. Ze behalen praktische inferentiesnelheden door byte-informatie efficiënt te verwerken en vertonen aanpasbaarheid door het bestaande ecosysteem rond het bronmodel te hergebruiken. Onze resultaten verwijderen een langdurige prestatiebarrière voor end-to-end byte-gebaseerde taalmodellering en tonen aan dat modellen die opereren op ruwe tekstcoderingen concurrerend kunnen schalen, terwijl ze voordelen bieden in domeinen die fijnmazig tekstueel begrip vereisen.
Inleiding
De recente vooruitgang in AI is gedreven door end-to-end deep learning-systemen die representaties direct uit data leren. Grote taalmodellen (LLM's) zijn hier een voorbeeld van, waarbij sterke capaciteiten worden bereikt door training op enorme collecties tekst. Ondanks hun schijnbare generaliteit zijn hedendaagse LLM's niet volledig end-to-end: voordat het leerproces kan beginnen, moet tekst eerst worden gekoppeld aan een reeks discrete eenheden, genaamd tokens. De keuze van tokens vormt fundamenteel de representaties die LLM's leren en de gedragingen die ze vertonen.
De overgrote meerderheid van de huidige LLM's gebruikt woorden of delen van woorden als tokens in een proces dat bekend staat als subwoord-tokenisatie. Dit leidt tot diverse problemen:
- Beperkt begrip op tekenniveau: Dit hindert vooral de prestaties bij wetenschappelijke data, zoals code en biologische sequenties.
- Impliciete bias: Modellen zijn geneigd specifieke reacties te genereren op basis van hoe de prompt is getokeniseerd.
- Vocabulairebeperkingen: De beperkte hoeveelheid woorden in het vocabulaire leidt in de praktijk tot een focus op het Engels (English-centricity).
- Suboptimale rekenkracht: Er is een risico op een inefficiënte toewijzing van rekenkracht.
Deze problemen hebben geleid tot onderzoek naar alternatieven, waarvan het gebruik van de onderliggende UTF-8 bytes (de codering van de tekst) de meest voorkomende is. Hoewel veel vroege byte-gebaseerde LLM's claimen beter te presteren op de efficiëntie-prestatie Pareto-frontier, is er in de praktijk geen brede adoptie geweest; alle toonaangevende LLM's vertrouwen nog steeds exclusief op subwoord-tokenisatie.
Wij stellen dat de reden voor dit verschil tussen theorie en praktijk is dat bestaande benaderingen zich voornamelijk richten op het trainen van een nieuw byte-model vanaf een willekeurige initialisatie (random initialization), en dit vergelijken met een subwoord-model dat ook vanaf nul is getraind. Echter, de training van state-of-the-art subwoord-modellen evolueert razendsnel door innovaties in datacuratie, architectuur en post-training. Het is onhaalbaar voor byte-modellen om dit tempo bij te houden zonder enorme investeringen.
Om dit op te lossen, introduceren we een methode om byte-gebaseerde LLM's te creëren die prestaties behalen die dicht bij die van state-of-the-art subwoord-modellen liggen. In plaats van vanaf nul te beginnen, hebben we een bestaand subwoord-model aangepast naar het byte-niveau met minder dan 1% van een typisch pretraining-budget (totaal 49,1 miljard tokens). We noemen dit proces byteificatie. Hiermee hebben we de modellen Bolmo 7B en Bolmo 1B getraind (gebaseerd op Olmo 3 7B en OLMo 2 1B), Bwen 8B (gebaseerd op Qwen3 8B Base) en Blama 8B (gebaseerd op Llama 3 8B).
Onze architectuur aggregeert de byte-stroom in een reeks patches, waarbij elke patch bestaat uit één of meer bytes. Deze patches worden verwerkt door een groot Transformer-taalmodel en vervolgens teruggekoppeld naar bytes. Vanwege deze latente tokenisatie spreken we van een latent tokenizer language model (LTLM). We hebben onze architectuur specifiek ontworpen om geschikt te zijn voor byteificatie, waarbij we de mismatch tussen de expressiviteit van subword-tokenisatie en latente LTLM-tokenisatie hebben opgelost.
Onze resultaten tonen aan dat de byteificeerde modellen gemiddeld beter presteren dan alle eerdere publiek beschikbare byte-modellen van vergelijkbare grootte. Zo behaalde Bolmo 7B een absolute verbetering van +16,5% in STEM-taken ten opzichte van BLT 7B. Bolmo 7B presteerde ook aanzienlijk beter dan de bron Olmo 3 op het gebied van karakterbegrip en in bepaalde coderingsscenario's. Bwen 8B presteerde zelfs beter dan Bolmo 7B en benaderde of overtrof soms het bron-Qwen-model. Daarnaast kunnen byteificeerde modellen verder worden versneld door te trainen met hogere ratio's van bytes per patch.
Samenvattend bieden byte-gebaseerde LLM's aanzienlijk potentieel voor toekomstige modellen, met voordelen voor computationele efficiëntie, vermindering van bias door Engels-centrische tokenisatie en betere toepassingen in wetenschappelijke en technische domeinen waar fijnmazig tekstbegrip essentieel is.
Architectuur van het byteificeerde taalmodel
De byteificeerde modellen volgen de algemene structuur van eerdere LTLM's. In essentie werkt het als volgt:
- Een lokale encoder die over bytes opereert, creëert contextualiseerde byte-representaties.
- Een neurale boundary predictor (grensbepaler) voorspelt op welke posities grenzen moeten worden geplaatst.
- Deze informatie wordt gebruikt om patches te creëren: een aaneengesloten reeks bytes tussen twee grenzen.
- Een pooling-module reduceert de representaties tot één representatie per patch, die vervolgens door een diep globaal model wordt verwerkt.
- De patch-representaties worden via depooling teruggebracht naar het byte-niveau en verder contextualiseerd door een lokale decoder.
- De representaties van de lokale decoder worden gebruikt om de volgende byte en andere potentiële informatie te voorspellen.
Non-causale grensbepaling
Een cruciaal verschil met eerdere architecturen is onze non-causale patch boundary prediction. Eerdere LTLM's gebruikten alleen context uit het verleden om te bepalen waar een grens moest komen (causaal). Echter, subwoord-tokenizers gebruiken in de praktijk informatie over toekomstige bytes om grenzen te bepalen.
Om dit verschil op te lossen, maken wij gebruik van maximaal 1 byte aan toekomstige context tijdens de prefill-fase. Dit zorgt ervoor dat patches semantisch coherenter worden. Bijvoorbeeld, bij het woord "flowerbed" kan een non-causale predictor bepalen of "flower" een aparte patch moet zijn op basis van wat er na de 'r' volgt, terwijl een causale predictor dit voor elk woord dat begint met "flower" (zoals "flowers") hetzelfde zou moeten doen.
Voor het decoding-proces, waar toekomstige bytes nog niet bekend zijn, hebben we een speciaal symbool <b\> aan het vocabulaire toegevoegd. De lokale decoder leert om <b\> uit te zenden aan het einde van elke patch. Om de overhead hiervan te minimaliseren, hebben we de byte-vocabulaire grootte verdubbeld van 256 naar 512, waarbij elke byte een versie heeft die gevolgd wordt door een grens.
Trainingsprocedure voor byteificatie
De procedure bestaat uit twee fasen:
- Fase 1: Distillatie. In deze fase leren we snel gewichten voor de lokale encoder, lokale decoder, boundary predictor en de language-modelling head. Het doel is om het gedrag van het bron-subwoord-model exact te herstellen. De parameters van het globale model blijven in deze fase bevroren.
- Fase 2: End-to-end training. Hier trainen we het volledige model zodat het leert om byte-informatie effectief te gebruiken. In deze fase kan ook de compressieratio (bytes per patch) worden verhoogd.
Prestaties na byteificatie
We hebben de modellen Qwen3 8B, Llama 3 8B en Olmo 3 7B byteificeerd tot respectievelijk Bwen 8B, Blama 8B en Bolmo 7B.
Bwen 8B presteerde statistisch significant beter dan alle eerdere byte-modellen en verbeterde in bijna alle categorieën. De byteificeerde modellen overtroffen hun subwoord-tegenhangers aanzienlijk op het gebied van karakterbegrip. Dit werd versneld door het gebruik van synthetische data die specifiek gericht waren op karakterbegrip.
Verbeteren van model-efficiëntie
Een groot voordeel van LTLM's is dat ze niet beperkt zijn tot een vaste set patches. We hebben onderzocht of we het model kunnen versnellen door een hoger gemiddeld aantal bytes per patch aan te moedigen.
In vergelijking met subwoord-modellen die gebruikmaken van tokenizer transfer naar SuperBPE, ondervinden byte-modellen geen "softmax-bottleneck". Bij subwoord-modellen wordt de softmax-berekening computationeel te duur zodra het vocabulaire te groot wordt. Byte-modellen kunnen hun efficiëntie onbeperkt verhogen bij een geleidelijke afname van de prestaties. We stelden vast dat BPE-merges (Byte Pair Encoding) het beste werkten voor het bereiken van een hogere compressie in de byteificatie-setting.
Post-training via taak-aritmetiek
We hebben onderzocht of we bestaande post-trained versies van Olmo 3 konden gebruiken om Bolmo te verbeteren zonder extra trainingskosten. Via taak-aritmetiek (task arithmetic) hebben we het verschil in gewichten tussen een instructie-geoptimaliseerd model (RL-Zero) en het basismodel toegevoegd aan de lagen van Bolmo.
Dit resulteerde in een aanzienlijke verbetering van de capaciteit om instructies te volgen, waarbij de prestaties van Bolmo op het IFEval-benchmarkniveau kwamen om dat van het oorspronkelijke post-trained checkpoint. Dit bewijst dat het ecosysteem van subwoord-modellen direct kan worden ingezet om byteificeerde modellen te verbeteren.
Voordelen van training in twee fasen
Om te testen of de complexiteit van de twee fasen gerechtvaardigd was, hebben we experimenten uitgevoerd waarbij Fase 1 werd overgeslagen. De resultaten tonen aan dat vooral kleinere modellen (1B) sterker profiteerden van Fase 1. Hoewel het weglaten van Fase 1 niet leidde tot een catastrofale degradatie, versnelt Fase 1 het experimenteren aanzienlijk door snel een checkpoint te creëren dat de prestaties van het subwoord-model benadert.
Conclusie
Byteificatie biedt een nieuwe route voor de ontwikkeling van byte-gebaseerde LLM's. Het stelt ons in staat om modellen te creëren met prestaties die dicht bij die van state-of-the-art subwoord-modellen liggen, maar met een fractie van de benodigde rekenmiddelen. Deze modellen bieden flexibiliteit in inferentiesnelheid, verminderen bias en verbeteren het begrip van fijnmazige tekstuele informatie, wat hen een praktisch alternatief maakt voor traditionele tokenisatie.
---
Methoden
Details van de architectuur
De architectuur bestaat uit de volgende componenten:
- Tokenisatie en embedding: Elke UTF-8 byte krijgt een embedding uit een tabel. Om de prestaties te verbeteren, voegen we residentieel de langste subwoord-embedding toe die eindigt op de huidige byte-positie.
- Lokale encoder: Gebruikt een mLSTM-laag om byte-level embeddings te contextualiseren. mLSTM is gekozen vanwege de balans tussen snelheid en prestaties.
- Boundary predictor: Voorspelt een score $p \in [0, 1]$ voor elke byte. Bij een score boven een bepaalde drempel wordt een patch-grens geplaatst. Tijdens de prefill is deze predictor non-causaal (gebruikt 1 byte toekomstcontext).
- Pooling: De representatie van de laatste byte in elke patch wordt gekozen als de patch-representatie $h$.
- Globaal model: Een diep model (overgenomen van het bron-subwoord-model) dat de patch-representaties contextualiseert.
- Depooling: De output van het globale model wordt toegevoegd aan een lineaire projectie van de byte-representaties.
- Lokale decoder: Een stack van vier mLSTM-lagen die de depooled-representaties verder contextualiseert.
- Language-modelling head: Converteert de uiteindelijke representaties naar waarschijnlijkheden voor de volgende byte (en eventuele grens-symbolen).
Byteificatie-procedure
Subwoord-naar-byte distillatie (Fase 1)
Het doel is om het gedrag van het subwoord-model te imiteren. De loss-functie bestaat uit drie delen:
- Boundary predictor loss: Minimaliseert het verschil tussen de voorspelde grenzen en de werkelijke subwoord-grenzen via binary cross-entropy.
- Lokale encoder loss: In plaats van direct embeddings te matchen, minimaliseren we de $L^2$-afstand tussen representaties na propagatie door de eerste $n$ lagen (waarbij $n=4$) van het globale model.
- Lokale decoder loss: Vergelijkt de likelihood van patches tussen het byte-model en het subwoord-model.
End-to-end training (Fase 2)
Het volledige model wordt getraind met een combinatie van boundary loss en cross-entropy loss. Hierbij worden alle parameters, inclusief die van het globale model, geoptimaliseerd.
Methoden voor verhoging van de compressiefactor
Om de compressie (bytes per patch) te verhogen, worden subwoord-grenzen verwijderd op basis van drie strategieën:
- BPE: Iteratief samenvoegen van de meest voorkomende paren per voorbeeld.
- Entropy: Samenvoegen op basis van de laagste totale entropie, berekend door een hulp-LLM.
- Cross-entropy: Samenvoegen op basis van de laagste totale cross-entropy ten opzichte van de volgende token.
Experimentele opzet
- Data: Een mix van ongeveer 172 miljard tokens (Dolma 2), aangevuld met 75 miljoen tokens aan CUTE-stijl data voor karakterbegrip.
- Modellen: Gebruikt Qwen3 8B, Llama 3 8B en Olmo 3 7B als basis.
- Training: Fase 1 op 9,8 miljard tokens; Fase 2 op 39,3 miljard tokens.
- Evaluatie: Gebruik van suites gebaseerd op OlmoBaseEval, aangevuld met CUTE en EXECUTE voor karakterbegrip.
Referenties
(De lijst met 110+ academische referenties uit het originele document is behouden als onderdeel van de bronverwijzingen, variërend van fundamentele werken over Transformers (Vaswani et al.) tot recent onderzoek naar tokenisatie en byte-modellen.)
Taalmodellen aanpassen om op bytes te opereren
Abstract
Recente vorderingen in kunstmatige intelligentie (AI) zijn grotendeels gedreven door grote taalmodellen (LLM's), diepe neurale netwerken die opereren over discrete eenheden genaamd tokens. Om tekst te representeren gebruiken de meeste grote taalmodellen woorden of woordfragmenten als tokens, bekend als subwoord-tokenisatie. Subwoord-tokenisatie maskeert fijnmazige informatie, wat problematisch is voor wetenschappelijke data—zoals computercode of biologische sequenties—waar de betekenis afhangt van individuele tekens of bytes.
Modellen die direct opereren op de byte-codering van tekst vermijden deze beperkingen, maar tot nu toe bleven ze in prestaties achter bij subwoord-gebaseerde modellen. Hier introduceren we een algemene methode voor het creëren van byte-gebaseerde grote taalmodellen via byteificatie, die de mogelijkheden van subwoord-gebaseerde systemen benaderen. We gebruiken een conversieprocedure in twee fasen om bestaande subwoord-gebaseerde modellen aan te passen tot byte-modellen met minimale extra training. De resulterende modellen presteren beter dan eerdere byte-gebaseerde benaderingen en blinken uit in redeneringstaken op tekenniveau. Ze behalen praktische inferentiesnelheden door byte-informatie efficiënt te verwerken en vertonen aanpasbaarheid door het bestaande ecosysteem rond het bronmodel te hergebruiken. Onze resultaten verwijderen een langdurige prestatiebarrière voor end-to-end byte-gebaseerde taalmodellering en tonen aan dat modellen die opereren op ruwe tekstcoderingen concurrerend kunnen schalen, terwijl ze voordelen bieden in domeinen die fijnmazig tekstueel begrip vereisen.
Inleiding
De recente vooruitgang in AI is gedreven door end-to-end deep learning-systemen die representaties direct uit data leren. Grote taalmodellen (LLM's) zijn hier een voorbeeld van, waarbij sterke capaciteiten worden bereikt door training op enorme collecties tekst. Ondanks hun schijnbare generaliteit zijn hedendaagse LLM's niet volledig end-to-end: voordat het leerproces kan beginnen, moet tekst eerst worden gekoppeld aan een reeks discrete eenheden, genaamd tokens. De keuze van tokens vormt fundamenteel de representaties die LLM's leren en de gedragingen die ze vertonen.
De overgrote meerderheid van de huidige LLM's gebruikt woorden of delen van woorden als tokens in een proces dat bekend staat als subwoord-tokenisatie. Dit leidt tot diverse problemen:
- Beperkt begrip op tekenniveau: Dit hindert vooral de prestaties bij wetenschappelijke data, zoals code en biologische sequenties.
- Impliciete bias: Modellen zijn geneigd specifieke reacties te genereren op basis van hoe de prompt is getokeniseerd.
- Vocabulairebeperkingen: De beperkte hoeveelheid woorden in het vocabulaire leidt in de praktijk tot een focus op het Engels (English-centricity).
- Suboptimale rekenkracht: Er is een risico op een inefficiënte toewijzing van rekenkracht.
Deze problemen hebben geleid tot onderzoek naar alternatieven, waarvan het gebruik van de onderliggende UTF-8 bytes (de codering van de tekst) de meest voorkomende is. Hoewel veel vroege byte-gebaseerde LLM's claimen beter te presteren op de efficiëntie-prestatie Pareto-frontier, is er in de praktijk geen brede adoptie geweest; alle toonaangevende LLM's vertrouwen nog steeds exclusief op subwoord-tokenisatie.
Wij stellen dat de reden voor dit verschil tussen theorie en praktijk is dat bestaande benaderingen zich voornamelijk richten op het trainen van een nieuw byte-model vanaf een willekeurige initialisatie (random initialization), en dit vergelijken met een subwoord-model dat ook vanaf nul is getraind. Echter, de training van state-of-the-art subwoord-modellen evolueert razendsnel door innovaties in datacuratie, architectuur en post-training. Het is onhaalbaar voor byte-modellen om dit tempo bij te houden zonder enorme investeringen.
Om dit op te lossen, introduceren we een methode om byte-gebaseerde LLM's te creëren die prestaties behalen die dicht bij die van state-of-the-art subwoord-modellen liggen. In plaats van vanaf nul te beginnen, hebben we een bestaand subwoord-model aangepast naar het byte-niveau met minder dan 1% van een typisch pretraining-budget (totaal 49,1 miljard tokens). We noemen dit proces byteificatie. Hiermee hebben we de modellen Bolmo 7B en Bolmo 1B getraind (gebaseerd op Olmo 3 7B en OLMo 2 1B), Bwen 8B (gebaseerd op Qwen3 8B Base) en Blama 8B (gebaseerd op Llama 3 8B).
Onze architectuur aggregeert de byte-stroom in een reeks patches, waarbij elke patch bestaat uit één of meer bytes. Deze patches worden verwerkt door een groot Transformer-taalmodel en vervolgens teruggekoppeld naar bytes. Vanwege deze latente tokenisatie spreken we van een latent tokenizer language model (LTLM). We hebben onze architectuur specifiek ontworpen om geschikt te zijn voor byteificatie, waarbij we de mismatch tussen de expressiviteit van subword-tokenisatie en latente LTLM-tokenisatie hebben opgelost.
Onze resultaten tonen aan dat de byteificeerde modellen gemiddeld beter presteren dan alle eerdere publiek beschikbare byte-modellen van vergelijkbare grootte. Zo behaalde Bolmo 7B een absolute verbetering van +16,5% in STEM-taken ten opzichte van BLT 7B. Bolmo 7B presteerde ook aanzienlijk beter dan de bron Olmo 3 op het gebied van karakterbegrip en in bepaalde coderingsscenario's. Bwen 8B presteerde zelfs beter dan Bolmo 7B en benaderde of overtrof soms het bron-Qwen-model. Daarnaast kunnen byteificeerde modellen verder worden versneld door te trainen met hogere ratio's van bytes per patch.
Samenvattend bieden byte-gebaseerde LLM's aanzienlijk potentieel voor toekomstige modellen, met voordelen voor computationele efficiëntie, vermindering van bias door Engels-centrische tokenisatie en betere toepassingen in wetenschappelijke en technische domeinen waar fijnmazig tekstbegrip essentieel is.
Architectuur van het byteificeerde taalmodel
De byteificeerde modellen volgen de algemene structuur van eerdere LTLM's. In essentie werkt het als volgt:
- Een lokale encoder die over bytes opereert, creëert contextualiseerde byte-representaties.
- Een neurale boundary predictor (grensbepaler) voorspelt op welke posities grenzen moeten worden geplaatst.
- Deze informatie wordt gebruikt om patches te creëren: een aaneengesloten reeks bytes tussen twee grenzen.
- Een pooling-module reduceert de representaties tot één representatie per patch, die vervolgens door een diep globaal model wordt verwerkt.
- De patch-representaties worden via depooling teruggebracht naar het byte-niveau en verder contextualiseerd door een lokale decoder.
- De representaties van de lokale decoder worden gebruikt om de volgende byte en andere potentiële informatie te voorspellen.
Non-causale grensbepaling
Een cruciaal verschil met eerdere architecturen is onze non-causale patch boundary prediction. Eerdere LTLM's gebruikten alleen context uit het verleden om te bepalen waar een grens moest komen (causaal). Echter, subwoord-tokenizers gebruiken in de praktijk informatie over toekomstige bytes om grenzen te bepalen.
Om dit verschil op te lossen, maken wij gebruik van maximaal 1 byte aan toekomstige context tijdens de prefill-fase. Dit zorgt ervoor dat patches semantisch coherenter worden. Bijvoorbeeld, bij het woord "flowerbed" kan een non-causale predictor bepalen of "flower" een aparte patch moet zijn op basis van wat er na de 'r' volgt, terwijl een causale predictor dit voor elk woord dat begint met "flower" (zoals "flowers") hetzelfde zou moeten doen.
Voor het decoding-proces, waar toekomstige bytes nog niet bekend zijn, hebben we een speciaal symbool <b\> aan het vocabulaire toegevoegd. De lokale decoder leert om <b\> uit te zenden aan het einde van elke patch. Om de overhead hiervan te minimaliseren, hebben we de byte-vocabulaire grootte verdubbeld van 256 naar 512, waarbij elke byte een versie heeft die gevolgd wordt door een grens.
Trainingsprocedure voor byteificatie
De procedure bestaat uit twee fasen:
- Fase 1: Distillatie. In deze fase leren we snel gewichten voor de lokale encoder, lokale decoder, boundary predictor en de language-modelling head. Het doel is om het gedrag van het bron-subwoord-model exact te herstellen. De parameters van het globale model blijven in deze fase bevroren.
- Fase 2: End-to-end training. Hier trainen we het volledige model zodat het leert om byte-informatie effectief te gebruiken. In deze fase kan ook de compressieratio (bytes per patch) worden verhoogd.
Prestaties na byteificatie
We hebben de modellen Qwen3 8B, Llama 3 8B en Olmo 3 7B byteificeerd tot respectievelijk Bwen 8B, Blama 8B en Bolmo 7B.
Bwen 8B presteerde statistisch significant beter dan alle eerdere byte-modellen en verbeterde in bijna alle categorieën. De byteificeerde modellen overtroffen hun subwoord-tegenhangers aanzienlijk op het gebied van karakterbegrip. Dit werd versneld door het gebruik van synthetische data die specifiek gericht waren op karakterbegrip.
Verbeteren van model-efficiëntie
Een groot voordeel van LTLM's is dat ze niet beperkt zijn tot een vaste set patches. We hebben onderzocht of we het model kunnen versnellen door een hoger gemiddeld aantal bytes per patch aan te moedigen.
In vergelijking met subwoord-modellen die gebruikmaken van tokenizer transfer naar SuperBPE, ondervinden byte-modellen geen "softmax-bottleneck". Bij subwoord-modellen wordt de softmax-berekening computationeel te duur zodra het vocabulaire te groot wordt. Byte-modellen kunnen hun efficiëntie onbeperkt verhogen bij een geleidelijke afname van de prestaties. We stelden vast dat BPE-merges (Byte Pair Encoding) het beste werkten voor het bereiken van een hogere compressie in de byteificatie-setting.
Post-training via taak-aritmetiek
We hebben onderzocht of we bestaande post-trained versies van Olmo 3 konden gebruiken om Bolmo te verbeteren zonder extra trainingskosten. Via taak-aritmetiek (task arithmetic) hebben we het verschil in gewichten tussen een instructie-geoptimaliseerd model (RL-Zero) en het basismodel toegevoegd aan de lagen van Bolmo.
Dit resulteerde in een aanzienlijke verbetering van de capaciteit om instructies te volgen, waarbij de prestaties van Bolmo op het IFEval-benchmarkniveau kwamen om dat van het oorspronkelijke post-trained checkpoint. Dit bewijst dat het ecosysteem van subwoord-modellen direct kan worden ingezet om byteificeerde modellen te verbeteren.
Voordelen van training in twee fasen
Om te testen of de complexiteit van de twee fasen gerechtvaardigd was, hebben we experimenten uitgevoerd waarbij Fase 1 werd overgeslagen. De resultaten tonen aan dat vooral kleinere modellen (1B) sterker profiteerden van Fase 1. Hoewel het weglaten van Fase 1 niet leidde tot een catastrofale degradatie, versnelt Fase 1 het experimenteren aanzienlijk door snel een checkpoint te creëren dat de prestaties van het subwoord-model benadert.
Conclusie
Byteificatie biedt een nieuwe route voor de ontwikkeling van byte-gebaseerde LLM's. Het stelt ons in staat om modellen te creëren met prestaties die dicht bij die van state-of-the-art subwoord-modellen liggen, maar met een fractie van de benodigde rekenmiddelen. Deze modellen bieden flexibiliteit in inferentiesnelheid, verminderen bias en verbeteren het begrip van fijnmazige tekstuele informatie, wat hen een praktisch alternatief maakt voor traditionele tokenisatie.
---
Methoden
Details van de architectuur
De architectuur bestaat uit de volgende componenten:
- Tokenisatie en embedding: Elke UTF-8 byte krijgt een embedding uit een tabel. Om de prestaties te verbeteren, voegen we residentieel de langste subwoord-embedding toe die eindigt op de huidige byte-positie.
- Lokale encoder: Gebruikt een mLSTM-laag om byte-level embeddings te contextualiseren. mLSTM is gekozen vanwege de balans tussen snelheid en prestaties.
- Boundary predictor: Voorspelt een score $p \in [0, 1]$ voor elke byte. Bij een score boven een bepaalde drempel wordt een patch-grens geplaatst. Tijdens de prefill is deze predictor non-causaal (gebruikt 1 byte toekomstcontext).
- Pooling: De representatie van de laatste byte in elke patch wordt gekozen als de patch-representatie $h$.
- Globaal model: Een diep model (overgenomen van het bron-subwoord-model) dat de patch-representaties contextualiseert.
- Depooling: De output van het globale model wordt toegevoegd aan een lineaire projectie van de byte-representaties.
- Lokale decoder: Een stack van vier mLSTM-lagen die de depooled-representaties verder contextualiseert.
- Language-modelling head: Converteert de uiteindelijke representaties naar waarschijnlijkheden voor de volgende byte (en eventuele grens-symbolen).
Byteificatie-procedure
Subwoord-naar-byte distillatie (Fase 1)
Het doel is om het gedrag van het subwoord-model te imiteren. De loss-functie bestaat uit drie delen:
- Boundary predictor loss: Minimaliseert het verschil tussen de voorspelde grenzen en de werkelijke subwoord-grenzen via binary cross-entropy.
- Lokale encoder loss: In plaats van direct embeddings te matchen, minimaliseren we de $L^2$-afstand tussen representaties na propagatie door de eerste $n$ lagen (waarbij $n=4$) van het globale model.
- Lokale decoder loss: Vergelijkt de likelihood van patches tussen het byte-model en het subwoord-model.
End-to-end training (Fase 2)
Het volledige model wordt getraind met een combinatie van boundary loss en cross-entropy loss. Hierbij worden alle parameters, inclusief die van het globale model, geoptimaliseerd.
Methoden voor verhoging van de compressiefactor
Om de compressie (bytes per patch) te verhogen, worden subwoord-grenzen verwijderd op basis van drie strategieën:
- BPE: Iteratief samenvoegen van de meest voorkomende paren per voorbeeld.
- Entropy: Samenvoegen op basis van de laagste totale entropie, berekend door een hulp-LLM.
- Cross-entropy: Samenvoegen op basis van de laagste totale cross-entropy ten opzichte van de volgende token.
Experimentele opzet
- Data: Een mix van ongeveer 172 miljard tokens (Dolma 2), aangevuld met 75 miljoen tokens aan CUTE-stijl data voor karakterbegrip.
- Modellen: Gebruikt Qwen3 8B, Llama 3 8B en Olmo 3 7B als basis.
- Training: Fase 1 op 9,8 miljard tokens; Fase 2 op 39,3 miljard tokens.
- Evaluatie: Gebruik van suites gebaseerd op OlmoBaseEval, aangevuld met CUTE en EXECUTE voor karakterbegrip.
Referenties
(De lijst met 110+ academische referenties uit het originele document is behouden als onderdeel van de bronverwijzingen, variërend van fundamentele werken over Transformers (Vaswani et al.) tot recent onderzoek naar tokenisatie en byte-modellen.)