大语言模型(LLM)长期依赖分词技术将文本分解成更小的单元,然后才能进行理解和处理。然而,谷歌的CANINE模型(Character-Aware Neural Input Encoding)以一种革命性的方式挑战了这一范式。CANINE无需预先进行分词,而是直接处理原始的 Unicode 字符,从而在多语言处理、低资源语言以及问答任务中展现出惊人的能力。本文将深入探讨 CANINE 的核心原理、优势与局限,并分析其对未来大模型发展的影响。
颠覆分词的必要性:CANINE 的核心动机
传统的分词方法,如 WordPiece,在英语等形态简单的语言中表现良好。但是,在处理形态丰富的语言(如德语、土耳其语)时,分词器可能会将一个词分解成多个子词,导致信息丢失和计算成本增加。更糟糕的是,分词器对拼写错误、口音等情况非常敏感,一旦出现错误,就会影响模型的整体性能。考虑到这些问题,CANINE 提出了一个大胆的设想:直接让大模型学习如何从原始字符中提取信息,从而彻底摆脱对分词器的依赖。这就类似于让人类直接阅读没有空格的书籍,然后自行理解其中的含义。
CANINE 的技术架构:从字符到语义的旅程
CANINE 的核心思想是将原始 Unicode 字符直接输入模型,然后通过一系列巧妙的步骤,将其转化为富有上下文信息的表示。整个过程可以概括为四个关键步骤:
-
字符哈希与嵌入(Character Hashing & Embeddings):
- 原理:CANINE 首先将每个 Unicode 字符映射到一个低维向量。为了避免巨大的嵌入表,它使用了多个哈希函数。每个哈希函数将字符映射到嵌入表的一个小的切片(slice),然后将这些切片连接起来形成最终的字符向量。
- 案例:例如,对于单词 “jalapeño”,每个字符(如 “j”,Unicode 106)都会通过 K=8 个哈希函数。每个哈希索引从其自身的表中提取一个小的切片(例如 96 维),并将这些切片连接成一个 768 维的向量。这样,每个字符都被表示为一个密集的向量。
- 优势:这种方法有效减少了参数数量,同时为每个字符提供了一个独特的表示。避免了因为字符数量过多导致的“维度灾难”。
-
降采样(Downsampling with Strided Convolutions):
- 原理:接下来,CANINE 使用带有步长的 1D 卷积来压缩字符序列。具体来说,卷积操作将每四个字符压缩成一个“块”(chunk)。这大大缩短了输入长度,降低了计算成本。
- 案例:继续以 “jalapeño” 为例,一个步长为 4 的 1D 卷积会将 8 个字符压缩成 2 个块:第一个块覆盖 “jala”,第二个块覆盖 “peño”。一个轻量级的局部 Transformer 允许相邻的字母进行交互。
- 优势:通过降采样,CANINE 能够高效地处理长序列,同时保留关键的局部信息。这种方式大幅降低了计算量,在处理长文本时优势明显。
-
深度上下文编码(Deep Contextual Encoding):
- 原理:压缩后的块通过一个 12 层的 Transformer 编码器,其中自注意力机制允许每个块查看整个句子,并构建丰富的上下文理解。这与 BERT 类似,但处理的是更短的序列。
- 案例:经过 12 个自注意力层,两个块可以交换信息。例如,第一个块意识到它后面跟着 “peño”,第二个块意识到它完成了 “jala…”。
- 优势:Transformer 编码器赋予了每个块全局上下文信息,使得模型能够理解字符之间的依赖关系。这是CANINE能够理解语义的关键一步。
-
上采样(Upsampling):
- 原理:最后,一个上采样层将块级别的特征投影回原始字符位置,使得模型能够生成细粒度的输出(例如,答案跨度的开始和结束)。
- 案例:每个降采样的向量被复制四次(因为 r=4),并与匹配的原始字符特征连接。一个小的卷积加上一个最终的 Transformer 层产生一个 8×768 的向量。
- 优势:上采样使得CANINE 能够为每个字符生成包含全局上下文信息的向量,从而支持各种下游任务,如标签标注、跨度提取或分类。
CANINE 的预训练策略:两种不同的风味
为了让 CANINE 更好地学习语言表示,谷歌提出了两种预训练策略:
- CANINE-C(Character):掩盖短文本跨度,并使用自回归头以随机顺序逐个预测隐藏的字符。
- CANINE-S(Subword):掩盖与 WordPiece 令牌对齐的跨度,但仍然只向编码器提供字符。临时分词器在训练后被丢弃。
CANINE 的性能评估:优势与劣势并存
CANINE 在多项基准测试中都展现出强大的性能,但也存在一些局限性。
-
TyDi QA 结果:在 TyDi QA 基准测试中,CANINE 显示出强大的性能,尤其是在跨度提取方面。
- mBERT 基线的 SELECTP 得分为 63.2,MINSPAN 得分为 51.3。
- CANINE-C 提高到 65.7 SELECTP 和 53.0 MINSPAN,跨度准确率提高了 +2.5 F1。
- CANINE-S(使用子词对齐的预训练)达到 66.0 SELECTP 和 52.5 MINSPAN,略优于 CANINE-C。
- CANINE-C + n-gram 特征取得了最佳结果:68.1 SELECTP 和 57.0 MINSPAN,跨度提取的 F1 值比 mBERT 提高了 +4.9。
- 分析:这些提升尤其值得注意,因为 CANINE 在推理时没有使用分词器。这表明 CANINE 在处理复杂的多语言问答任务时具有显著优势。
-
NER 任务:在命名实体识别(NER)任务中,CANINE 的表现则喜忧参半。
- 在 CoNLL-2003 数据集(英语、德语、西班牙语、荷兰语的标准 NER)上:
- mBERT 实现了 87.8 F1,显示出通过其 WordPiece 词汇对常见实体的强大记忆能力。
- 相比之下,CANINE-C 的 F1 得分仅为 74.0,显著下降了近 14 个百分点。
- 即使在添加字符 n-gram 特征后,CANINE 也仅恢复到 86.7 F1,仍然略低于 mBERT。
- 分析:这表明,在没有显式令牌表示的情况下,CANINE 在实体记忆方面存在困难,尤其是在高资源语言中,预训练的子词提供了强大的先验知识。换句话说,对于像英语这样拥有海量数据的语言,使用分词的 BERT 模型已经记住了很多常见实体,而 CANINE 需要从头开始学习。
- 在 MasakhaNER(10 种低资源非洲语言)上:
- 差距缩小:mBERT 的 F1 得分为 72.4,而 CANINE-C 达到 65.5,CANINE-C + n-grams 以 76.8 F1 击败了 mBERT。
- 分析:这是因为 mBERT 缺乏对许多非洲文字的子词覆盖,而 CANINE 平等地处理所有 Unicode 字符。这表明 CANINE 在处理低资源语言时具有显著优势,因为它可以避免分词器词汇表不足的问题。
- 结论:CANINE 的无令牌方法牺牲了记忆能力,使其不太适合高资源环境中的 NER。它的优势在于跨脚本和低资源语言的泛化,在这些语言中,基于令牌的模型由于词汇覆盖率差而失败。因此,CANINE 在传统 NER 任务上的表现不佳,除非使用外部特征(如 n-grams)进行增强。
- 在 CoNLL-2003 数据集(英语、德语、西班牙语、荷兰语的标准 NER)上:
CANINE 的优势与劣势总结
CANINE 的优势:
- 无需分词:处理任何语言或脚本,无需特殊规则。
- 强大的多语言 QA 能力:在 TyDi QA 上优于 mBERT +2.5 到 +4.9 F1。
- 低资源优势:在 MasakhaNER 等非洲语言上击败 mBERT。
- 紧凑而高效:参数少于 mBERT(127M 对 179M),并具有智能降采样以提高速度。
CANINE 的劣势:
- NER 性能较弱:在没有 n-grams 的情况下,CoNLL 上的 F1 分数比 mBERT 低 -13.8。
- 更长的输入:字符级序列增加了推理时间。
- 需要 n-grams:需要额外的特征才能获得良好的记忆能力。
- 集成成本:与基于令牌的 NLP 工具不兼容。
CANINE 对大模型未来发展的影响
CANINE 的出现证明了语言模型不需要分词器也能表现良好,尤其是在多语言和低资源环境中。虽然它在记忆能力、输入序列长度和集成方面存在一些权衡,但它为未来的大模型发展开辟了新的可能性。
- 多语言模型的简化:CANINE 可以简化多语言模型的构建过程,无需为每种语言训练单独的分词器。这降低了开发成本,并提高了模型的泛化能力。
- 低资源语言的支持:CANINE 为低资源语言的处理提供了新的思路。通过直接处理原始字符,它可以避免分词器词汇表不足的问题,从而提高模型在低资源语言上的性能。
- 更强的鲁棒性:CANINE 对拼写错误和口音等情况具有更强的鲁棒性。这使得模型在处理真实世界的文本时更加可靠。
结论:CANINE 的未来之路
CANINE 是大模型领域的一项创新性工作。它挑战了传统的分词范式,并在多语言处理和低资源语言方面展现出强大的潜力。尽管 CANINE 仍然存在一些局限性,但随着技术的不断发展,我们有理由相信,CANINE 将在未来大模型的发展中扮演越来越重要的角色。例如,未来的研究可以探索如何进一步提高 CANINE 的记忆能力,并将其与现有的基于令牌的 NLP 工具进行集成。 总之,CANINE 的出现标志着大模型正在朝着更加通用、高效和鲁棒的方向发展,为我们构建更加智能的自然语言处理系统带来了新的希望。无分词的未来,或许并不遥远。