张芷铭的个人博客

Tokenizer将文本转化为模型可处理的数值形式,是NLP预处理的核心步骤。

核心作用

步骤说明
文本切分将文本拆分为token(单词/子词/字符)
索引映射将token映射为唯一数值ID
特殊token添加[CLS]、[SEP]、[PAD]等

Token类型

类型示例
单词['I', 'love', 'NLP']
子词['play', 'ing']
字符['h', 'e', 'l', 'l', 'o']

处理流程

  1. 文本标准化:转小写、去多余空格、替换缩写
  2. 分词:按单词/子词/字符拆分
  3. 索引映射:token → token ID
  4. 添加特殊token:[CLS]、[SEP]、[PAD]
  5. 长度处理:padding或截断

分词方式对比

方式优点缺点
单词级直观OOV问题、词表大
子词级平衡词表大小与覆盖率复杂度高
字符级无OOV问题序列过长

常见Tokenizer

Tokenizer特点
BPE字节对编码,子词切分
WordPieceBERT使用,子词切分
SentencePiece语言无关,支持多种算法

[[BPE算法详解]]

Comments