BBruceyuan

简单方法增加Query召回的多样性

1. 真正的Qeury召回的多样性

对于用的输入的Qeury,对于不同用户输入的同一个Qeury,理论上每一个人感兴趣的点可能是不一样的,所以说可以返回一些多样性的答案来达到满足更多用户需求的目的。

2. 我们所面临的召回多样性问题?

我们现在面临的是一个游戏领域的QA问题,采用的方案是比较传统的检索加召回两段式模型。TODO

3. 分析Query发现的问题?

在分析业务数据的时候,发现有两种比较典型的问题:

第一种是召回模型检索的出来的Query都是比较相似的,因为QA库里面的Qeury比较丰富,所以我们的模型能发现很多比较相似的Query,假设用户输入的Query是”Hello world”,那么检索出来的模型可能是 1. hello world 2. hello world! 3. hrllo world! 4. hallo world! 5. hello word。那么对于这一个召回模型来说,其实是不合理的,并不需要这么一样的Clauster Question Query, 只要有一两个就OK了。

第二种是召回模型检索出来的Query都是属于一个簇的,但是这些Query在语言形态上并不是一致,比如用户的input query是“hi”, 那么检索出来的Query可能是 1. hello 2. hi 3. 你好 4. Bonjour 5. こんにちは。那么对于这种不同语言,但是在语义空间上比较相似的Query,其实只要选择一两个,用于后续的精排就可以了。

4. 足够简单的方法

4.1 Question id多样化

据统计,有超过10%的数据,top 16的query的question id都是一样的。那么我们可以加入如果有10个query的Question id都一样了,那么可以一次召回后续的其它Question id的Query。

4.2 使用最小编辑距离选择Query

对于第一种情况,可以使用最小编辑距离选择合适的Query。


专题:

本文发表于 2020-08-03,最后修改于 2020-08-07。

本站永久域名bbruceyuan.github.io,也可搜索「 BBruceyuan 」找到我。

期待关注我的 知乎专栏微博 ,查看最近的文章和动态。


上一篇 « 01之间均匀分区取两点构成三角形的概率-证明加代码实现 下一篇 » Python实现蓄水池算法

赞赏支持

谢谢支持~

i ali

支付宝

i wechat

微信

推荐阅读

Big Image