论文阅读:OneSearch-V2: The Latent Reasoning Enhanced Self-distillation Generative Search Framework

这篇论文是OneSearch-V1的升级版,建议先看OneSearch-V1的论文解读。 基本信息 论文标题:OneSearch-V2: The Latent Reasoning Enhanced Self-distillation Generative Search Framework 作者单位:快手 论文链接:https://arxiv.org/abs/2603.24422 来源:arxiv Motivation:论文要解决的问题是什么 OneSearch-V1上线之后,存在如下三个问题: 对复杂query的理解能力不够。复杂query包括两部分,一部分是头部泛词query,比如“室内健身器材”,这种query太泛了,query可能和很多商品都有关联,导致GR不知道召回哪个(which to retrieve)。另一部分是尾部稀有query,比如“没有破洞的牛仔裤”,这种query很长有很多约束条件,比如有否定、有问句等,导致GR难以理解,不知道该召回什么(what can be retrieved)。 个性化推理能力不足。如果说上一个问题是对复杂query本身的理解,那么这个问题就是结合用户个性化的query理解。比如某用户对特定品种的鲜花过敏,当该用户搜索“当季鲜花”时,需要首先推理出现在的季节,然后推理出这个季节流行的鲜花,最终判断这种鲜花和用户过敏的鲜花是否同品种。如果是同品种,即使这种鲜花是当季热销,也不能展示给用户。因此,这一问题考验GR结合用户个性化的推理能力。 奖励模型性能不足。OneSearch-V1的奖励模型依赖传统精排模型,效果受限。此外常规的奖励模型对item整体一个奖励得分,但是item是通过SID序列组成的,对item整体进行奖惩的话,相当于对所有位置的SID都一视同仁,无法区分不同位置SID的难度和重要性。 所以小结一下,OneSearch-V2重点要增强的是GR的reasoning推理能力,无论是对query的理解,还是对user的理解,都需要强大的推理能力。另外奖励模型的更新就是常规操作肯定要升级的。 思考增强的Query理解 为了增强GR对复杂query的理解能力,本文首先利用LLM(Qwen3-32B)对query进行理解和分析,把分析结果存成CoT;然后构造CoT SFT微调任务,通过CoT微调GR,把LLM对复杂query的理解能力注入到GR中。 具体来说,如图Fig3所示,利用LLM对query进行如下3个步骤的分析: Query分析(Query Analysis),包括四个维度:意图理解、类目预测、属性识别、主题推荐,其中意图理解需要分析本次搜索的意图是商品搜索、店铺搜索、还是短视频直播这些。 对于意图理解是商品搜索的query,再次进行关键词抽取(Keyword Extraction):通过LLM推理出和query相关的关键词,需要考虑检索意图、类目约束、属性一致性和格式约束等。 偏好校准(Preference Calibration):基于用户的基础信息和历史行为流,对上一步推理出来的关键词进行增删改,只保留和用户相关的关键词 上述三个步骤是依次串行进行的,上一步的输出作为下一步的输入,一步步不断细化分析扩展得到与Query相关的个性化的关键词。其中第二步得到的是非个性化的关键词,即<query, keywords>元组;第三步得到的是个性化的关键词,即<query, user, keywords>。通过这些数据就可以构造query→keywords的四类CoT任务,如图Fig3底部。进一步地,在SFT微调GR的第一阶段,加入这些CoT微调任务,得以显著增强GR对复杂query的理解能力,如下表Table2的stage1加粗部分。 小结一下,这个模块的核心是利用更大的LLM标注出一些与query/user相关的keywords,然后通过CoT SFT的方式把LLM的推理能力蒸馏到GR中。 自蒸馏赋予GR内生推理能力 预实验 作者在OneSearch-V1(即下表Table 3中的baseline)的基础上,新增了上一节介绍的CoT微调任务(即\+CoT tasks),结果表明各项指标都有提升,说明增强GR的推理能力是有帮助的。但是CoT tasks中的CoT毕竟来源于LLM离线打标,耗时很长,不可能进行在线实时推理。如果能将LLM对query的推理能力内化到GR模型中,则可以省掉LLM对query的推理打标,显著节省链路耗时。 为此,作者首先做了两个预实验,如表Table 3所示: +direct CoT:即直接用baseline做推理,然后基于推理CoT进行生成式搜索 +RAG:在baseline基础上,把LLM对query推理出来的keywords作为额外特征输入到GR中,再进行生成式搜索 作者发现,直接让GR进行CoT推理的+direct CoT效果很差,说明现有GR缺乏推理能力。而把LLM推理出来的keywords作为额外特征的+RAG效果很好,说明LLM推理能力对GR很有帮助。 \+CoT tasks有效果已经说明通过CoT SFT的方式能够提升GR的效果,本节进一步利用自蒸馏的方式增强GR的推理能力。 自蒸馏 自蒸馏的思想也比较简单,简单理解就是优势特征蒸馏。如图Fig2a所示,这部分就是上一节介绍的利用LLM推理出扩展keywords的过程。Fig2b的Shared Info就是OneSearch-V1的输入特征,而Fig2a产出的扩展keywords相比于Shared Info就是优势特征。 如图Fig2b所示,教师模型和学生模型共享相同的模型参数,他们都有Shared Info作为公共的特征输入,但是教师模型还多包含扩展keywords作为优势特征输入。根据上面Table 3的结果,+RAG就是教师模型,它的效果明显好于学生模型。自蒸馏的过程就是把包含优势特征的教师模型蒸馏到学生模型上。 形式化描述如下。学生模型输入: ...

May 30, 2026 · 3 min

论文阅读:OneSearch: A Preliminary Exploration of the Unified End-to-End Generative Framework for E-commerce Search

