跳转至

Universal Byte-Level Encoding: UTF-8/UTF-16 Routing to Reduce Cross-Script Token-Budget Disparities

会议: NeurIPS 2026
arXiv: 2610.01984
OpenReview: https://openreview.net/forum?id=PYtjaNdYaM
代码: https://github.com/hyunsik-k/universal-byte-level-encoding
领域: 预训练
关键词: 多语言分词器, 字节对编码 (BBPE), 跨语言 Token 预算差距, 编码基底路由, 上下文利用率

一句话总结

针对 UTF-8 BBPE 分词器因多字节回退基底过高导致非拉丁语系面临严重 Token 预算赤字的问题,本文提出通过单一确定性字符级 UTF-8/UTF-16 双基底路由(UBE),在保持无缝无损解码和标准 BPE 训练的前提下将 3 字节 BMP 字符的基底成本从 3 降为 2,显著压缩跨语言 Token 溢价差距并提升模型有效上下文容量。

研究背景与动机

在大语言模型的多语言预训练与实际部署中,分词器(Tokenizer)不仅是一个纯粹的前处理组件,更直接决定了不同语言在有限上下文窗口与计算预算下的资源分配机制。当前绝大多数开源大模型(如 LLaMA、Mistral 等)均采用基于 UTF-8 字节的字节级字节对编码(BBPE),因其天然具备覆盖全部 Unicode 码点、完全无未登录词(OOV)且可无损还原的优良特性。然而,这种语言无关的通用性掩盖了 UTF-8 编码基底(substrate)天然带来的不对称性:在未习得任何合并规则(BPE Merge)之前,ASCII 拉丁字符仅需 1 个字节符号,西里尔与阿拉伯字符需 2 字节,而包括中文、日文、韩文(CJK)以及梵文、藏文等绝大多数基本多语言平面(BMP)字符则强制占用 3 字节。在词表容量受限(如端侧或轻量级模型常用的 16K–50K 词表)或跨语言长尾低资源语料下,未被词表覆盖的生僻词和字符将直接回退到单字节分解,这使得 3 字节语言从起点就承担了 3 倍于英语的编码保底成本(Encoding Floor)。

这种基底层面的不对称性引发了极具破坏性的跨语言 Token 预算差距(Token-Budget Disparities):在对齐的语义平行文本下,低资源 3 字节字符书写的语种所消耗的序列长度往往是英语的数倍乃至十余倍,不仅极度挤压了原本宝贵的上下文窗口,更直接放大了自回归生成与 Prefill 阶段的计算延迟和按 Token 计费 API 的使用成本。近期虽有探索尝试替换全局底层编码(如完全基于 UTF-16 的 BBPE16),但粗暴地全局换底会导致原本在 UTF-8 下仅占 1 字节的高效英语与拉丁字符被无谓膨胀至 2 字节,在主流的多语言混排与代码场景中得不偿失;而引入语言分类器或修改分词边界规则又会破坏标准的 BPE 训练机制与无损还原保证。

本文的切入角度是:分词基底的选择并不必须是非此即彼的全局统一方案,既然字符的 UTF-8 字节长度是确定性可自省的,就可以在标量(Scalar)层面实施免标记、自适应的路由分流。核心 idea:提出通用字节级编码 UBE(Universal Byte-Level Encoding),依据字符 UTF-8 长度实现确定性分流——1–2 字节字符走 UTF-8 路径映射至 GPT-2 字节表,3–4 字节字符走 UTF-16 路径映射至独立的 Unicode 私有区(PUA)字节表,在不牺牲英文高效性的同时将 3 字节 BMP 字符的保底开销从 3 降至 2,且完全保持标准 BPE 算法核心与双向无损可逆。

方法详解

整体框架

