Formalizing BPE Tokenization
Martin Berglund, Brink van der Merwe
Abstract
In this paper, we formalize practical byte pair encoding tokenization as it is used in large language models and other NLP systems, in particular we formally define and investigate the semantics of the SentencePiece and HuggingFace tokenizers, in particular how they relate to each other, depending on how the tokenization rules are constructed. Beyond this we consider how tokenization can be performed in an incremental fashion, as well as doing it left-to-right using an amount of memory constant in the length of the string, enabling e.g. using a finite state string-to-string transducer.
Topics & Concepts
Lexical analysisComputer scienceString (physics)ByteProgramming languageFinite-state machineConstant (computer programming)Theoretical computer scienceArtificial intelligenceNatural language processingPhysicsTheoretical physicsNatural Language Processing TechniquesTopic ModelingLogic, programming, and type systems