什么是词级分词(Word Tokenization)

词级分词Word Tokenization)是自然语言处理NLP)中的一种基础预处理技术,指将文本序列切分为由单词(Token)组成的序列。

与字符级或子词分词相比,词级分词保留了单词的完整性,语义单元较大,能够更直观地对应人类语言的自然结构。

以下是对词级分词的详细介绍:

1. 核心定义与原理

词级分词是指将原始文本中的连续字符序列切分为一个个独立的单词(Word)。

  • 过程:通常通过识别文本中的空格(Space)和标点符号(Punctuation)作为分隔符,将文本划分为离散的单词单位。
  • 本质:它是对文本进行语义单位抽取的第一步,将非结构化的原始文本转化为结构化的词序列,为后续的词向量训练或语言建模提供基础。

2. 适用场景与语言特性

词级分词主要适用于那些单词之间有明确分隔符的语言,尤其是空格分隔的语言:

  • 英文:最为典型,词与词之间通常有空格,分词相对直接。
  • 俄文:与英文类似,单词之间有明确的空格分隔。
  • 中文、日文、韩文:由于文字是连续的,没有天然的空格分隔符,严格意义上讲这些语言的“分词”更像是“词语切分”或“分词”(Segmentation),但在广义上也被称为分词技术。

3. 主要特点

  • 优势
    • 语义清晰:词级分词保留了完整的单词形态,能直接对应词典中的词汇,语义单元较大,易于理解和解释。
    • 计算高效:相较于字符级分词(序列过长)和子词级分词(算法复杂),词级分词实现简单,计算量较小。
  • 局限性
    • 未登录词(OOV)问题:无法处理词汇表中没有出现过的单词(如新造词、专有名词)。常见的解决方法是使用特殊标记 <unk> 替代,但这会导致信息丢失。
    • 词形变化:对英语等有词形变化的语言而言,同一个词根的不同形式(如 "run" 和 "running")会被视为不同的词元,导致词汇表膨胀,增加模型参数。

4. 实际示例

以下是一个英文句子进行词级分词的示例:

原始句子:I love dogs.
分词结果:["I", "love", "dogs"]

如图所示,句子被直接切分为三个独立的单词。

5. 与其他分词方法的关系

在 NLP 的分词体系中,词级分词通常被视为粒度较粗的一种:

  • 字符级分词:粒度更细,将文本拆分为单个字符,能够处理所有语言的所有情况,但序列过长。
  • 子词级分词:介于词级和字符级之间,采用算法(如 BPEWordPiece)将罕见词拆分为更小的子词,以平衡词汇表大小和未登录词覆盖率。

总结

词级分词是 NLP 中最直观、最易实现的分词方式,适用于处理单词间有明确分隔符的语言。它在保持语义完整性的同时,也面临着处理未登录词和词形变化的挑战。

来源:www.aiug.cn
声明:文章均为AI生成,请谨慎辨别信息的真伪和可靠性!