基本信息 论文标题:OneSearch: A Preliminary Exploration of the Unified End-to-End Generative Framework for E-commerce Search 作者单位:快手 论文链接:https://arxiv.org/pdf/2509.03236 来源:arxiv ICLR2026被拒,审稿意见:https://openreview.net/forum?id=eDh0K9YNoL Motivation:论文要解决的问题是什么 如图Fig1所示,传统搜索系统需要依次经过召回、粗排、精排等多个级联环节,存在计算碎片化、且不同阶段目标不一致的问题,导致整个系统效率较低且上限较低。本文提出的OneSearch就是整个搜索系统只使用一个生成式模型,直接从用户请求端到端生成候选商品,从而取代召回-粗排-精排这种级联系统。 整体结构图 整体结构图如Fig4所示,整体思路如下: 表征体系,对应Fig4a-c:把庞大且稀疏的item id转换成紧凑且稠密的semantic id(SID),方便LLM模型做scaling up 特征体系,对应Fig4d:把电商中异构的用户、商品、搜索等各种特征统一到SID体系中,即统一LLM输入token 模型架构,对应Fig4e:有了统一的输入token表示,模型就是各种Transformer变种,因为是生成式,所以必须要有decoder 模型训练,对应Fig4f:训练生成式模型的步骤通常是先SFT预训练,再RL微调,重点关注本文设计的预训练和微调任务 SID生成方法 如图Fig4a-c所示,SID生成通常需要两个步骤,一是预训练embedding模型,二是将产出的embedding通过量化方式压缩成SID。本文在基础方法上进行了若干优化,具体如下: 预训练表征模型 该步骤通常基于开源的表征模型,使用电商的协同信号进行微调,使得embedding既能表征语义含义,又能感知电商的协同信号。 具体来说,本文基于ItemCF、Swing等召回模型,从线上日志中收集了大量相似的q2q、i2i、q2i的二元组作为正样本pair,然后如图Fig4a所示,使用对比学习的方式微调开源的BGE表征模型。本文做的几点改进如下: 特征层面,使用的特征包括:query text, item title, item price, keywords, OCR (image-to-text), as well as the statistical business characteristics, such as the number of clicks, add-to-cart, and purchases during a certain time。既有文本特征,也有数值统计特征,虽然没有用原始图片,但是有图片的OCR特征 样本层面,用开源的BGE对所有的正样本pair先进行粗过滤,把相似度<0.6的pair去掉,只保留高质量正样本pair 微调任务层面,包括q2q、i2i、q2i,这三个是常规的对比学习任务,另外还新增了2个特殊任务 rank任务:q2i分为show、click、order不同级别,且使用margin loss区分三者重要层度:show<click<order relevance任务:使用LLM打标query和item的相关性分,然后让BGE微调学习这个相关性分,增强表征的相关性判别能力 最后所有loss融合如下: $$\mathcal{L}_{\text{align}} = \lambda_1 \cdot \mathcal{L}_{\text{q2q}} + \lambda_2 \cdot \mathcal{L}_{\text{i2i}} + \lambda_3 \cdot \mathcal{L}_{\text{q2i}} + \lambda_4 \cdot \mathcal{L}_{\text{rank}} + \lambda_5 \cdot \mathcal{L}_{\text{rel}}, \quad (1)$$关键词增强的query和item表征 作者认为query和item的文本描述中存在大量堆砌甚至冲突的属性,为了去噪且提取核心关键属性,作者使用Qwen-VL提取商品的核心关键词k,然后把这些关键词输入到上一步微调的BGE模型中,产出多个关键词的表征\(e_k^j\),然后将多个关键词表征求平均,最后再和商品原始表征\(e_i\)求平均,得到关键词增强的商品表征\(e_i^o\)。流程见图Fig4b,公式如下: ...

May 24, 2026 · 2 min

论文阅读:MOON: Generative MLLM-based Multimodal Representation Learning for E-commerce Product Understanding

这篇文章和MOON技术报告有大量重复,建议先阅读MOON技术报告读书笔记。 基本信息 论文标题:MOON: Generative MLLM-based Multimodal Representation Learning for E-commerce Product Understanding 作者单位:阿里 论文链接:https://arxiv.org/abs/2508.11999 来源:WSDM 2026 Motivation:论文要解决的问题是什么 多模态信息在电商应用的挑战如下: 传统CLIP方法只能学习图片和文本的1对1关系,但是电商场景经常是一个商品标题对应多张商品图片,故传统CLIP已经不太能胜任这种场景,而MLLM可以 电商图片有很多噪声,比如背景、无关商品、促销信息等,需要去噪之后再进行表征学习 领域缺乏电商场景下通用多模态表征的benchmark数据集 对比学习预训练 如图Fig 4所示,整体模型结构和MOON技术报告中的基本一样: 样本构造:使用q2i下单信号构造正样本pair,使用同类目的其他商品作为难负例,使用时空负例采样扩大负例样本数量 训练任务:对比学习,InfoNCE loss 输入特征:包括标题、图片、类目、属性等特征 图片去噪:图片会先使用Qwen2.5-VL进行主体识别,主体识别时同时输入图片和商品标题,让模型提取出符合标题的图片主体。然后会把去噪前后的图片都输入到MLLM中进行表征学习 表征提取:使用MLLM最后一层所有token的hidden states进行mean pooling后得到 本文相比MOON技术报告的创新点在Fig 5,即作者把MLLM中的FFN改造成了MoE结构,作者认为输入给MLLM的特征太多,不同特征反应了商品在不同方面的特点,比如图片、标题、类目、属性等,因此这个MoE让模型能动态自适应关注商品的不同特征。 结果 因为本文的目标是训练通用多模态表征,为了验证通用表征的效果,作者在2个数据集的3个任务上进行了系统性评测,结果如图Fig 1所示,本文的方法比传统方法以及其他MLLM方法都要好。通过消融实验发现,主要提升来自3个创新点:1)图片主体识别;2)MoE;3)扩充负例。 评论 可借鉴 使用MoE让emb关注商品不同特征,这个思路挺好的 可改进 论文整体创新性不够,MLLM生产商品多模态表征的思路很多年前都有了,快手的QARM,小红书的NoteLLM很早就发表了,但本文完全没有引用 电商图片使用主体识别进行去噪的思想之前沃尔玛也发表了,本文没有任何引用:https://bitjoy.net/posts/2025-10-08-vl-clip-paper-reading/。而且图像去噪需要使用另一个MLLM大模型,会增加模型推理和部署的成本,有办法把这一步合并到主模型中吗? 本文第三个创新点提出了通用多模态表征评测benchmark,但并没有提供数据和代码链接 对比学习样本只有下单的Q2I信号,没有点击、加购信号,也没有I2I信号。难负例是同类目其他商品,有假负例的风险很高。比如Q=“手机”,I=“华为手机”,那用“小米手机”作为难负例肯定是不合适的。 MoE结构的Router输入的是商品的所有特征x,感觉不太合理,感觉可以只输入类目信息,因为不同类目的表征关注重点不同,比如服饰类目更多关注图片,而3C数码更多关注标题属性等 离线对比实验的时候,并没有说明不同多模态模型输出的dimension是否一致,是否公平 没有线上AB效果

April 23, 2026 · 1 min

论文阅读:MOON Embedding: Multimodal Representation Learning for E-commerce Search Advertising

基本信息 论文标题:MOON Embedding: Multimodal Representation Learning for E-commerce Search Advertising 作者单位:阿里 论文链接:https://arxiv.org/abs/2511.11305 来源:arxiv Motivation:论文要解决的问题是什么 多模态信息在电商搜推系统中有很重要的作用,本文介绍了阿里在应用多模态信息过程中积累的实战经验,洋洋洒洒31页,介绍内容很多,核心围绕着多模态应用的三步走策略:“Pretraining, Post-training, and Application”,介绍了预训练方法、下游应用方法、工程架构优化等内容。 总体流程 总体流程如图Fig1所示,上面是算法流程,下面是工程架构。算法包括三个流程:MLLM预训练、多模态表征后训练、多模态表征下游应用。工程包括两个环节:表征生产、表征消费。 MLLM预训练(Pretraining) 阿里并不是基于开源MLLM微调生产多模态表征,而是他们内部预训练了一个MLLM,叫TBStars-VL,是一个4B的模型。和通用MLLM一样,TBStars-VL也在通用数据集上进行过NTP的预训练,除此之外,TBStars-VL还在淘宝内部的电商数据上进行过预训练,预训练的任务主要是面向电商场景的QA任务,比如Fig1左上角展示的针对商品图片的描述、商品属性抽取、标题生成、图片主体识别等。这一阶段的预训练主要是给TBStars-VL注入电商领域知识。这部分论文介绍篇幅很短,没有具体细节。 多模态表征后训练(Post-training) 由于TBStars-VL是基于NTP任务训练好的生成式模型,没法直接产出多模态表征,故还需要进行多模态表征后训练,其实就是对比学习微调。 在这个环节,作者把TBStars-VL的生成式单向attention改成了双向attention,以输出层的mean pooling结果作为表征输出。训练任务是经典的对比学习+InfoNCE loss。 在正样本构造方面,本文使用了多种q2i数据,比如图搜图、文搜文、文搜商品(图文)等,协同信号使用了点击、加购、下单等信号。样本统计数据如Table 2所示。虽然本文挖掘了不同协同关系的q2i正样本,但没说这些数据具体怎么用的,是混在一起shuffle训的话,其实学了个四不像。不如每种q2i数据都单独训一套表征。 这一阶段对比学习训练的负样本就是in-batch负例。 完成上述后训练之后,作者后续还进行了一轮精调,即只用下单的q2i正样本,且对所有下单q2i进行了如下清洗: 相似度去重 对于同一个item关联的多个正样本query,使用之前的模型产出q和i的表征,只保留(q,i)相似度最低的pair。作者认为相似度高的pair可能是热门的简单样本,所以只保留相似度最低即难度最大且长尾的(q,i)样本,加强对这部分数据的学习 对训练集中的所有(q,i) pair,把属于同一个spu的sku样本合并,增加样本的多样性,同时避免batch内出现同spu的不同sku互为假负例的情况 最后统计训练集中的(q,i)对应的类目分布,将训练样本的类目分布和线上曝光商品的类目分布对齐,对商品占比高的类目降采样 NER去重 对query和sku的标题文本进行NER,认为实体数量少于2个的文本蕴含信息太少,把这部分样本删掉 此外,这次精调还额外使用了负样本,包括2种负采样方法: 难负例采样。对于正样本(q,i) pair,把和i属于同一个类目的其他商品i’作为i的难负例。这一点我感觉难负例太强了,会出现很多假负例,比如搜“手机”,购买了“小米手机”,但并不意味着“华为手机”就和搜索词“手机”是负例关系。 时空负采样。听着很高级,但其实也是常规操作:时间负采样就是memory bank的思路,空间负采样就是把其他GPU上的emb gather到当前GPU作为负样本。 最后,这一阶段精调的loss也不再是InfoNCE loss了,而是circle loss,这个和InfoNCE loss有点类似,后续有空了研究清楚。 多模态表征应用(Application) 多模态表征在排序模型中的应用结构如图Fig 5所示,相对比较简单,就是用多模态表征和行为流的多模态表征计算相似度,然后用相似度对行为流进行加权求和。 工程架构优化 多模态应用的全链路周期很长,作者在每个环节都进行了很多工程优化,如下图Fig7所示。个人读下来这些优化也比较常规,大部分优化方法我们都用过。由于这部分不是算法关注的重点,不展开介绍了。 效果评估 在效果评估上,作者发现基于图像表征的搜索召回率可以作为优化表征模型的一个代理指标,能和下游排序任务的指标对应上。但是个人认为这个结论不具有普适性,而且这两个指标还是不太一样,搜索召回率本质上是一个召回任务,而下游是排序任务,对emb的细粒度区分能力要求更高。 评价 可借鉴 最后精调使用的样本,使用(q,i)下单样本,并且进行了复杂的数据清洗,得到的数据质量很高,可以参考这些方法进行数据清洗 最后精调使用了circle loss,说是能提升正负例的区分能力,后续可参考 可改进 论文太长了,现在大厂都喜欢写很长的technical report,但是太长了可读性不太好,很多车轱辘话反复说,不够精简,而且重点不突出,创新性不突出 对比实验严重不足,比如为什么需要用内部的TBStars-VL,电商数据pretraining的收益有多大,和直接微调开源MLLM的对比效果如何? Q2I的难负例是否会造成很多假负例? 最后精调的时候,为什么要用circle loss,和使用InfoNCE loss对比效果如何 使用MLLM最后一层的mean pooling,这种和加特殊token的方法哪个更好? 使用图像搜索召回率作为排序指标的代理指标,合理吗?具有普适性吗? Table 3,recall@k指标,k越大recall@k越低,不合理吧,应该越高吧?

April 18, 2026 · 1 min

论文阅读:LREF: A Novel LLM-based Relevance Framework for E-commerce

基本信息 论文标题:LREF: A Novel LLM-based Relevance Framework for E-commerce 作者单位:京东 论文链接:https://arxiv.org/abs/2503.09223 来源:WWW25 Motivation:论文要解决的问题是什么 电商搜索相关性任务是指给定搜索词query和商品item,判断两者在语义上是否相关。针对这个问题,业界通常微调BERT来做判别式任务。随着LLM的兴起,大家都在尝试将LLM应用到搜索相关性任务上,但LLM做搜索相关性任务存在3个挑战: 如何获得高质量数据。对于大模型微调来说,开源大模型本身已经具备很强的世界知识了,针对常规的(q,i)相关性问题已经能比较好地处理。微调进一步提升大模型效果的关键在于如何准备高质量的(q,i)相关性数据。 LLM微调的时候,如何增强LLM在电商场景下根据特定规则进行推理的能力,即如何激发大模型按一定规则进行推理,再判断相关性 大模型有时候过于仁慈,有时候倾向于把不相关的商品判断成很相关,如何纠正大模型的这种问题是个挑战 总之直接把LLM用到相关性判别问题上,有很多挑战,需要逐一解决。 数据筛选方法 首先需要认识到的是,电商相关性任务通常需要人工标注大量的(q,i,label)三元组数据来训练相关性模型。相关性label通常分为5档:Exact, Significant, Marginal, Trivial, and Irrelevant。 作者发现LLM本身已经具备比较强的通识的相关性判别能力,需要重点加强的是LLM针对难例的相关性判别能力,故需要从大量人工标注数据中筛选出难例进行微调。此外,人工标注数据中也存在一些噪声,需要把这些噪声过滤掉。总之,在数据筛选这个环节,核心目标就是如何从大量人工标注数据中筛选出高质量的难例样本。 如图Fig 1所示,作者微调了3个大模型来做数据筛选,3个大模型都是从开源的LLaMA-2-7B 开始微调: Initial Model (IM): 初始模型,从人工标注数据中随机采样(q,i,label)微调LLM得到。由于人工标注数据和线上曝光数据分布一致,即简单样本占大多数,故IM可识别常规简单的q-i相关性问题,但对长尾难例识别能力不足 Challenge Identifier (CI): 把人工标注数据按照曝光分布划分成热门、腰部、尾部(q,i,label),每一部分都采样等比例的样本,用来训练CI。其实本质上就是增加了腰尾部数据的占比,提升CI对中长尾样本(难例)的识别能力 Mislabeled Supervisor (MS): 从人工标注数据中随机选一些样本(q,i,label),问GPT当前标注结果label最有可能替换成哪个,如果GPT回答是label’,则说明label和label’都有可能是合理的。因此,进一步推测人工标注的时候,人类也可能出错,把label’误标成label(或反之)。故用(q,i,label’)数据微调MS,在后续数据筛选中,把MS预估结果作为潜在的错误结果 微调得到上述3个模型之后,最终筛选出来的样本如下,L(x)表示人工标注结果。下面的数据有两个含义: 难样本:IM预测错,CI预测对 去掉噪声样本:如上所述,MS预估结果是潜在的错误结果,所以对于MS(x)=L(x)的样本,人工标注的L(x)也是潜在错误样本,需要把这些样本去掉,即条件MS(x)≠L(x) 多CoT微调 经过上面的环节,我们已经拿到了高质量的难样本(q,i,label),接下来开始正式微调LLM进行相关性判别任务了。由于LLM都是decoder-only架构,在相关性判别的时候,增加CoT能激发LLM的推理能力,提升判别效果。为此,作者设计了3个CoT微调任务: 专家解释:Expert Explaining Chain of Thought (EE-CoT),把(q,i,label)喂给GPT,让GPT解释为什么q和i的相关性结果是label,得到EE-CoT,因此得到新的标注数据(q,i,label,EE-CoT)。微调相关性大模型的时候,喂给大模型(q,i),让其输出EE-CoT和label。 遵守规则:Rule Adherence Chain-of-Thought (RA-CoT),把(rule, q, i, label)喂给GPT,让GPT根据rule,推导出q和i的相关性是label的过程,得到RA-CoT,因此得到新的标注数据(rule, q, i, label, RA-CoT)。微调相关性大模型的时候,喂给大模型(rule, q, i),让其输出RA-CoT和label。 决策反思:Decision Reflection Chain of Thought (DR-CoT),对样本(q,i,label)随机生成错误结果incorrect decision,得到样本(incorrect decision,q,i,label)。把(incorrect decision,q,i,label)喂给GPT,让其分析incorrect decision为什么错误,并给出推导过程,得到DR-CoT,因此得到新的标注数据(incorrect decision,q,i,label,DR-CoT)。微调相关性大模型的时候,喂给大模型(incorrect decision,q,i),让其输出DR-CoT和正确label。 简要总结一下,这个环节就是用GPT做CoT的伪标注,然后通过数据蒸馏的方式把CoT能力蒸馏到相关性大模型中。 ...

