MultiTok: Variable-Length Tokenization for Efficient LLMs Adapted from LZW Compression

📄 arXiv: 2410.21548v2 📥 PDF

作者: Noel Elias, Homa Esfahanizadeh, Kaan Kale, Sriram Vishwanath, Muriel Medard

分类: cs.CL, cs.IT, cs.LG

发布日期: 2024-10-28 (更新: 2025-01-21)


💡 一句话要点

MultiTok:一种基于LZW压缩的高效变长分词方法,加速LLM训练。

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 分词算法 数据压缩 大型语言模型 训练效率 LZW算法

📋 核心要点

  1. 现有大型语言模型训练需要大量数据、昂贵的硬件和长时间的训练,资源需求巨大。
  2. MultiTok借鉴LZW压缩算法,将重复出现的短语压缩成多词token,从而减少数据冗余。
  3. 实验表明,MultiTok在减少训练数据和加速训练的同时,保持了与BERT和GPT-2相当的性能。

📝 摘要(中文)

本文提出了一种新的分词方法MultiTok,其灵感来源于通用的Lempel-Ziv-Welch数据压缩算法,该算法将重复的短语压缩成多词token。MultiTok作为一种新的分词工具,能够显著提高语言模型的训练效率,同时在更简洁和压缩的训练数据上提供相似的准确性。实验结果表明,MultiTok作为独立的分词器或现有分词器的附加组件,均能达到与BERT和GPT-2标准相当的性能,同时以超过30%更少的训练数据实现了接近2.5倍的训练速度提升。

🔬 方法详解

问题定义:现有大型语言模型(LLM)的训练面临着计算资源和时间成本的巨大挑战。传统的分词方法通常将文本分割成固定长度的token,无法有效捕捉文本中的重复模式和长距离依赖关系,导致训练数据冗余,训练效率低下。

核心思路:MultiTok的核心思路是利用数据压缩领域的经典算法——Lempel-Ziv-Welch (LZW) 算法,自适应地将文本中频繁出现的短语组合成变长的token。通过减少token序列的长度,降低模型的计算复杂度,从而加速训练过程。这种方法旨在更有效地利用训练数据,减少冗余信息,提升模型的学习效率。

技术框架:MultiTok分词器的构建过程大致如下:1. 初始化一个包含所有单字符的词表。2. 遍历训练语料,如果当前字符序列加上下一个字符在词表中,则继续向后扩展;否则,将当前字符序列作为一个新的token加入词表,并将扩展后的字符序列作为新的起始序列。3. 重复步骤2,直到遍历完整个语料库。最终得到的词表包含单字符和高频短语的组合,用于后续的分词任务。

关键创新:MultiTok的关键创新在于将通用的数据压缩算法应用于语言模型的分词任务。与传统的分词方法相比,MultiTok能够自适应地学习文本中的重复模式,生成变长的token,从而更有效地压缩训练数据,减少冗余信息。这种方法无需预先定义词表大小或进行复杂的统计分析,具有较强的通用性和适应性。

关键设计:MultiTok算法的关键设计在于词表的动态构建和更新。算法在遍历语料库的过程中,不断地将新的短语加入词表,从而能够捕捉到文本中不断变化的模式。此外,MultiTok算法的实现相对简单,易于集成到现有的语言模型训练流程中。没有明确提及损失函数或网络结构,因为MultiTok主要关注分词阶段的优化。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

MultiTok在实验中表现出显著的性能优势。在保持与BERT和GPT-2相当的性能水平下,MultiTok能够以超过30%更少的训练数据实现接近2.5倍的训练速度提升。这些结果表明,MultiTok是一种高效且实用的分词方法,能够有效降低LLM的训练成本。

🎯 应用场景

MultiTok可应用于各种自然语言处理任务,尤其适用于资源受限场景下的大型语言模型训练。通过减少训练数据量和加速训练过程,MultiTok能够降低LLM的开发和部署成本,促进LLM在移动设备、边缘计算等领域的应用。此外,MultiTok还可以作为现有分词器的补充,进一步提升语言模型的性能。

📄 摘要(原文)

Large language models have drastically changed the prospects of AI by introducing technologies for more complex natural language processing. However, current methodologies to train such LLMs require extensive resources including but not limited to large amounts of data, expensive machinery, and lengthy training. To solve this problem, this paper proposes a new tokenization method inspired by universal Lempel-Ziv-Welch data compression that compresses repetitive phrases into multi-word tokens. With MultiTok as a new tokenizing tool, we show that language models are able to be trained notably more efficiently while offering a similar accuracy on more succinct and compressed training data. In fact, our results demonstrate that MultiTok achieves a comparable performance to the BERT and GPT-2 standards as both a stand-alone tokenizer and an add-on to existing tokenizers while also providing close to 2.5x faster training with more than 30% less training data.