当前位置:   article > 正文

NLP学习(4) 句子排序与过滤_nlp句子排序

nlp句子排序

回顾: 基于检索的问答系统

--相似度匹配-->
<--返回相似度最高的--
Question
知识库
< Question, answer1 >
< Question, answer2 >

复杂度 O(n), n是知识库的大小. 所以必须降低复杂度

Question
100项
〈question1, answer1〉
〈question2, answer2〉
...
〈question100, answer100〉
10项
〈question2, answer2〉
〈question17, answer17〉
...
〈question98, answer98〉

倒排表 (Inverted Index)

对句子进行过滤

假设有4个文档

  • doc 1: 我们 今天 运动
  • doc 2: 我们 昨天 运动
  • doc 3: 你们 上 课
  • doc 4: 你们 上 什么 课

词典是[我们, 今天, 运动, 昨天, 上, 课, 什么]

倒排表:

  • 我们: [doc 1, doc 2]
  • 今天: [doc 1]
  • 运动: [doc 1, doc 2]
  • 昨天: [doc 2]
  • 上: [doc 3, doc 4]
  • 课: [doc 3, doc 4]
  • 什么: [doc 4]

如果用户输入了"运动", 则可以直接返回[doc 1, doc 2]作为候选集合

如果用户输入了"我们 课", 则可以返回[doc 1, doc 2] ∪ \cup [doc 3, doc 4]

然后再用排序方法对候选文档进行排序

过滤的方法可以进一步改成, 选择至少包含两个关键词的文档

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/blog/article/detail/47103
推荐阅读
相关标签
  

闽ICP备14008679号