April 5, 2026 · 1 min

论文阅读:Retentive Relevance: Capturing Long-Term User Value in Recommendation Systems

基本信息 论文标题:Retentive Relevance: Capturing Long-Term User Value in Recommendation Systems 作者单位:Meta 论文链接:https://arxiv.org/abs/2510.07621 来源:arxiv Motivation:论文要解决的问题是什么 现有推荐系统通常以用户的短期行为作为优化目标,例如用户的click、like等。但是这些短期信号通常存在噪声,且比较稀疏,而且难以捕捉用户的长期需求和留存情况。 本文提出了一种基于调查问卷的留存相关性模型(Retentive Relevance),通过设计针对后续留存的调查问卷,直接获得用户的长期留存信号。并据此训练了一个长期留存模型,用此模型的打分来校准排序模型的打分,由此让推荐系统更加关注用户的长期留存价值。 举个我自己脑补的例子:比如你刷抖音的时候点了一个段子手的搞笑视频,你看完了但是觉得并不搞笑,由于没有显式负反馈,推荐系统只能获取到你点击了这个视频,并且也看完了的正向信号,所以推荐系统在后续训练的时候会把这个搞笑视频当做正样本,再给你推荐类似的搞笑视频。这种以短期行为作为优化目标的方法,无疑是误导了推荐系统,对用户的长期留存是有害的。 如果此时APP弹出来一个调查问卷,问你看完这个视频之后,你以后还会回来看类似的视频吗?你如果点击了是或者否,则系统就能显式获取到你的长期留存label,也就是你对此类视频的真实兴趣情况,这种真实反馈比click或者完播更加可靠,而且是和长期价值高度相关的(复访)。有了这种标注数据,则可以训练一个长期留存的模型,预估用户u对商品i的长期留存概率。用这个打分来修正传统的以即时行为为优化目标的推荐系统的打分。让推荐系统在推荐视频的时候能更多地关注用户的长期留存指标。 调查问卷设计方案 作者对比了3种不同的问卷方案: Retentive Relevance:问以后是否会再回来看类似视频(看未来,长期价值) Interest Matching:问当前视频是否符合用户兴趣(问当下,即时兴趣) Worth Your Time:问当前视频是否值得看(问当下,即时价值) 注意:Interest Matching和Worth Your Time并不等价,感兴趣的视频并不一定值得花这么多时间去看(例如没有营养的搞笑视频),有价值的视频并不一定感兴趣(例如枯燥无味的高数视频)。并且这两者都是对当前观看视频的即时反馈,而Retentive Relevance则更加宽泛一些,它不问用户对当前视频是否感兴趣或者是否有价值,而是问用户以后还会不会回来看类似的视频,非常巧妙,如果用户觉得感兴趣或者有价值,以后都有可能会回来看类似的视频,所以Retentive Relevance能一定程度上覆盖Interest Matching和Worth Your Time,并且是对未来的长期价值的直接提问。 论文中还展示了调查问卷的app界面: 调查问卷结果的分析 一致性分析 三种问卷调查结果的一致性比较高,说明三种调查问卷有比较大的overlap,结果比较可靠。 Retentive Relevance showed substantial correlations with Worth Your Time (r = 0.63, p < 0.001, 95%CI [0.71, 0.75]) and Interest Matching (r = 0.58, p < 0.001, 95% CI [0.66, 0.70]). ...

April 4, 2026 · 1 min

论文阅读:QARM V2: Quantitative Alignment Multi-Modal Recommendation for Reasoning User Sequence Modeling