UBE 并没有改变 Transformer 架构,也没有在 BPE 合并学习(Pair Counting 与 Frequency Ranking)中引入任何语言先验或人工约束,而是作为一层即插即用的可逆基底表示层。其整体处理流程分为三个阶段:输入文本先经过标准的 GPT-2 正则表达式切分为单词级块(Regex Chunks);随后在块内部对每个 Unicode 标量值执行基于 UTF-8 字节长度的确定性字符级路由;分流后的字符分别序列化为 UTF-8 字节或 UTF-16LE 字节,并一一映射到两个互不相交的 256 符号基础字母表(共 512 个基底符号);最终由标准 BPE 算法在该 512 符号构成的符号流上完成训练与推理。在解码端,利用两套基底符号的互斥性,通过双缓冲区交替刷新机制(Flush-on-Switch)完美复原原始文本。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
    A["输入 Unicode 文本序列"] --> B["Stage 1: GPT-2 正则切分<br/>切分为词级独立的文本块 chunks"]
    B --> C["Stage 2: 确定性逐字符路由<br/>按字符 UTF-8 字节长度 |utf8(c)| 判别"]
    C -->|≤ 2 字节: 拉丁/阿拉伯等| D["UTF-8 路径 (1-2 bytes)<br/>保持原有 1-2 字节 floor"]
    C -->|≥ 3 字节: CJK/藏文/Emoji等| E["UTF-16 路径 (2 或 4 bytes)<br/>3 字节 BMP 降至 2 字节 floor"]
    D --> F["Stage 3: 双字母表符号映射<br/>UTF-8 映射至 GPT-2 字节表 (256 符号)"]
    E --> G["Stage 3: 双字母表符号映射<br/>UTF-16LE 映射至 PUA U+E100-E1FF (256 符号)"]
    F --> H["512 互斥基底符号流<br/>无跨 chunk 边界的标准 BPE 合并"]
    G --> H
    H --> I["双缓冲区交替刷新解码 (Decode)<br/>根据符号所属字母表自动切换 B8/B16 并还原"]

关键设计

1. 确定性字符级路由机制:兼顾拉丁高效性与非拉丁保底降本
传统的 BBPE 将所有文本无差别转为 UTF-8 字节,导致 3 字节 BMP 字符(涵盖中文、日文、韩文、梵文、泰文、藏文等)的 fallback 保底成本高达 3;而 BBPE16 全局采用 UTF-16,却将 1 字节的 ASCII 字符惩罚性增加到 2 字节。针对该权衡瓶颈,UBE 设计了精确到单字符标量(Unicode Scalar Value)的无分支自适应路由函数: $\(r(c) = \begin{cases} \text{UTF-8}, & \text{if } |\text{utf8}(c)| \le 2 \\ \text{UTF-16}, & \text{otherwise} \end{cases}\)$ 该规则构成对所有 Unicode 标量值的完全划分。ASCII 字符与绝大多数 2 字节字符(如扩展拉丁文、希腊文、西里尔文、阿拉伯文、希伯来文)严格保留在 UTF-8 路径;所有 3 字节的 BMP 字符则路由至 UTF-16 路径,以 UTF-16LE(小端序无 BOM)序列化为 2 个字节,直接将其保底编码代价从 3 降低至 2。对于 4 字节的非 BMP 码点(如部分生僻字与 Emoji),在 UTF-16 中序列化为 4 字节的代理对(Surrogate Pairs),与 UTF-8 的 4 字节保底持平。由此,UBE 实现了在混合语言与代码混排中“既不惩罚英文、又大幅普惠多语言”的保底成本均衡。

2. 512 符号互不相交双字母表与零标记解码:无侵入式兼容标准 BPE
若要在解码端正确还原两套不同的字节流,最直接的想法是插入显式的路径切换标记(Special Marker Tokens),但这类标记不仅会增加序列长度,其先验信号更极易在随后的 BPE 合并学习中被高频吸收,破坏训练的无序性与稳定性。UBE 巧妙利用符号空间的正交划分,完全剔除了任何控制标记:UTF-8 路径采用 GPT-2 原生的 256 个可见字节符号,而 UTF-16LE 路径的 256 个字节则一一映射至 Unicode 私有区(Private Use Area, PUA)代码块(U+E100 至 U+E1FF)。在 BPE 词表中,两个子字母表构成 \(256 + 256 = 512\) 个互斥的基础符号。当 BPE 学习出跨语言/跨字母表的合并词元(Merge Tokens)时(例如中英文紧邻的混合词),在解码阶段只需首先递归将 Token 展开为基础符号序列,任何符号都可以通过其码点范围(ord(x) >= 0xE100)瞬时、零开销地识别其属于哪个编码通道。

