Que2Search: Fast and Accurate Query and Document Understanding for Search at Facebook论文笔记
0、论文资料
论文链接:"Que2Search:迅速且精确的查询与文档理解在Facebook上的应用 | 第27届ACM SIGKDD会议记录
1、摘要
开发了名为Que2Search的方法,并采用基于多任务学习与多模态融合的技术框架,在信息检索领域取得了显著进展。具体而言,在信息检索系统中提取并建模了查询与产品之间的表征特征,并通过检索机制实现对目标商品的精准匹配。该系统的核心技术已成功应用于目前最领先的电子商务社交平台

2、介绍
该系统采用一种基于查询与产品相似度的方法进行研究与开发。该方法综合运用多种模态特征,并借助XLM编码器提取文本信息,在弱监督学习框架下进行训练。研究发现其性能优于Facebook提出的基准方案。此外该系统支持基于向量检索实现查询到产品的系统,并在排序阶段作为辅助特征使用以提升排序效果
Que2Search模型的挑战:
店家呈现的product描述存在质量参差不齐的问题,并且其中有些描述遗漏或书写错误
2)支持国际化语言
3)多模态特征的有效处理:模型需要考虑文本和照片信息
4)严格的响应时间:部署在线上,需要满足响应要求
3、模型
模型由双塔构成,在训练模型时,使用多任务学习和多阶段训练技巧。

3.1模型结构
Query Tower: 三个关键输入维度包括字符级别的tri-gram特征、搜索者所在国别特征以及查询文本的语义特征。
Character-level tri-grams features are derived by applying a sliding window of size 3 over a query. Using the MurmurHash function, these tri-grams are mapped to hash codes, which are then passed into an EmbeddingBag structure. This allows the system to learn effective id representations. Finally, by summing these hash codes, we obtain the character-level representation for each query.
搜索者的国家特征:同样使用EmbeddingBag学习国家表征
query文本特征:应用2层的XLM编码器学习文本表示
最后使用注意力加权方法获得query的最终表征
2)product塔:输入的特征有:product标题,描述和图片。
通过共享参数设计6层结构的XLM-R模型来编码标题与描述内容;同时采用嵌入袋(EmbeddingBag)技术处理字符级别的三元组(tri-gram)特征;多层感知机(MLP)用于提取图片相关信息;最后通过注意力机制模型整合生成产品最终特征表示;计算方法:

3)双塔的分类任务
在每个文档中,我们汇总了与该文档相关的查询集合,并将其视为一个多标签分类系统(基于多标签交叉熵损失函数)。同时,在产品端引入产品类别任务后,显著提升了0.61%的ROC AUC指标。
3.2模型训练
训练数据由正样本对组成(query, product pairs),其中每个pair包含一个搜索者的query与相关的product,并且在执行该查询时发生转化的行为,则被记录为该pair对应的正样本对。
2)批量负样本采用查询与商品 embeddings 的点积构建余弦相似度矩阵;主对角线元素代表了正样本对之间的相似度得分;每行记录了每个Query与其对应的全部Products之间的相似度分数;每列则反映了各个Product与所有Query之间的相似度分数;对于每一个Query来说,在其对应的行中仅有一个非零分值(即该Query自身的正匹配),其余均为零分(即Negative Samples);该研究采用带有缩放因子的比例多分类交叉熵损失函数作为优化目标,在实验中发现缩放因子有助于提升模型收敛速度


3.3多阶段训练
第一阶段采用交叉熵损失函数(cross-entropy loss),第二阶段采用triplet-based loss函数(triplet loss)。在第二阶段训练过程中(during training phase two),选取了困难的正样本作为训练对象(selected as hard positive samples),并使ROC AUC指标提升了约1%(improved by approximately 1%)。具体来说,在余弦相似度矩阵中(within the cosine similarity matrix),通过寻找除了对角线元素之外的最大得分的产品项(products)来确定这些困难的正样本(determined as the products with the highest scores excluding diagonal elements)。
公式四:第一阶段的训练损失函数,公式五:第二阶段损失函数


两阶段训练的AUC指标需要注意在完成第一阶段的收敛训练之后才开始第二阶段训练;否则可能导致第二阶段的效果欠佳。
4、总结
该平台采用了一种基于嵌入式检索的技术(Que2Search),在电商平台应用中取得了显著的效果。具体而言,在离线搜索领域实现了约5%的相关性水平提升,在线搜索效率方面则获得了4%的增长突破。此外,在模型设计上特别注重优化算法性能,在推理阶段的时间复杂度达到了每秒1.5次迭代(即每轮推理耗时约0.67毫秒)。
论文还有挺多细节,感兴趣的读者,可以看原文。
有错误的地方,可以指正,谢谢。
