放牧代码和思想
专注自然语言处理、机器学习算法
    博主不用扣扣,公事请博客留言,私事请微博私信。开源项目一律GitHub见,发错地方恕不回复,谢谢。

Lucene同义词对查询的影响

在测试一个查询的时候,我发现第二条搜索结果非常令人不满意,竟然是一条毫无关系的结果。仔细查看了Explanation之后,看到了如下情况:

同义词有很多条,这些同义词虽然每一个的得分都不高,但是累积起来就产生了3.3分左右的高分,直接将一条不相干的结果凑成了相关的结果。

从这里看出Lucene的同义词有一个缺陷,如果一个词的同义词越多,那么这个词就越容易获得更高的分数。但事实上,同义词只要有一个匹配上了,其它都不应该继续匹配。

完整的Explanation在下一页

知识共享许可协议 知识共享署名-非商业性使用-相同方式共享码农场 » Lucene同义词对查询的影响

分享到:更多 ()

评论 1

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    DisjunctionMaxQuery 用这个query包住整个同义词的query,会取最大值。

    张荣松9个月前 (10-09)回复

我的开源项目

HanLP自然语言处理包基于DoubleArrayTrie的Aho Corasick自动机