记得给 “应用机器学习” 添加星标,收取最新干货
作者:香港城市大学、西安交通大学 刘启东
今天跟大家分享一篇来自西安交通大学、香港城市大学、腾讯优图实验室天衍研究中心、吉林大学和西湖大学的论文,该论文已被NeurIPS2024接收。这篇文章提出了一种新颖的序列推荐LLM增强方法,名为LLM-ESR。该方法可极大地提升序列推荐中长尾用户和长尾物品的推荐性能。
论文地址:https://arxiv.org/abs/2405.20646
代码链接:https://github.com/Applied-Machine-Learning-Lab/LLM-ESR
1. 简介
序列推荐系统(SRS)的目标是根据用户的历史交互记录,为其推荐下一个可能的物品。尽管已经有众多的工作致力于提升序列推荐的性能,但是现有的SRS依然面临着严重的长尾问题。SRS中的长尾问题可以分为两类:1)长尾用户:如图1(a)所示,80%的用户交互物品数量少于10个,然而当前流行的SRS模型SASRec对这些用户的推荐效果表现较差;2)长尾物品:如图1(b)所示,大部分物品也仅被少量交互过,SASRec对于这些长尾物品的推荐效果显著差于那些更加热门的物品。这两类长尾问题,会严重地影响用户体验和卖家的利润。因此,本文致力于缓解SRS中的长尾问题。
LLM因其语义理解方面的强大能力,非常有希望用于解决长尾问题。然而,当前基于LLM的推荐系统存在以下两个问题:1)低效结合:现有的很多方法探究了直接使用ChatGPT或者微调LLaMA一类的开源大模型,直接进行推荐。但是LLM的推理效率很低,这使得这些工作应用到实际场景中存在困难;2)语义丢失:也有一部分工作使用LLM embedding来初始化SRS的embedding层,但是在微调过程中原本存储于embedding中的语义信息会丢失。此外,这些工作也忽略了用户侧的语义信息。
2. 问题定义
本文的问题与传统的序列推荐问题相同,即根据用户的历史交互记录,为其推荐下一个可能的物品。
此外,本文还同时要缓解长尾问题。因此,我们根据帕累托准则,将用户集和物品集都划分为两类,即Head User,Tail User和Head Item,Tail Item。
3. 方法
3.1 概述
本文所提出的LLM-ESR框架主要由两个模块组成:1)双视角建模模块:该模块包含两路,分别是语义视角建模和协同过滤视角建模,用于缓解长尾物品的问题;2)检索增强的自蒸馏模块:使用LLM检索相似的用户,然后用相似用户表征通过自蒸馏的方法增强序列编码器的训练,从而缓解长尾用户的问题。
3.2 双视角建模
这一模块主要通过结合LLM的语义信息和交互的协同过滤信息,提升SRS的长尾物品推荐能力。
语义视角建模:我们将物品的属性信息,如title,category等组合成prompt,并将该prompt输入到LLM中(本文使用的是text-ada-embedding-002,也可以换用LLaMA等LLM),输出的LLM embedding作为物品的语义表征。为了缓解之前工作在微调过程中的语义丢失问题,我们固定得到的LLM embedding,通过一个可微调的adapter将其转换为可输入SRS的item embedding。然后将序列的item embedding送入到SRS的sequence encoder中,得到语义视角的用户偏好表征。
协同过滤视角建模:这一视角下,item embedding应该是随机初始化且可训练,类似于一般的SRS,学习交互中的协同过滤信息。但是,因为语义视角下的embedding已经是训练好,直接随机初始化会造成训练困难问题。因此,使用LLM embedding的降维向量作为初始化。最后,经过sequence encoder,我们可以得到协同过滤视角下的用户偏好表征。
两层级融合:在序列层级,我们设计了一个cross-attention来融合两个视角下的物品表征序列;在输出层级,我们加和两个用户偏好表征得到的推荐概率。
3.3 检索增强的自蒸馏
检索相似用户:类似于得到物品的LLM embedding,我们将用户交互过的物品title组成prompt,获得用户语义层面的LLM embedding。然后通过向量相似度计算的方法,获取相似的用户。
自蒸馏:我们选取最相似的N个用户,用于自蒸馏。具体的蒸馏方法是使用这几个用户的在双视角建模下的用户表征作为引导,对目标用户的表征进行蒸馏,从而达到使用交互丰富的用户增强长尾用户的目的。
4. 实验
4.1 实验设置
我们在三个公开数据集Yelp、Amazon Fashion和Amazon Beauty下进行了实验。因为我们的方法是model-agnostic的,因此我们结合三个流行的SRS模型进行比较。baseline选取了专门针对长尾问题的CITIES和MELT,以及基于LLM增强的方法RLMRec和LLMInit。
4.2 总体表现
实验结果表明我们的方法超过现有的baseline,并且对于三种SRS模型都有巨大的提升效果。此外,通过比较tail item和tail user组的效果,可以说明我们的方法很好地缓解了两类长尾问题。
4.3 消融实验
消融实验主要验证了我们提出的双视角建模和自蒸馏方法的有效性
4.4 超参数实验
主要验证了自蒸馏在整个框架中的作用,以及选取的相似用户数量对我们模型的影响。
5. 总结
本文所提出的方法验证了LLM embedding在推荐系统模型中的巨大潜力,未来我们将继续在此方向探究如何使用LLM更好地增强传统推荐系统。
END