CLFeb 1, 2024

Getting the most out of your tokenizer for pre-training and domain adaptation

arXiv:2402.01035v270 citationsh-index: 21ICML
Originality Incremental advance
AI Analysis

This addresses the problem of optimizing tokenization for LLM efficiency and performance, particularly in code generation, but is incremental as it builds on existing tokenizer methods.

The paper tackles the understudied impact of tokenizer design on LLM performance, showing that specialized tokenizers can significantly improve generation speed and effective context size, with gains observed when fine-tuning on over 50 billion tokens.

Tokenization is an understudied and often neglected component of modern LLMs. Most published works use a single tokenizer for all experiments, often borrowed from another model, without performing ablations or analysis to optimize tokenization. Moreover, the tokenizer is generally kept unchanged when fine-tuning a base model. In this paper, we show that the size, pre-tokenization regular expression, and training data of a tokenizer can significantly impact the model's generation speed, effective context size, memory usage, and downstream performance. We train specialized Byte-Pair Encoding code tokenizers, and conduct extensive ablations on the impact of tokenizer design on the performance of LLMs for code generation tasks such as HumanEval and MBPP, and provide recommendations for tokenizer hyper-parameters selection and switching the tokenizer in a pre-trained LLM. We perform our experiments on models trained from scratch and from pre-trained models, verifying their applicability to a wide range of use-cases. We find that when fine-tuning on more than 50 billion tokens, we can specialize the tokenizer of a pre-trained LLM to obtain large gains in generation speed and effective context size.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes