LLM是目前学术界研究的热点,同时工业界也在快速探索LLM在业务中的落地。本篇文章给大家介绍来自WWW24的一篇文章,介绍了淘宝电商将LLM用在了搜索场景中的query改写上,精心构建的领域特定数据集对LLM进行finetue,定义三种不同的优化目标并使用Preference Rank Optimization损失学习候选之间的偏序关系,极大的解决了长尾query中的“few-recall”问题。
论文标题 :Large Language Model based Long-tail Query Rewriting in Taobao Search
下载地址:
背景介绍
淘宝电商搜索引擎框架如下图所示。用户输入搜索词之后,平台先进行语义理解,对用户query进行改写,之后对原始词 + 改写后的词召回商品,再经过多层排序后对用户展现头部商品。
query改写的目标是,在保持相关性的同时,对原始query进行语义扩展,可以召回更多相关商品。例如,有两个搜索词,"DIY blind box"和"Self_building blind box"。这里前者和后者语义相同,但是前者是主流搜索词,召回结果有多个。而后者属于长尾搜索词,难以召回多个结果。如果将后者改写为前者,语义保持相同的情况下,召回更多的商品,则在后续的排序流程中更有概率推荐转化率高的商品,从而提高订单量 && GMV。
已有的query改写工作集中在两个方向:
判别模型 :从候选词集合中预估最优的词。这种方法依赖于精心构造的词典作为重写的候选集合,否则query改写后语义有可能发生偏移。
生成模型 :使用transformer系的模型,根据原始query直接生成改写词,有些方法会加入强化学习和对比学习的思路。但是这种方法受限于模型的参数量,参数提升会提升模型的表达能力。目前LLM在query改写上有一些工作,但由于对没有使用query改写特定任务对大模型进行fine-tune,还存在一定的局限性。
实现方法
本文提出了BEQUE框架(a comprehensive framework that Bridges the sEmantic gap for long-tail QUEries),框架包含三个阶段,如下图所示:
第一阶段 Multi-instruction Supervised Fine Tuning: 使用多领域数据集对LLM进行finetune,主要包括Query Rewriting> Query Rewriting>
辅助数据集: 为增强LLM对长尾query的理解能力,使用quality classification,product title prediction,Chainof-thought,三个辅助数据集对LLM进行finetune
第二阶段 offline feedback: 设计多个函数多角度评估改写query质量,包括relevance、increment、hitrate等3个评估方法。
:即便原始query和改写query 语义上具有相关性,但是召回的商品集合未必相关。因此定义相关性指标来衡量改写前后召回商品的相关性。淘宝离线评估方法用来评估query和召回商品标题的相关性,因此定义改写query召回商品和原始query的相关性如下:
:query改写可以增加商品召回的数量,解决“few-recall”的问题。因此定义增量指标来衡量query改写后是否增加了召回商品的数量:
: 定义命中率指标,如果搜索场景之外成交过的某件商品和原始query相关性大于一定阈值,那query改写后应尽量召回该商品:
第三阶段object alignment :强制模型学习改写query之间pairwise的偏序
使用PRO Loss来pair wise地学习改写query之间的顺序:
模型的最终Loss为监督微调的loss + PRO loss
实验结果
模型离线效果如下表所示。从上图可以看到,与多种基线相比,BEQUE与多种基线相比,在多个测试集上的rele指标略为逊色,在incr/hitrate指标上有极大幅度的提升。
在线应用方面,由于LLM难以满足在线serving的时效性需求,无法直接在线使用。因此对torso query,离线inference改写后的query,将改写前后的query以key-value graph的形式存储,确保在线及时响应,覆盖淘宝主搜27%的PV。原始query和改写query召回的商品取并集进入后续的排序环节。14天在线AB实验中,在GMV && 订单量 && UV上都取得了正向效果。
本文转载自,作者:
本网站的文章部分内容可能来源于网络和网友发布,仅供大家学习与参考,如有侵权,请联系站长进行删除处理,不代表本网站立场,转载者并注明出处:https://www.jmbhsh.com/yulebagua/33262.html