这篇论文是QARM V1的升级版,建议先看QARM V1的阅读总结。 基本信息 论文标题:QARM V2: Quantitative Alignment Multi-Modal Recommendation for Reasoning User Sequence Modeling 作者单位:快手 论文链接:https://arxiv.org/abs/2602.08559 来源:arxiv Motivation:论文要解决的问题是什么 QARM V1确定了“LLM微调→生产SID→排序模型应用”的多模态在排序场景应用的范式,本文发现QARM V1存在如下不足: (1)QARM V1用于LLM微调的i2i训练数据有很多噪声 QARM V1有2种生产i2i样本的方法: 使用swing这种i2i召回模型收集i2i pair。这个方式容易受到商品热度的偏置,如Fig2a所示,酱油和洗衣液被swing判定为i2i正样本,只不过是因为他们都很热门,并不是因为他们在多模态语义上相似。 使用U2I召回模型收集i2i pair。这个方式召回的i2i正样本pair灵活多变,很容易出bad case。 总之,QARM V1构造的i2i正样本有很多噪声,需要去噪。 (2)QARM V1使用RQ-KMeans生产的SID序列冲突率太高 QARM V1使用3层RQ-KMeans训练产出SID序列,作者发现电商商品的分布非常不均匀,甚至是二八分布的情况,即少数几类商品量非常大,大多数类目的商品数量很少。如果只用RQ-KMeans进行分层残差聚类,在商品分布不均匀的情况下,产出的SID序列的冲突率很高。如图Fig3a所示,KMeans聚类严重依赖于数据分布,当数据分布本身不均匀的时候,聚类结果本身也是不均匀的,这就会导致SID序列冲突。 使用推理大模型去噪的I2I样本构造方法 如下图Fig4所示,针对QARM V1的i2i样本噪声多的问题,本文分别使用Qwen3-0.6B和Qwen3-8B对swing和u2i模型召回的i2i样本进行清洗,清洗的prompt如下图所示,就是让大模型判断i2i pair的两个商品是否是相似或者相关商品,输出yes或no。作者认为u2i模型召回的i2i pair更加灵活多变,所以使用了更大的8B模型对这部分数据进行清洗。经过作者的清洗,发现QARM V1的i2i样本中有10%的swing召回的i2i和70%的U2I召回的i2i都是噪声,这噪声的比例也太大了吧。。。 除此之外,为了增强emb对商品的理解能力,作者又使用更大的多模态大模型Qwen2.5-VL-72B,对商品进行理解,生成针对该商品的QA pair,作为后续NTP任务的训练数据。如上图Fig4右上角部分,针对那个辣条,Qwen2.5-VL-72B生成的QA会问这个商品名称是啥,回答是:亲嘴烧。这一步使用的prompt如下图所示。 微调LLM产出多模态表征 微调结构如Fig4下图部分,LLM输入包括标题、图片、属性等特征,此外还新增了3个特殊token <EMB>,用这3个特殊token的输出mean pooling得到最终的多模态emb,然后进行对比学习训练。不理解为啥需要用3个特殊token,1个足够了吧? 上述对比学习结构都比较常规,本文新增的是对QA pair的NTP任务,就是在三个特殊token后面,让LLM继续以NTP的形式生成QA pair,即样本构造环节通过大模型产出的QA pair。 而且这个NTP任务是以三个特殊token为起点的,因为LLM都是decoder-only结构,为了让NTP任务只看到前面三个特殊token,而不看到开头的标题、图片等商品信息,作者设计了Three-Segment Attention Mask,即NTP任务最多看到三个特殊token往后的token。作者这么设计的原因,是希望通过NTP训练,让特殊token产出的商品表征,能够蕴含QA pair里面的信息。 基于Res-KmeansFSQ的SID序列生产 QARM V1是直接使用3层RQ-KMeans残差聚类生产SID序列,作者在Fig3a中认为电商数据天然的不均匀性,会导致KMeans聚类出来的sid存在很大的冲突。为了缓解这个问题,作者将最后一层的KMeans替换成FSQ。其实正如Fig3a所示,KMeans是对向量空间的柔性的量化,而FSQ直接就是四舍五入,是刚性的量化,在码本空间比较大的情况下,FSQ的冲突率比KMeans低。 如下图所示,M^2就是第二层的残差,在公式(3)中,先通过σ函数把残差映射到0~1之间,然后乘以量化值域L,相当于把残差投影到长度为L的线段上,Fig3b的网格等宽网格很好理解。有关FSQ的介绍可以参考这篇博客:https://spaces.ac.cn/archives/9826 基于多模态表征及SID序列的用户行为建模方法 多模态emb和SID序列在排序模型中的应用也比较常规。整体还是TWIN或者说SIM的先GSU进行soft-search,然后在ESU进行target attention。具体来说,作者在GSU使用的是原始多模态emb进行soft-search,在ESU使用的是SID序列和排序模型进行端到端训练。最终离在线效果都有很大的提升。 ...

March 21, 2026 · 1 min

论文阅读:Scaling Deep Contrastive Learning Batch Size under Memory Limited Setup

基本信息 论文标题:Scaling Deep Contrastive Learning Batch Size under Memory Limited Setup 作者单位:CMU 论文链接:https://arxiv.org/pdf/2101.06983 来源:arxiv 一、问题 对比学习通常使用InfoNCE loss进行训练,公式如下(1): 其中: \(s_i\)是anchor,\(f(s_i)\)是anchor embedding,\(f\)是anchor encoder \(t_{r_i}\)是\(s_i\)对应的positive,\(g(t_{r_i})\)是positive embedding,\(g\)是positive encoder \(t_j \in T\)是batch内其他\(s\)对应的positives,作为\(s_i\)的in-batch negatives。在没有hard negative的情况下,即每条样本是<anchor, positive>这种二元组的情况下,\(|T|\)等于batchsize \(\tau\)是温度系数,通常是一个常数,为讨论方便,后续省略该参数 在经典的双塔对比学习场景下,函数\(f\)和\(g\)通常是两个不同的网络(比如CLIP);在LLM/VLM emb场景下,函数\(f\)和\(g\)通常是共享参数的 对于对比学习,通常有in-batch negatives数量\(|T|\)越大,效果越好。但\(|T|\)越大,意味着batchsize也越大,训练时占用的显存也越多。如何在增大\(|T|\)的情况下不显著增加显存占用,是个很大的挑战。 二、方法 通常我们会使用梯度累积的方法在不增加显存的情况下增大batchsize,但梯度累积只适用于instance-wise loss,即每条样本的loss计算是独立的,这样可以把大batch拆成多个小batch分别计算梯度,然后累加起来。 但是由于对比学习loss计算时涉及到anchor和in-batch negative的运算,即对比学习loss是batch-wise loss,直接把大batch拆成多个小batch不加额外处理的话,小batch内的in-batch negatives就少了,影响对比学习效果。 本文的核心思想是,把公式1中的 对比学习loss 对 模型参数 的梯度求解过程拆分成:loss对表征\(f(s)\)的梯度 乘以 表征 对 模型参数 的梯度。由于只有loss计算需要batch-wise的运算,故上述拆解只有前半部分需要batch-wise运算,后半部分仍然可以instance-wise的计算然后梯度累加。下面来看具体过程。 为方便讨论,我们只看loss对\(f\)的参数的梯度求解过程(比如在\(f\)和\(g\)共享参数的情况下),对\(g\)的梯度求解过程的分析类似。 根据链式法则,对比学习loss \(\mathcal{L}\)对\(f\)的参数\(\Theta\)的梯度求解过程如下:把它拆解成第一项是\(\mathcal{L}\) 对表征\(f(s_i)\)的梯度,第二项是表征\(f(s_i)\)对模型参数\(\Theta\)的梯度,两项相乘就是loss \(\mathcal{L}\)对模型参数\(\Theta\)的梯度。 通过上述拆解为什么能显著降低显存呢,详细分析如下: 对于公式(2)右边第一项\(\frac{\partial \mathcal{L}}{\partial f\left(s_{i}\right)}\),根据公式(1)可以得到第一项的梯度如下公式(5)。也就是说第一项的梯度只与batch内所有的表征\(f(s)\)和\(g(t)\)有关,而与模型参数\(\Theta\)无关。所以我们可以先进行一次不含梯度的前向过程,拿到batch内所有的表征\(f(s)\)和\(g(t)\),由此可计算出公式(5),即loss \(\mathcal{L}\)对表征的梯度。由于这次前向不包含梯度(类似inference过程),所以不用记录各种中间激活值(activations)和梯度,可以大大节省显存,详细可看https://mingchao.wang/4KTgtnFc 的分析(即模型训练过程中activations是占显存的大头)。 计算完公式(5)之后,可以把这部分梯度缓存起来,用于后续计算。这部分缓存的梯度只需要额外占用\((|S|d+|T|d)\)的显存,显著小于海量的模型参数和中间activations的参数量。 对于公式(2)右边第二项\(\frac{\partial f\left(s_{i}\right)}{\partial \Theta}\),这部分梯度就是表征\(f(s_i)\)对模型参数\(\Theta\)的梯度,和常规梯度没什么两样,是instance-wise的,即每个样本的这个梯度计算是独立的。因此可以像常规梯度累积一样,进行mini-batch的计算,然后累加起来。为了完成这第二个过程,需要对每个样本\(s_i\)重新进行一次前向计算,由于需要对参数\(\Theta\)求梯度,所以这一次前向需要记录所有梯度和activations中间值。但是由于这个过程每个样本\(s_i\)可以独立计算,所以可以像梯度累积一样,把大batch拆分成多个小batch,每个mini-batch进行前向计算并进行梯度反向传播,所以显存峰值由mini-batch size决定,也不会太大。 ...

January 25, 2026 · 10 min

论文阅读:Large Reasoning Embedding Models: Towards Next-Generation Dense Retrieval Paradigm

基本信息 论文标题:Large Reasoning Embedding Models: Towards Next-Generation Dense Retrieval Paradigm 作者单位:阿里巴巴 论文链接:https://arxiv.org/abs/2510.14321 来源:arxiv 一、问题 电商emb召回场景,目前的方法都是直接字面语义上的对比学习训练(direct-embedding methods),即q2i的对比学习训练。对于复杂、困难的query,语义理解能力不足,比如下图Fig1中的query=“比茶更提神的饮料”,仍然会召回很多茶,因为字面理解没有理解query背后的深层含义。 二、方法 使用LLM强大的推理能力(reasoning),先推理出CoT,然后基于CoT再产emb。比如上面的例子中,经过LLM推理之后,推理出咖啡、红牛等关键词,通过这些关键词再去产emb然后召回,效果就好很多。 2.1 训练样本构造方法 如下图Fig2中的Data Construction部分: 收集线上query,尤其是那种困难query,就是在现有direct-embedding表现不好的query 把这些query喂给现有召回模型,得到召回商品集合① 然后使用强大的Qwen3-30B-A3B-Instruct生产CoT扩展信息 Unconstrained Reasoning:首先不加任何限制地生产CoT,尽可能利用大模型的世界知识和推理能力,生产充分完全的CoT信息 Information Extraction:由于上一步产出的CoT信息太长了,不利于线上推理,因此把上一步产出的CoT和原始query再次输入给大模型,让大模型抽取其中的关键信息,以keyword list形式输出 Post Processing:最后对上一步抽取的关键词进行后处理,去除重复词,去除query中已有的词等,得到精简、干净的关键词列表,列表最大长度是16 接着把query和CoT喂给已有的向量召回模型,得到扩展的召回商品集合② 由于要训练模型的Reasoning能力,所以只取出集合②-①的差集部分,这部分是CoT带来的增益商品集合 最后使用相关性模型对商品集合②-①进行过滤,过滤出相关的商品 通过上述步骤,产出约7.5kw的<query, CoT, item>三元组 把上述样本划分成两部分,7.1kw的<query, CoT, item>三元组用于Cold start预训练;剩余400w的<query, item>用于RL微调 2.2 Cold Start预训练 对应图Fig2左下角部分,该模块通过大规模的<query, CoT,item>三元组数据预训练,想要达到两个目的:一是让基础模型具备think能力;二是让基础模型产出的emb和下游q2i任务对齐。 这里使用的基础模型是Qwen2.5-3B-Instruct,比生产CoT的模型(Qwen3-30B-A3B-Instruct)小,其实也有点蒸馏的感觉,把大模型的CoT能力蒸馏到小模型中。 训练任务包括两个,一个是CoT的NTP loss(对应图中的SFT loss),另一个是q2i的对比学习InfoNCE loss。query塔和item塔共享参数,他们的emb都是最后一个特殊token <emb> 的emb。 Loss组合: 2.3 RL微调 上一步的SFT主要进行模仿学习,模仿更大的大模型的think能力,小模型本身的reasoning能力受限,接下来需要用GRPO对小模型进行RL微调。RL微调同时对生产CoT和生产emb两个任务都有作用,具体看下面的reward: RL微调设计了3个reward: Format Reward:产出的CoT格式符合“<think> Specific CoT </think><emb>”就得1分,否则得0分 Length Reward:产出的CoT格式符合长度限制(<=16)就得1分,否则得0分 Retrieval Accuracy Reward:联合原始query和产出的CoT产出的增强query emb,与batch内所有的item emb求相似度,正确item所在的排名为\(rank(d_i)\),再根据公式12计算一个排名的reward。核心思想是:正确的item与query的相似度排名越高则reward越大(即rank值越小则reward越大)。 最后,上述3个reward通过三个β系数组合起来: ...

December 13, 2025 · 1 min

论文阅读:Enhancing Embedding Representation Stability in Recommendation Systems with Semantic ID

