搜索引擎分词和全模式分词(搜索引擎入门2分词)

分词就是对一段文本,通过规则或者算法分出多个词,每个词作为搜索的最细粒度一个个单字或者单词。只有分词后有这个词,搜索才能搜到,分词的正确性非常重要。分词粒度太大,搜索召回率就会偏低...

分词就是对一段文本,通过规则或者算法分出多个词,每个词作为搜索的最细粒度一个个单字或者单词。只有分词后有这个词,搜索才能搜到,分词的正确性非常重要。分词粒度太大,搜索召回率就会偏低,分词粒度太小,准确率就会降低。如何恰到好处的分词,是搜索引擎需要做的第一步。

正确性&粒度分词正确性“他说的确实在理”,这句话如何分词?“他-说-的确-实在-理” [错误语义]“他-说-的-确实-在理” [正确语义]分词的粒度“中华人民共和国宪法”,这句话如何分词?“中华人民共和国-宪法”,[搜索 中华、共和国 无结果]“中华-人民-共和国-宪法”,[搜索 共和 无结果]“中-华-人-民-共-和-国-宪-法”,[搜索其中任意字都有结果]

分词的粒度并不是越小越好,他会降低准确率,比如搜索 “中秋” 也会出现上条结果,而且粒度越小,索引词典越大,搜索效率也会下降,后面会细说。

如何准确的把控分词,涉及到 NLP 的内容啦,这里就不展开了。

停用词

很多语句中的词都是没有意义的,比如 “的”,“在” 等副词、谓词,英文中的 “a”,“an”,“the”,在搜索是无任何意义的,所以在分词构建索引时都会去除,降低不不要的索引空间,叫停用词 (StopWord)。

通常可以通过文档集频率和维护停用词表的方式来判断停用词。

词项处理

词项处理,是指在原本的词项上在做一些额外的处理,比如归一化、词形归并、词干还原等操作,以提高搜索的效果。并不是所有的需求和业务都要词项处理,需要根据场景来判断。

1.归一化

USA - U.S.A. [缩写]7月30日 - 7/30 [中英文]color - colour [通假词]开心 - 高兴 [同义词扩展范畴]

这样查询 U.S.A. 也能得到 USA 的结果,同义词可以算作归一化处理,不过同义词还可以有其他的处理方式。

2.词形归并(Lemmatization)

针对英语同一个词有不同的形态,可以做词形归并成一个,如:

am, are, is -> becar, cars, car's, cars' -> carthe boy's cars are different colors -> the boy car be different color

3.词干还原(Stemming)

通常指的就粗略的去除单词两端词缀的启发式过程

automate(s), automatic, automation -> automat.高高兴兴 -> 高兴 [中文重叠词还原]明明白白 -> 明白

英文的常见词干还原算法,Porter算法。

搜索引擎入门(2)—分词

转自:https://my.oschina.net/yunqi/blog/3049807

  • 发表于 2022-11-16 11:23
  • 阅读 ( 109 )
  • 分类:互联网

0 条评论

请先 登录 后评论
技术部i
技术部i

680 篇文章

你可能感兴趣的文章

相关问题