Tokenization的演进:从NLP基石到多模态AI的“通用翻译器”
这是Tokenization的起源,专注于处理“文本”。在经典的NLP中,Tokenization(也常被称为“分词”)是将连续、非结构化的文本流,切分成一系列离散的、有意义的基本单元(Tokens)的过程。将自然语言转换为模型可以理解和处理的最小单元。现代大模型(如GPT、BERT)主要使用子词(Subword)Tokenization(如 BPE、WordPiece 算法)。介于“词”和“字符
我在近日读论文的过程中不断地注意到tokens这个概念,同时我总是在网络上,各种源码里见到tokenizer这个东西,我觉得挺混淆的。又因为我自己所持的一个学术态度是永远要消除疑惑,所以正好自己有足够的精力支持自己从正在做的事情脱出,在gemini那里问了几嘴,以下为ai辅助的整合的内容:
“Tokenization”(标记化)是AI领域的一个核心术语,其含义已经历了深刻的演进。它从一个NLP(自然语言处理)的特定预处理步骤,扩展成了当前多模态AI研究中一个**“通用模态翻译器”**的宏大范式。
这个范式解决了AI(特别是Transformer架构)面临的一个根本问题:如何让一个模型“阅读”和“写入”所有类型的信息? 答案就是将所有信息——无论是文本、图像、声音还是物理动作——都“翻译”成一种统一的语言:一个离散的、序列化的“Token”序列。
第一阶段:经典定义与工程实现
这是Tokenization的起源,专注于处理“文本”。
1. 📚 学术定义:NLP中的Tokenization (分词)
在经典的NLP中,Tokenization(也常被称为“分词”)是将连续、非结构化的文本流,切分成一系列离散的、有意义的基本单元(Tokens)的过程。
- 目的: 将自然语言转换为模型可以理解和处理的最小单元。
- 主流方法(子词 Subword): 现代大模型(如GPT、BERT)主要使用子词(Subword)Tokenization(如 BPE、WordPiece 算法)。
- 优势: 介于“词”和“字符”之间。例如,
"tokenization"可能会被分为["token", "ization"]。这极大地缓解了**OOV(Out-of-Vocabulary,未登录词)**问题,使模型既能理解常见词(如token),也能通过组合词缀(如ization)来泛化到新词(如modernization)。
2. 🔧 工程实现:Hugging Face tokenizers (工具)
tokenizers 是一个将上述“学术概念”变为“高性能生产工具”的典型代表。
- 它是什么? 一个由Hugging Face公司开发的开源库(主要用Rust编写,以提供极高效率)。
- 它做什么? 它专门用来高效实现和执行各种子词Tokenization算法(BPE, WordPiece等)。
- 它的角色: 它是一个工程实现。它的任务是快速地将原始文本字符串(Raw Text),转换成模型所需的
input_ids(即Token的数字ID序列)。
第二阶段:广义演进——多模态AI的“通用翻译器”
在多模态和AIGC的浪潮下,“Tokenize”的含义已经扩展为:将任意模态的数据,编码为离散的“Token”序列。
以下是这一范式在三个前沿研究领域的具体佐证:
1. 🖼️ 扩散模型 (Diffusion Models):将“图像潜空间”Token化
在潜扩散模型(Latent Diffusion Models, LDM)中,Tokenization是实现计算效率和SOTA性能的基石。
- 核心思想: 不在原始的、高维的像素空间(如 512x512x3)上操作,而是在一个压缩后的潜空间中进行。
- 如何Tokenize:
- 使用一个强大的自编码器(如 VAE 或 VQGAN)作为“图像Tokenizer”。
- 这个Encoder将一张高分辨率图像压缩成一个低维的特征图(Feature Map),例如 64x64x4。
- 这个 64x64 的特征网格(Grid),就可以被视作一个由 4096 个“视觉Token” 组成的序列。
- 佐证: Stable Diffusion等模型的核心扩散过程,学习的是这些“潜空间Token”之间的关系,而不是像素之间的关系。最后,解码器(Decoder)将生成的Token序列“反Tokenize”回一张完整的图像。
代表论文:
- High-Resolution Image Synthesis with Latent Diffusion Models (LDM)
- Rombach, R., Blattmann, A., Ommer, B., & He, B. (2022). (CVPR 2022)
- Scalable Diffusion Models with Transformers (DiT)
- Peebles, W., & Xie, S. (2023). (ICCV 2023)
- 这篇论文进一步将Transformer架构(DiT)引入,其操作的输入正是这些被“Token化”的视觉Patches。
2. 🤖 机器人学 (Robotics):将“物理动作”Token化
在机器人学中,最大的挑战之一是统一“看”(视觉)、“想”(语言)和“做”(动作)。RT-2(Robotics Transformer 2)通过将“动作”本身Tokenize,实现了这一目标。
- 核心思想: 万物皆可Token。将视觉、语言和机器人的物理控制指令,全部转换成一个统一的序列。
- 如何Tokenize:
- 视觉/语言: 按常规方式(如 ViT Patches 和 BPE分词)进行Tokenize。
- 动作(Action)- 核心创新: 机器人的动作(如手臂的
[dx, dy, dz, ...])是连续的浮点数。RT-2将这些连续值离散化(Discretize)。 - 例如,将-1到1的连续动作范围,切分成256个“桶”(Bins)。一个动作
[-0.05, 0.1, ...]就被映射成一个离散的整数Token序列,如[Token_102, Token_150, ...]。
- 佐证: RT-2模型就像一个语言模型,它自回归地“生成”下一个“动作Token”,就像生成下一个单词一样。这个“动作Token”随后被“反Tokenize”,转换回马达的物理指令。
代表论文:
- RT-2: Vision-Language-Action Models
- Brohan, A., Brown, A., et al. (Google DeepMind, 2023).
3. 🌊 流匹配 (Flow Matching):在“Token化”的潜空间中引导“流”
流匹配(Flow Matching)是与扩散模型竞争的新一代生成模型框架。为了在图像等高维数据上应用它,它同样依赖于Tokenization范式。
- 核心思想: Flow Matching 学习一个向量场(Vector Field)来将噪声连续地“引导”回数据。直接在像素上操作是低效的。
- 如何Tokenize: 实践中,高效的流匹配模型并不在原始像素空间中计算“流”。
- 步骤(借鉴 LDM 和 DiT 范式):
- 数据Tokenize: 图像首先通过一个 VAE Encoder 被“Tokenize”成潜空间中的“Latent Patches”(潜在图块)。
- Transformer骨干网: 一个强大的Transformer架构被用来建模这个“流”场。
- 输入序列: Transformer的输入正是一个Token序列,它包含了
[潜空间图像Token_1, ..., 潜空间图像Token_N, time_step_token, ...]。
- 佐证: 尽管“流”(Flow)在理论上是连续的,但在SOTA实现中,用于建模这个流的神经网络(特别是Transformer),其操作的输入(Input)是一个被Token化(Patched 和 Embedded)的序列。
代表论文:
- Flow Matching for Generative Modeling
- Lipman, Y., Chen, R., et al. (2023).
更多推荐


所有评论(0)