基本信息 论文标题:Enhancing Embedding Representation Stability in Recommendation Systems with Semantic ID 作者单位:Meta 论文链接:https://arxiv.org/pdf/2504.02137 来源:RecSys 2025 Motivation:论文要解决的问题是什么 搜推广的模型严重依赖于item id embedding的表征质量,但在工业场景下,搜推广的id表征存在如下挑战: id量级非常大,常常是数十亿甚至是百亿的规模。因此,通常不可能给每个id一个单独的embedding(即文中的individual embedding, IE),IE的成本太高 id分布非常不均匀,马太效应严重。文中统计:0.1%的头部item占据了25%的曝光量;5.5%的腰部item占据了50%的曝光量;94.4%的尾部item只占据了25%的曝光量 id分布漂移严重:搜推广场景中item的变化非常频繁,无时无刻不在发生着新id的产生和旧id的退出,而且不同id存活的时间周期也不尽相同,所以id的准入准出策略很难完美适配所有item 针对上述问题,常见的做法是对item id采用hash然后查emb的方式(即文中的random hash,RH),将所有id hash到一个固定大小的空间,然后查emb。但是RH方式有如下缺点: 存在hash冲突,把不相关的id hash到一个桶里,导致语义混乱,学习效果不佳 无法解决id分布漂移的问题,比如hash到同一个桶的A、B两个id,如果B出现频率变高,则会带偏A的分布,影响了A的效果 无法进行知识共享,例如新出了商品iphone15,iphone15无法共享到老的iphone14的emb知识,iphone15的id emb必须完全重新学习。针对这种情况,作者做了一个更加极端的AA实验,就是copy一个完全相同的商品,只换item id,如果是IE或者RH策略,则新商品由于id emb是随机初始化的,效果不佳,这是id-based的通病 基于前缀n-gram的semantic id表征方法 针对上述问题,作者沿用了semantic id的思路,首先使用内容理解团队产出的文本、图片等多模态emb,然后基于过去3个月的item多模态emb,训练RQ-VAE模型,并产出所有item的semantic id。 上述过程都是常规操作,重点在于如何基于semantic id得到item emb表征。假设semantic id是L层,每层的codebook size是K: 最常规的做法:每层都初始化一个K*d的emb table,每层sid查各自的emb table,然后把L层的sid emb加起来。但是本文完全没有提这种方法,也没有和这种方法比较,非常奇怪。 为了比较,我个人再详细描述下这种常规做法。比如老item A的sid是(c1,c2,c3);新来一个item B,它的sid是(c1,c2,c4)。用常规方法,A的emb是c1+c2+c3,B的emb是c1+c2+c4。两者c1、c2是可以共享的,所以常规方法也能起到一定的知识共享的效果,共享项有2项:c1、c2。但是因为RQ-VAE的沙漏问题,c2很有可能是沙漏瓶颈,信息量不足。 作者对比了Table 1中的几种方法: Trigram和Fourgram差不多,如果L=3用Trigram、L=4用Fourgram的话,本质上是把L个sid映射成了一个无冲突的int。但是这种方法映射出来的int数量太多了,是\(K^L\)。如果K=1024、L=3,则\(K^L\)就已经超过10亿了,这和直接无冲突的IE方法一样了,而且存在新id无法共享老id学到的知识的问题 All bigrams,就是所有的sid的2-gram。还是上面的例子,A的emb相当于\(c_1c_2+c_2c_3\),B的emb相当于\(c_1c_2+c_2c_4\),两者可共享\(c_1c_2\)项,相比于常规方法,虽然共享项数变少了,但粒度更精细了,孰好孰坏未可知。由Table 2可知,All bigrams的效果至少比Trigram和Fourgram好很多了,而且如果层数L越大,可共享项越多 Prefix-ngram(简称Prefix-SID方法),本文提出的新方法,把所有前缀组合成新id查emb,然后所有emb再求和。还是上面的例子,A的emb相当于\(c_1+c_1c_2+c_1c_2c_3+c_2+c_2c_3+c_3\),B的emb相当于\(c_1+c_1c_2+c_1c_2c_4+c_2+c_2c_4+c_4\),两者可共享\(c_1, c_1c_2, c_2\)三项,比之前的所有方法可共享的信息都多,而且如果层数L越大,可共享项越多,因此这种方法的效果最好,训练也最稳定 实验结果很丰富,做了很多分析,Prefix-SID方法有如下优势: 相比于IE和RH方法,Prefix-SID方法对中长尾item的提升尤其显著,因为新id和老id的表征有了知识共享 对id分布漂移问题更不敏感:由于电商模型训练时消费数据的顺序是和数据的时间一致的,比如一个月的数据,按照1号、2号、…31号这样的时间先后顺序依次训练,理论上4号的模型在4号的测试集上的效果是最好的。作者做了一个实验,分别用20号和4号的模型都在4号的测试集上进行评测,看看20号的模型指标相比4号降低了多少。作者发现,使用Prefix-SID方法和IE方法,两者的指标降低幅度都差不多,都比较小。首先IE方法由于不存在hash冲突,所以20号的模型仍然能比较好地预测4号的数据;其次,Prefix-SID方法虽然有hash冲突,但是因为冲突的item都是语义相似的,可以进行新老item的知识共享,所以这个冲突反而是好事,对模型效果无影响。但是作者发现RH方法的20号的模型在4号数据上评测指标下降比较多,因为有hash冲突,而且冲突是随机的,20号的分布已经变化很大了,导致在4号数据上效果不佳。Table 4的指标越小越好。 基于Prefix-SID方法虽然也有hash冲突,但是冲突到同一个semantic id的item表征更相似,而RH冲突到同一个桶里的item是完全随机的,相似度差。作者以IE为base,把Prefix-SID和RH都各自都冲突到同一个桶的IE emb提取出来,计算类内相似度和类间相似度,发现基于Prefix-SID的类内相似度方差小,类间距离大,说明Prefix-SID确实能把相似item聚到一起。 评论 可借鉴 基于Prefix-SID方法确实能提高新item和老item的信息共享数量,方法值得借鉴 论文实验分析很丰富 可改进 基于Prefix-SID方法居然没有和最常规的加和方法比较,是本文最大的不足

October 9, 2025 · 1 min