Doragd / PaperReading

Paper阅读记录博客(基于GitHub Action和GitHub Issue实现)。
MIT License
22 stars 1 forks source link

Large Language Model based Long-tail Query Rewriting in Taobao Search #5

Open Doragd opened 9 months ago

Doragd commented 9 months ago

淘宝主搜 | 大模型在长尾Query改写召回上的实践

太长不看

淘宝主搜把通义千问大模型应用在Query改写上,去改善那些低资源query上的召回效果。2023年10月就已经推全。14天的AB指标如下,GMV,订单和UV都有明显增长(比上一代重写模型CLE-QR高出0.4%、0.34%和0.33%,意味着为淘宝搜索贡献了数百万GMV),特别是在低资源query上。注意,基于LLM改写query的覆盖面仅占比30%左右,但是还是撬动了大盘。

具体方法

多指令数据集构建+SFT

离线反馈指标

定义了三个指标(相关性,增量,全域成交hitrate)来衡量改写质量,用于alignment过程的评估。其中相关性、增量也被用于步骤二和三的过滤策略。

这三个指标在淘宝搜索的离线系统上运行,即模拟线上请求query,通过SFT后的LLM获取改写结果,然后将这些重写结果和线上query送进离线系统,获取检索结果,并通过这三个指标去评估改写质量,从而得到重写结果的偏序关系。

基于PRO算法的alignment

这部分详细的细节可以看阿里出的这篇论文:Preference Ranking Optimization for Human Alignment

为了避免通过reward model引入bias,引入了基于Bradley Terry模型的偏好排名优化(PRO)。该方法旨在强制模型学习离线反馈提供的query改写结果的偏序关系。根据Bradley Terry模型,选择策略的概率应与其相应的奖励成比例。给定一个偏序关系$y_1>y_2$,preference概率则表示为:

在PRO中,$r(\cdot)$是奖励函数,定义为LLM生成的改写的归一化对数概率。PRO将这个pair-wise的偏序关系扩展到更一般的list-wise偏序。此外,引入温度以捕捉基于奖励的排序的重要性。PRO损失由以下方程表示:

其中$\mathcal{T_k^i}=1/(r(y_k)-r(y_i))$和$\mathcal{Tk^k}=\min{i>k}{\mathcal{Tk^i}}$表示排序差异。$\mathcal{D{PRO}}$是用于alignment的数据集,$\pi_{PRO}$就是策略模型,$n$是候选改写的数量。

alignment过程中的最终loss即为:

在线serving

起一个离线任务收集低资源query (业务自己去定义,文中说的是query下检索结果70%不相关或者结果数量少于1w),用LLM进行改写,存到redis里面。线上serving,命中redis中query的,相应改写结果会用于倒排索引补充召回。

数据集和执行细节

训练集

测试集

对于离线测试集,从淘宝搜索日志中选择了14,981个查询来评估模型的性能。其中,50%的查询是按实际查询比例随机抽样的。此外,为了评估模型重写长尾查询的能力,从长尾查询中抽样了剩余50%的数据。

执行细节

用于模型训练的优化器是AdamW。在多指令SFT阶段,模型的学习率设置为1e-5,进行一次epoch的训练。在目标对齐阶段,模型的学习率设置为1e-6,进行四次epoch的训练。此外,重写任务的提示最大长度设置为64,而其他任务的最大长度设置为256。

离线结果

版权限制加上千问有电商数据预训练,所以就用了千问模型作为基座。

对齐过程中的候选重写数量也做了消融。

这里抄了下翻译,简单看看即可。

将BEQUE与多个基准进行比较,包括CLE-QR、query2doc(Q2D)、BART、Qwen和基于RL的LLM。CLE-QR是淘宝搜索的上一代查询重写器,它基于对比学习生成语义表示并检索相关的重写。BART是一种基于编码器-解码器结构的强大预训练生成模型。我们使用在线日志中的查询对对其进行微调,以增强其重写电子商务查询的能力。Qwen是一种基于解码器结构的大规模语言模型,包含70亿个参数。同样,我们使用在线日志中的查询pair对其进行微调,以增强其重写电子商务查询的能力。此外,引入了基于RL的LLM,并利用相关性、增量和hitrate作为奖励,鼓励RL模型对齐。

结论如下: