腾讯:将LLM排序能力迁移至BERT

📖标题:Best Practices for Distilling Large Language Models into BERT for Web Search Ranking

🌐来源:arXiv, 2411.04539

🌟摘要

🔸最近的研究强调了大型语言模型(LLM)作为零样本相关性排序者的巨大潜力。这些方法主要利用快速学习,通过生成潜在文档的排名列表来评估查询和文档之间的相关性。尽管LLM有前景,但与LLM相关的巨额成本对其在商业搜索系统中的直接实施构成了重大挑战。

🔸为了克服这一障碍并充分利用LLM在文本排名方面的能力,我们探索了将LLM的排名专业知识转移到类似于BERT的更紧凑模型的技术,使用排名损失来部署资源密集度较低的模型。具体来说,我们通过持续预训练来增强LLM的训练,以查询为输入,以点击的标题和摘要为输出。然后,我们使用排名损失对LLM进行监督微调,将最后一个标记指定为整个句子的代表。鉴于自回归语言模型的固有特性,只有最后一个标记可以封装所有前面的标记。此外,我们引入了混合的逐点和边际MSE损失,将排名知识从LLM转移到更小的模型,如BERT。这种方法为具有严格资源约束的环境创建了一个可行的解决方案。

🔸离线和在线评估都证实了我们方法的有效性,截至2024年2月,我们的模型已成功集成到商业网络搜索引擎中。

🛎️文章简介

🔸研究问题:如何将大语言模型(LLM)的能力有效地转移到BERT模型中,以提升网页搜索排名的性能?

🔸主要贡献:论文提出了一个名为DisRanker的蒸馏排名框架,结合了LLM和BERT的优势,通过领域特定的继续预训练和混合损失函数来提升搜索排名的效果。

📝重点思路

🔺相关工作

🔸LLM文本排名:越来越多地用于搜索引擎中的相关性排名任务,主要分为即时方法和监督微调技术,但继续预训练来和排名损失来的优化研究较少。

🔸文本排序的知识蒸馏:集中于最小化教师和学生的软目标分布之间的差异,总体目标是压缩模型大小并减少总推理成本,其中包括内存需求和计算开销。

🔺论文方案

🔸领域继续预训练:使用搜索数据进行继续预训练,使模型更好地理解查询和文档之间的关系。具体来说,使用查询作为输入,生成标题和摘要作为输出,从而增强模型对相关性的建模能力。

🔸监督微调:在LLM上使用排名损失进行监督微调,使用标记表示查询和文档对,通过密集层将最后一层的表示映射到一个标量值,以优化排名性能。

🔸知识蒸馏:采用混合的点对点均方误差(Point-MSE)和边际均方误差(Margin-MSE)损失函数,将LLM的预测分数和排序能力转移到BERT模型中,以提高BERT在排名任务中的表现。

🔎分析总结

🔸离线和在线评估的有效性:DisRanker在离线和在线评估中都表现出色,显著提升了搜索排名的效果。

🔸混合损失函数的有效性:使用混合的Point-MSE和Margin-MSE损失函数比单独使用其中一种损失函数在PNR和NDCG指标上都有更好的表现。

🔸在线A/B测试结果:DisRanker在实际搜索系统中的部署效果显著,页面点击率(PageCTR)、平均点击后停留时间(post-click dwell time)和用户点击率(UserCTR)都有显著提升。

🔸模型运行效率的提升:通过实验比较了LLM教师模型和BERT学生模型的吞吐量和成本节省,结果显示BERT学生模型在运行效率上有显著优势。

🔸分数分布分析:通过分析LLM教师模型和BERT学生模型的输出分数分布,发现混合损失函数有助于防止学生模型过拟合,同时保持排序的相对顺序。

💡个人观点

论文的核心是通过领域特定的继续预训练和混合损失函数强化排序能力,并通过蒸馏转移到小模型中。

🧩附录

相关推荐
Alter1230几秒前
从“力大砖飞”到“拟态共生”,新华三定义AI基础设施的系统级进化
大数据·运维·人工智能
哔哩哔哩技术12 分钟前
bili-fe-workflow —商业化智能开发工作流实践
人工智能
王木风14 分钟前
终端里的编程副驾:DeepSeek-TUI-项目深度拆解,实测与原理分析
linux·运维·人工智能·rust·node.js
IT_陈寒14 分钟前
为什么你应该学习JavaScript?
前端·人工智能·后端
Java技术小馆22 分钟前
我用 30 分钟构建了 100% 数据主权的私有化健康库
人工智能
tq108639 分钟前
认知连续性与组织墙的崩塌:AI原生时代的架构重构
人工智能·架构
Phodal41 分钟前
AI 解决繁杂任务:从 /goal 到长时间异步 Agent 运行
人工智能
tedcloud1231 小时前
ppt-master部署教程:快速搭建智能演示文稿系统
服务器·人工智能·系统架构·游戏引擎·powerpoint
闵孚龙1 小时前
Claude Code 工具提示词全拆解:AI Agent、Prompt Engineering、工具调用、上下文工程、自动化编程的底层逻辑
人工智能·自动化·prompt
白鲸开源1 小时前
杀疯了!SeaTunnel AI CLI 解锁数据集成新玩法
大数据·人工智能·github