打破"沙漏“现象→提高生成式搜索/推荐的上限


EMNLP 2024: Breaking the Hourglass Phenomenon of Residual Quantization: Enhancing the Upper Bound of Generative Retrieval

paper链接: arxiv.org/abs/2407.21...

0 摘要

生成式搜索/推荐在搜索和推荐系统中已经成为一种创新的范式,它通过使用基于数值的标识符来提升效率和泛化能力。特别是在电子商务领域,像TIGER这样的方法使用基于残差量化的语义标识符(RQ-SID),表现出了很大的潜力。然而,RQ-SID面临一个被称为"沙漏"现象的问题,即中间码本令牌过于集中,限制了生成式搜索/推荐方法的全面发挥。本文通过研究发现,路径稀疏和长尾分布是造成这一问题的主要原因。我们通过一系列详细的实验和消融研究,分析了这些因素对码本利用率和数据分布的影响。结果表明,"沙漏"现象对RQ-SID的性能有显著影响。我们提出了一些有效的解决方案,成功改善了生成式任务在实际电子商务应用中的效果。

1 背景

在生成式搜索/推荐中,基于数值的标识符表示方法因其简单、高效和强大的泛化能力而在行业中被广泛采用,特别是在长行为序列推荐中。这些方法显著缩短了序列长度并加快了推理过程。值得注意的方法包括DSI、NCI、TIGER、GDR和GenRet。其中,TIGER方法通过残差量化(RQ)(Lee等,2022;Zeghidour等,2021)生成语义标识符(SID),有效捕捉了语义信息和层次结构。这种方法在以商品为主的电子商务场景中特别有优势,能够准确反映电子商务数据中固有的复杂层次关系和语义特征,从而显著提升推荐性能。

需要强调的是,基于RQ的方法的性能上限在很大程度上依赖于SID的生成,这也是本文分析和讨论的核心重点。

2 任务定义

基于现有常见的任务场景,定义如下任务【注意:任务形式不限于下列任务,只要是含有SID的任务均可】:该用户信息:年龄:age_2;性别:男性;会员状态:非会员。该用户的历史交互行为有:,......。该用户本次搜索的关键词为"XX鼠标"。请根据该用户信息、历史交互行为和本次搜索关键词,预测该用户接下来最可能购买的商品:

3 RQ-VAE SID生成

SID生成,谷歌的TIGER方法用的比较广泛。它通过残差量化RQ生成语义标识符(SID),能够有效捕捉语义信息和层次结构。这种方法在以商品为主的电商场景中尤其有优势,因为它能够准确反映电商数据中的复杂层次关系和语义特征,从而显著提升推荐性能。

4 沙漏现象

在通过残差量化(RQ)生成的SID中,我们观察到了一种显著的"沙漏"现象。具体而言,中间层的码本过于集中,导致了一对多和多对一的映射结构。这种集中现象引发了路径的稀疏性和长尾分布问题。路径稀疏性是指匹配路径仅占总路径空间的一小部分,而长尾分布则意味着大多数SID集中在少数的头部标记上,中间层标记的分布呈现长尾特征。在具有长尾特征的数据集中,这种"沙漏"效应尤为明显,显著限制了生成式搜索推荐方法的表示能力。问题的根源在于逐步量化高维向量残差的内在特性。基于此,我们对该现象进行了深入的理论与实验分析,并提出了相应的解决方案。

4.1 沙漏现象可视化

为了生成语义ID,我们首先利用公司内部数十亿条搜索日志中的查询-商品数据,训练了双塔模型(如DSSM和BERT等)。接着,通过商品塔获取了数亿商品的嵌入向量,最终采用残差量化(RQ)方法为所有商品生成了语义ID。

生成语义ID后,对所有商品进行了聚合,并计算了三层分布图。如上图所示,可以看到第二层集中有大量路由节点,整体分布呈现"沙漏"现象。为了验证这一现象的普遍性,我们在不同参数组合下进行了多次可视化实验,沙漏效应非常显著,三层代码表中token的路径分布相对稀疏。

此外,基于上述实验,我们使用三个指标对第二层的标记分布进行了统计分析:熵、基尼系数和标准差,如图所示。结果表明,第二层的标记分布表现出低熵、高基尼系数和大标准差,表明该分布具有显著的不均匀性。

总体而言,这种沙漏现象在代码表中通过路径稀疏性和token的长尾分布得到了统计数据支持。其中,

路径稀疏性:语义ID结构导致代码表利用率低。

长尾分布:在中间层,大多数路径集中到单个token上

4.2 现象分析

为了探讨"沙漏"现象的成因,将基于残差量化(RQ)的运行机制进行深入分析和讨论。为了便于理解,考虑两种原始嵌入的分布:非均匀分布和均匀分布。接下来,使用RQ为数据X生成语义ID。

可以看到,第一层,候选点被分成M个聚类桶,token的入度相等。输入分布均匀。第二层输入为第一层的残差,分布非均匀。小残差点靠近聚类中心,异常值较大。聚类更关注异常值,形成长尾现象。第三层残差值变得一致且均匀。类似第一层的均匀分布。第二层大路由节点分散成多个小节点。整体趋势随层数增加,残差减小,聚类效应减弱。形成沙漏状结构:数据压缩再扩展,最终均匀分布。语义ID构建后,RQ量化方法的影响,加上中间层头部token的主导地位,自然导致了路径的稀疏性。类似地,对于非均匀分布(如长尾分布),残差分布变得更加不均匀,导致现象更加严重。

