query求交模块总结

最近重新梳理了一下query的求交模块,记录一下。

以前不太清楚的地方,主要是怎么处理近义词(比如“蔡依林”和“Jolin”)以及怎么有些没全部命中term也可以找到。

第一个,在数据制作的过程中就会处理近义词,做到相应的倒排中(会标明近义词)。而且,求交的过程中,近义词也会一起参与求交。“蔡依林演唱会”其实是“蔡依林”“Jolin”“演唱会”三个词一起求交。这样就不会遗漏一些很相似的近义词,保证了召回率。

第二个,求交的结果并不是要求所有的term都命中,我看项目中,命中了两个就会作为一个candidate来取OCC信息(命中位置信息)判断,如果通过再计算rank,当然,如果命中的效果不好,由rank来淘汰这个candidate,并继续求交。如果命中的两个是近义词,那相当于只命中了一个,也应该是由rank来淘汰。

前面两个策略,保证了召回率,当然会对正确率和程序的效率有一定的影响,这个就要对结果综合考虑后指定策略。

另外,程序中还有一个跳关键域(jump key field,kf)的策略。比如“中国”“北京”“美女”,当求交一段时间,发现结果太稠密,很多doc可能都会包含,这样肯定会影响求交的效率,导致一些不好的结果被求交出来再淘汰,一些好的结果反而因为排得比较靠后而求交不出来。这时,可以在求交的过程中,只考虑少数几个关键的域(对结果影响比较大的域,比如title,desc等),加速了求交效率。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值