Open Doragd opened 9 months ago
淘宝主搜把通义千问大模型应用在Query改写上,去改善那些低资源query上的召回效果。2023年10月就已经推全。14天的AB指标如下,GMV,订单和UV都有明显增长(比上一代重写模型CLE-QR高出0.4%、0.34%和0.33%,意味着为淘宝搜索贡献了数百万GMV),特别是在低资源query上。注意,基于LLM改写query的覆盖面仅占比30%左右,但是还是撬动了大盘。
定义了三个指标(相关性,增量,全域成交hitrate)来衡量改写质量,用于alignment过程的评估。其中相关性、增量也被用于步骤二和三的过滤策略。
这三个指标在淘宝搜索的离线系统上运行,即模拟线上请求query,通过SFT后的LLM获取改写结果,然后将这些重写结果和线上query送进离线系统,获取检索结果,并通过这三个指标去评估改写质量,从而得到重写结果的偏序关系。
这部分详细的细节可以看阿里出的这篇论文: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即为:
起一个离线任务收集低资源query (业务自己去定义,文中说的是query下检索结果70%不相关或者结果数量少于1w),用LLM进行改写,存到redis里面。线上serving,命中redis中query的,相应改写结果会用于倒排索引补充召回。
SFT过程:从2023年9月前的线上改写日志里面捞了20 million的记录。然后执行了两轮拒绝采样,获得了419,806个<query, rewrite>pair对。此外将155,662个手动重写数据包含在数据集中,以确保SFT模型的重写符合人类偏好。最后,将质量分类、商品标题预测和CoT任务中的每个任务各选取了50,000个样本,并与查询重写数据集结合,构建了多指令SFT数据集。
alignment过程:从查询重写数据集中随机选择了10,000个查询。对于每个查询,我们使用SFT模型生成5个候选查询。这些50,000个重写结果随后使用淘宝离线系统进行评分。在去除任何异常值后,对齐训练数据集共包含45,350个候选重写。
对于离线测试集,从淘宝搜索日志中选择了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模型对齐。
结论如下:
淘宝主搜 | 大模型在长尾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
为了避免通过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的,相应改写结果会用于倒排索引补充召回。
数据集和执行细节
训练集
SFT过程:从2023年9月前的线上改写日志里面捞了20 million的记录。然后执行了两轮拒绝采样,获得了419,806个<query, rewrite>pair对。此外将155,662个手动重写数据包含在数据集中,以确保SFT模型的重写符合人类偏好。最后,将质量分类、商品标题预测和CoT任务中的每个任务各选取了50,000个样本,并与查询重写数据集结合,构建了多指令SFT数据集。
alignment过程:从查询重写数据集中随机选择了10,000个查询。对于每个查询,我们使用SFT模型生成5个候选查询。这些50,000个重写结果随后使用淘宝离线系统进行评分。在去除任何异常值后,对齐训练数据集共包含45,350个候选重写。
测试集
对于离线测试集,从淘宝搜索日志中选择了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模型对齐。
结论如下: