分词 tokenization
分词的粒度
字的粒度小,无法表达完整含义
例句:hello world!
分词结果为:h e l l o w o r l d !
「安」字可能是「平安」、「安装」,在不同的词汇或句子中,才能理解完整含义。
词是表达完整含义的最小单元
例句:hello world!
分词结果为:hello world !
子词的粒度
子词(subword)的粒度介于字和词之间,常见的 subword 分词方法有:Byte Pair Encoding(BPE)、Wordpiece 等。这些方法通过统计文本中的字串频率,自动生成一种分词词典,能够有效应对未登录词(OOV)问题,同时保持一定的语义完整性。
例句:hello word
分词结果:hel low orld
句子的粒度难以复用
分词的对象–中英文
区别 | 英文 | 中文 |
---|---|---|
句子层面 | 句子中的单词通常由空格分隔,分词简单 | 句子是由连续的汉字组成的字符串,单词边界需要根据上下文确定 |
单词形态 | 存在时态、单复数等不规则变化 | 中文词汇不发生形态变化,单复数往往同形 |
处理方式 | 词形还原(lemmatization):将单词还原为最基本的词元(lemma),如:does、done->do 词干提取(stemming):将单词去除词缀,缩减到词干,如:cities->city | 中文分词需要考虑粒度。粒度越大,分词结果表达的意思越准确,因为它保留了更多的上下文信息。然而,过大的粒度可能会导致信息的召回率降低 |
难点 | 1、没有统一的标准 2、存在歧义词,如:南京市长江大桥 3、互联网新词 |
关于过大的粒度可能会导致信息的召回率降低的解释:
「中国科学技术大学」就有很多种分法:
- 中国科学技术大学
- 中国 \ 科学技术 \ 大学
- 中国 \ 科学 \ 技术 \ 大学
上面对「中国科学技术大学」的划分从上到下就是粒度减小的顺序。
如果有些文章只提到中国、科学等次,那么当粒度增加,就会有更多的文章被检索到,因为总的数量是固定的,所以召回率就会增加。
召回率的计算公式:真正相关的结果(正确找到的相关结果)/真正相关的结果+假负相关的结果(为找到的相关结果)
中文分词方式(待补充)
分词方式 | 优点 | 缺点 |
---|---|---|
将每个中文字符视为一个 token | 能够最大程度地保留文本的原始信息 | 忽略了中文里大量存在的词汇、词组等具有固定语义搭配的语言现象 |
基于词表的分词方法 | ||
基于统计的分词方法 | ||
基于深度学习的分词方法 |