关键词:
查询改写
搜索引擎
Seq2seq
注意力机制
生成对抗网络
摘要:
在搜索引擎中,用户错误拼写和错误输入一直以来都是一个严重的问题,因此,在搜索引擎技术发展的早期,查询改写就是一个具有较高重要性的模块。查询改写模块接收用户的错误查询字符串,通过一系列模型或者算法预测用户的真实意图,并改写为正确的查询字符串,这一模块对于保障搜索引擎的使用体验,提高搜索转化率至关重要。对于滴滴出行等基于位置服务的APP,往往都通过一个地图搜索引擎来实现订单下达,然而,地图搜索引擎中的查询改写和通用网页搜索中的查询改写存在较大的不同。基于地图检索的实际业务特点,我们创造性地提出了异地干扰问题和查询-文档标题语义隔阂,这两个问题在地图检索中广泛存在,而且现有的查询改写方案都没有对这两个问题进行改进。在当前流行的Seq2seq查询改写模型的基础上,我们设计了一种新型的双注意力机制,用于解决异地干扰问题。这一机制是对传统的注意力机制的扩展,允许模型在平行语料对齐之外,学习当前的错误查询和正确查询分别和城市条件的关联性,并且使用可学习的权重将两种注意力打分进行融合。我们同时设计了一系列更加常见的对比方案,证明了我们设计的双注意力机制的有效性。另外,为了解决查询-文档标题语义隔阂问题,我们还设计了一种对抗训练机制。其中,与传统的对抗训练采用分类模型作为判别器不同,我们创造性地采用了语义匹配模型作为判别器,这帮助我们为Seq2seq模型引入了额外的监督信息,实现了传统生成对抗网络所不能实现的功能,并且我们的语义匹配模型借鉴了当前更为先进的Transformer结构。另外,为了解决对抗训练中文本数据不可微且稀疏性强的问题,我们采用了策略梯度和蒙特卡洛树采样等强化学习技术,实现了模型的端到端训练。在滴滴出行的真实线上数据的测试证明,我们的方案能带来非常可观的提升,同时和其他baseline方案的对比说明,我们的方案对异地干扰和查询-文档标题语义隔阂问题解决的更为彻底。