3. 双缓冲区交替刷新解码算法(Dual-Buffer Flush-on-Switch):严密保证可逆双向映射
在推理与生成解码时,面对展开后的混合符号流,传统解码器无法处理混合编码。UBE 提出了双缓冲区交替刷新(Algorithm 2):维护一个 UTF-8 字节缓冲区 \(B_8\) 和一个 UTF-16LE 字节缓冲区 \(B_{16}\)。当遍历符号流时,若当前符号属于 GPT-2 字母表,解码器立即触发对 \(B_{16}\) 的刷新——将暂存的所有 UTF-16LE 字节整体解码为 Unicode 字符串追加至输出流并清空 \(B_{16}\),随后将当前符号对应的字节存入 \(B_8\);反之,若遇到 PUA 字母表符号,则立即触发对 \(B_8\) 的刷新(按 UTF-8 解码并清空),并将偏移后的字节存入 \(B_{16}\);遇到特殊 Token 则双清空。该设计在数学上严格证明了双射无损性(Proposition 1):同一路径内的合法字节拼接天然保持双射,跨路径切换时缓冲区强制落地,杜绝了产生非法混杂字节序列的可能。在包含 204 种语言的 FLORES-200 及包含全量 Unicode 17 字符、表情符号、规范化与字形切分官方测试集(1,155,724 个输入)的严苛审计中,UBE 达成了 100% 的精确可逆还原,而同类竞品(如 MYTE、SCRIPT-BPE)均存在不同程度的丢字符、破坏 NFC 或过滤私有区问题。

一个完整示例

以中英混排字符串 GPU性能 为例,直观展示 UBE 在降低保底符号数上的运行细节: - ASCII 部分 GPU:每个英文字符 UTF-8 编码为 1 字节,路由至 UTF-8 路径,映射为 3 个 GPT-2 可见字节符号; - 汉字部分 性 (U+6027):UTF-8 编码为 3 字节(0xE6 0x80 0xA7),路由至 UTF-16 路径,转为 UTF-16LE 格式的两字节 0x27 0x60,映射为 PUA 符号 U+E127 和 U+E160(2 个符号); - 汉字部分 能 (U+80FD):同理转为 UTF-16LE 格式的两字节 0xFD 0x80,映射为 PUA 符号 U+E1FD 和 U+E180(2 个符号); - 基底开销对比: - 标准 BBPE:GPU (3) + 性 (3) + 能 (3) = 9 个基底符号; - BBPE16:GPU 全局升为 2 字节 (6) + 性能 (4) = 10 个基底符号; - UBE:GPU 保持 1 字节 (3) + 性能 降为 2 字节 (4) = 7 个基底符号。 在未经过任何 BPE 合并前,UBE 便天然实现了高达 22.2% 的基底序列紧凑度优化,且不增加英语负担。

实验关键数据

主实验

论文在多语言基准数据集 FLORES-200(涵盖 204 种语言配置)上评估了核心多语言分词指标,主实验采用在包含 101 种语言的 mC4 语料上训练的 32K 词表标准分词器。评估重点关注对齐句子的 Token 溢价(Token Premium,相对于英文的长度比例)的基尼系数(Gini Coefficient,衡量跨语言不平等度)以及代表性语种的绝对 Token 开销。

评估基准 / 语言 指标 UBE (32K) BBPE (32K) BBPE16 (32K) 变化 / 优势说明
FLORES-200 (全集) Token-Premium Gini ↓ 0.1979 0.2183 0.1598* 相比 BBPE 相对降低 9.4% (*BBPE16 靠严重惩罚英文降低 Gini)
FLORES-200 (全集) 平均句子 Token 数 ↓ 69.857 71.889 87.170 总体序列缩短,BBPE16 序列反膨胀 21.3%
桑塔利语 (Santali, 3字节) 平均句子 Token 数 ↓ 222.944 341.287 228.970 (16K) 极端低资源 3 字节脚本,Token 减少 34.7%
塔马齐格特语 (Tifinagh, 3字节) 平均句子 Token 数 ↓ 183.305 269.166 - 显著减少回退碎片,Token 减少 31.9%
藏语 (Tibetan, 3字节) 平均句子 Token 数 ↓ 286.737 336.804 - 显著缓解切分碎片,Token 减少 14.9%
英语 (English, 拉丁) 平均句子 Token 数 ↓ 31.068 31.160 41.317 保持且略优于 BBPE (-0.3%),而 BBPE16 暴增 +32.6%
阿拉伯语 (Arabic, 2字节) 平均句子 Token 数 ↓ 60.407 60.600 - 2 字节语言不受影响,Token 略降 0.3%
跨语种胜率统计 赢/输语种数 (204语种) 189 胜 / 15 负 - - 在 92.6% 的评估语言上生成更少的 Token

消融实验

消融实验从不同词表容量(16K 至 256K)扩展趋势、外部跨领域/泛化数据集表现,以及与不同分词边界策略(SuperBPE、SCRIPT)和形态学映射(MYTE)的即插即用正交组合进行评估。

实验维度 / 策略配置 关键指标 (Gini / Token 数) 对比基线 (BBPE) 核心发现与机制说明
词表缩放:16K 规模 Gini: 0.1927 / 均值: 76.41 0.2194 / 79.41 Gini 降低 12.1%;词表越紧凑、生僻词回退越多,保底优势越明显
词表缩放:64K 规模 Gini: 0.2043 / 均值: 64.45 0.2225 / 66.06 Gini 降低 8.2%,优势随高频词被吸收入词表而收敛,但依然稳固
词表缩放:256K 规模 Gini: 0.2204 / 均值: 55.11 0.2246 / 55.39 Gini 降低 1.9%,高频合并占主导,但 3 字节语种仍有绝对开销优势
跨数据集:UDHR 压力测试 Gini: 0.2221 (降 11.1%) 0.2499 涵盖 387 种未经训练的超长尾语言,保底红利在此类纯回退场景被极致放大
跨数据集:SIB-200 主题分类 Gini: 0.2102 (降 8.5%) 0.2297 205 个语种分类语料下依然稳定收窄 Token 差距
策略组合:SuperBPE 边界 Gini: 0.1725 / 均值: 72.14 0.1922 / 74.19 与放宽预分词边界策略完美正交,组合后 Gini 进一步大幅下探
策略组合:SCRIPT 预分词 Gini: 0.1824 / 均值: 68.00 0.2036 / 69.96 保留 SCRIPT 的南亚文字切分红利,同时通过 UBE 进一步缩减平均长度
策略组合:MYTE 形态学底座 基础符号总位置数减少 4.58% 201/204 语种缩短 作用于形态学分解残留的生僻字符,两技术路线无缝叠加

关键发现

  • 词表容量越小,UBE 效益越显著:在 16K–32K 的端侧与小型语言模型词表中,因词表无法充分容纳多语言子词,低资源语言严重依赖单字节保底回退,UBE 的 Gini 降幅高达 9.4%–12.1%;而在 128K–256K 词表下,高频合并规则逐渐饱和,降幅逐步收敛(256K 时为 1.9%),完全符合保底编码理论的数学预期。
  • 避免了 BBPE16 的“伪公平”陷阱:单纯采用 UTF-16 的 BBPE16 虽然在数值上具有最低的 Gini(0.1598),但该数值是通过将英语等拉丁语言的 Token 数暴增 32.6%(31.16 → 41.32)这一破坏性代价换来的“向下均等”;而 UBE 在将 Gini 压缩至 0.1979 的同时,全站总 Token 均值不仅没有膨胀反而微幅下降(71.89 → 69.86),实现了真正无损的多语言资源倾斜。
  • 语言模型下游无性能衰退,带来直接的上下文与推理吞吐收益:在严格对齐训练参数的 182M 参数多语言语言模型训练实验中,跨 101 种语言的验证集字节级困惑度(Bits per Byte, BPB)及跨语言基准评测(XNLI、XCOPA、Belebele、ARC、HellaSwag 等)上,UBE 与标准 BBPE 完全战平(BPB 为 1.5237 vs 1.5174)。但在固定 Token 长度的上下文约束下,桑塔利语等 3 字节语言直接获得了 +53% 的有效上下文容纳量;在相同文本内容的端到端 Prefill 推理耗时基准中,阿姆哈拉语(Amharic)的处理速度提升高达 +45.0%,英语提升 +3.9%。