4.3 实际影响

为了评估这种现象的影响,我们进行了多项实验。首先,在评估过程中,我们根据第二层标记的分布将测试集分为两组:头部标记测试集和尾部标记测试集。如表所示,头部标记测试集的性能显著提升,而尾部标记测试集的性能则明显较差。这种性能差异可以归因于先前分析的路径稀疏性和标记的长尾分布,导致了结果的偏差。这一现象在不同规模的模型(如LLaMA2、Baichuan2和Qwen1.5)以及不同参数的残差量化(RQ)中均有观察到,突显出长尾标记分布和路径稀疏性对模型性能的广泛影响。

此外,为了进一步探讨"沙漏"现象对模型性能的影响,我们进行了两个关键实验:1)交换第一层和第二层的标记,2)将交换序列的第一个标记作为输入。

在仅交换第一层和第二层标记的情况下,第一层出现显著的长尾分布,导致模型难以拟合,从而效果较差。由于逐标记错误的累计,交换后的效果甚至比不交换更差。然而,当交换后给定第一个标记时,输出任务变为预测第二或第三层的SID,这使得任务变得更简单,并且长尾分布不再影响结果(因为给定了真实的SID1),因此效果显著提升。此外,在不交换第一层和第二层的条件下,给定第一个标记(第二层SID依旧是长尾分布),其结果高于基线,但低于交换后给出第一个标记的情况(如表所示)。

这一发现表明,"沙漏"现象对模型性能有着实质性的负面影响。通过上述实验,不仅确认了"沙漏"效应的存在,还阐明了其对模型性能的具体影响,从而为未来的优化提供了坚实的基础。

5 解决方法

解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。然而,这可能导致空间容量不足。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。另一种简单的方法是自适应地移除第二层的顶部tokens,使语义ID成为一个可变长度的结构。这里使用了top@K策略,并设定一个阈值p。这种方法确保了分布保持不变,同时有选择地减少了"沙漏"效应的影响。

为了进一步验证该方法的有效性,在LLaMA模型上进行了实验。结果表明,通过应用自适应token移除策略,模型性能得到了提升,同时计算成本与基础模型相近,并且在一些客观优化(如Focal Loss和Mile Loss)方面也表现出色。

具体来说,实验结果显示,使用top@400 token移除策略的模型在大多数评估指标上都优于基线模型。这表明该方法有效地减少了长尾效应的影响。随着移除的tokens数量增加,模型性能的提升会遇到瓶颈。特别是当所有tokens都被移除时,这种限制尤为明显,这可能是由于缺少长尾tokens,导致召回率下降。同时,直接移除第二层会导致一个SID对应多个项目。这种细粒度的分析为所提出方法的有效性提供了有力证据。该方法在选择性移除不太重要的tokens的同时,保留了最有信息量的tokens,即使在移除大量数据的情况下,也能提升模型性能。

6 结论

本研究系统地探讨了RQ-SID在生成式搜索/推荐的局限性,特别是发现了中间层tokens过度集中导致数据稀疏和长尾分布的"沙漏"现象。通过广泛的实验和消融研究,证明了这一现象,并分析了其根本原因在于残差特性。为了解决这个问题,提出了两种方法:移除第二层的启发式方法和自适应调整token分布的可变长度token策略。实验结果显示,两种方法都有效缓解了瓶颈效应,其中自适应token分布调整策略效果最佳。这是首次系统性地探讨RQ-SID在生成式搜索/推荐中缺陷的研究,为未来的模型优化提供了坚实的基础,并显著提升了模型性能。

7 未来规划

1、 优化SID的生产与表征方式,通过引入时效、统计类特征来辅助额外表征,让其能满足对特征极为看重的排序需求;

2、 统一稀疏表征(SID)与密集表征,让LLM可以显示的建模密集特征变化趋势,而不是稀疏表征的映射

3、 保证链路无损失实现一段式搜索。

相关推荐
hello_ejb34 分钟前
聊聊Spring AI Alibaba的ObsidianDocumentReader
java·人工智能·spring
桥Dopey17 分钟前
Python常用的第三方模块之【jieba库】支持三种分词模式:精确模式、全模式和搜索引擎模式(提高召回率)
人工智能·python·分词模式
W流沙W17 分钟前
bert学习
人工智能·bert
想学好英文的ikun1 小时前
【MCP】第二篇:IDE革命——用MCP构建下一代智能工具链
ide·人工智能·python·ai·个人开发·mcp
码上飞扬1 小时前
深度剖析:GPT-3.5与GPT-4的主要区别及架构解析
人工智能
whuzhang161 小时前
3DGS之齐次坐标
人工智能·3d·自动驾驶
闭月之泪舞2 小时前
《深度神经网络之数据增强、模型保存、模型调用、学习率调整》
人工智能·学习·dnn
掘金詹姆斯2 小时前
LangChain4j快速入门(一)
人工智能·langchain
快手技术2 小时前
新加坡见!快手 11 篇论文入选人工智能领域顶会 ICLR 2025
人工智能
结冰架构2 小时前
量子金融工程:蒙特卡洛算法误差压缩至0.3%
人工智能·算法·ai·金融·量子计算