亮点与洞察

  • 大道至简的标量级正交基底路由:无需维护庞大沉重的 Unicode 脚本映射表,也无需依赖不可靠的语言识别算法,仅凭字符原生 |utf8(c)| <= 2 的简单布尔判断即可实现精准分流,将系统工程复杂度降至最低。
  • 巧妙利用 PUA 编码空间实现免标记(Marker-free)解码:通过引入 512 符号正交字母表(GPT-2 Visible Bytes + Unicode PUA Block),使任意 BPE 合并词元在解开后均能自解释其编码通路,彻底绕开了破坏合并统计的控制字符设计。
  • 强大的下游兼容与正交组合能力:作为纯粹的表示层革新,UBE 与以 SuperBPE 为代表的正则边界松弛技术、以 SCRIPT 为代表的分类切分技术,以及以 MYTE 为代表的形态学表示技术完全正交,均可在其上二次叠加获取累加增益。

局限与展望

  • 作者承认的局限:UBE 本质上仅解决了字节编码基底层的结构性偏置,并未干涉语料配比失衡、子词合并频次排序等高层不平等根源;由于独占了 256 个 PUA 符号位置,在极端英文单语且极小词表(En-only 16K)的极端压力场景下,多占用的 256 个词表槽位会导致微弱的合并容量折损。
  • 实际应用局限:因为基础词表构词逻辑与标准 BBPE 存在本质差异,UBE 无法直接作为既有预训练模型(如 LLaMA-3、Mistral)权重的无缝替换插件,必须在模型从头预训练(Pre-training from scratch)阶段一同引入。
  • 可改进方向:可进一步探索结合有损压缩或多字节动态感知机制,优化非 BMP 平面 4 字节字符(如特殊专业符号及复杂 Emoji 组合序列)的编码下限。

相关工作与启发

  • vs BBPE (Wang et al., 2020; Radford et al., 2019):标准 BBPE 依赖全局 UTF-8 字节流,对 3 字节 BMP 语言存在天然的 3 符号保底鸿沟。本文通过引入双字母表路由,将 3 字节语言保底直接降为 2,同时完好保留英文 1 字节优势。
  • vs BBPE16 (Kim et al., 2026):BBPE16 强制全局采用 UTF-16,虽然惠及了 CJK 等东亚文字,却使高频拉丁字符与代码体积增加一倍。本文采用条件分流,避免了全盘推翻导致的拉丁语系效率崩塌。
  • vs SCRIPT-BPE (Land & Arnett, 2025):SCRIPT-BPE 侧重于利用脚本类别重构分词预处理边界并强制约束合并规则,而 UBE 专注底座符号编码本身;实验证明两者可无缝叠加,共同释放更大红利。
  • vs MYTE (Limisiewicz et al., 2024):MYTE 依赖复杂的词法与形态学先验构建字节映射,UBE 可作为其残留低频字符的降底保底层(MYTE-UBE),使得基础符号总开销进一步压缩 4.58%。

评分

  • 新颖性: ⭐⭐⭐⭐ [思路极其巧妙,跳出常规的“改分词边界或词表分配”框架,精准击中底座字节表示层并优雅解决无损解码]
  • 实验充分度: ⭐⭐⭐⭐⭐ [覆盖 204 种语言、16K–256K 词表缩放、严苛的 Unicode 17 规范化与表情符全覆盖还原审计,并包含 182M/1.3B 真实多语言 LM 训练验证]
  • 写作质量: ⭐⭐⭐⭐⭐ [逻辑严密清晰,对基底保底理论(Encoding Floor)与跨语言 Token 预算差距的论证兼具理论说服力与实验支撑]
  • 价值: ⭐⭐⭐⭐⭐ [对端侧多语言大模型及多语言长文本推理具有极高的工程落地价值,能显著降低全球用户的 Token 税与服务延迟]