作者 | 丁炜杰 整理 | NewBeeNLP https://zhuanlan.zhihu.com/p/695506377
RecGPT: Generative Personalized Prompts for Sequential Recommendation via ChatGPT Training Paradigm
Highlights
- 快手2023年7月上线的工作,2024年4月投稿,序列推荐问题,在召回场景落地;
- 将序列推荐中的item_id视作token,仿照ChatGPT的预训练-微调范式得到模型;
- 相比传统的序列推荐,在自回归训练后,对序列做增广来微调,并结合这个增广方法,设计了二阶段的检索方法来融合两种检索结果;
- 在一个比较小、序列比较短的离线数据集上,相比基线在HR等离线指标有提升,在快手系统上线,有轻微的互动收益;
- 消融实验显示微调和两阶段检索方法都有收益;
- 实验数据集、实验指标、细节有较多未交代的,或者与基线论文没有严格对齐;
Problem
将ChatGPT类似的技术应用在序列推荐问题中。 形式化的说,是给定用户历史的交互序列,希望最大化序列下一个item的概率打分。
Related work
- 序列推荐:参考NLP,使用RNN/Transformer等结构,有GRU4Rec、SASRec、BERT4Rec等工作;
- LLM4Rec:近期新兴的范式,把推荐问题转换成一段自然语言描述,调用LLM来做推荐,有Chat-REC、GPT4Rec等工作,大部分是基于openAI的api的,没法基于item_id开展;
Approach
一共分为三个步骤/模块。
预训练:Pre-training auto-regressive generative model
- 朴素的自回归序列推荐,基于transfomer block,序列中的每个item与前文计算attention得到截止到该item为止的表示,要求能预测下一个item。
- 结合序列内的每个正样本,采样出对应的负样本集,binary交叉熵计算损失函数;
个性化微调:Personalized Prompt-tuning
作者认为,可以给每个人的序列,产生一些特殊的Prompt,来辅助训练;
- 基于预训练好的模型,在相邻两个item之间,做一轮item-id的插入,推理出最有可能成为下一个item的K个结果,得到一个新的扩展序列;
- 在新的序列下,要求能准确预测_实际的下一个item_,用negative log-likelihood计算损失函数;
两阶段召回:Inference-validating auto-regressive recall
- 把本来召回top K的问题,拆成了两个阶段,每个阶段得到一个user-emb,分别召回N M=K个item作为最终结果;
- 一阶段召回N个:在扩展序列中,对最后一个item不扩展;
- 二阶段召回M个:N作为最后一个item的扩展项,拼接到序列尾部,再次召回M个;
Experiments
离线实验
- 用到了亚马逊Sports,Beauti,Toys三个数据集,以及Yelp数据集,用户规模3W,物品规模2w,序列长度10,30w条互动记录;
- 基线包括热门、SASRec、BERT4Rec等;
- 评估使用HR和NDCG,分别取5和10;
- 只使用预训练的方法,大约能跟SASRec打平,结合了个性化微调和两阶段召回后,相比SASRec方法大约有3~5%左右的提升;
- 消融实验显示
- 个性化微调的辅助序列长度在1~3之间较好,太长了可能引入过多不相关序列,效果变差;
- 两阶段检索的最佳超参,固定返回数量为10的情况下,N=9、8是最好的;
- 如果在不加入个性化微调的情况下,强行打开两阶段检索,效果甚至更差;
在线实验
在快手场景,替换现有的ComiRec,跑了5天,评论 0.77%,转发 0.33%,视频播放 0.15%,关注和播放时长持平;
读后记
- 论文中没有交代的细节
- 序列的具体特征,除了item-id还包括哪些side-info;
- 第一步预训练时,具体的负样本采样方法;
- 第一步预训练和第二步微调时,为何不使用相同的loss;
- 微调阶段,是否冻结部分参数;
- 两阶段检索的M和N,与第二步微调的辅助prompt长度K的关系;
- 具体在快手的什么场景进行的线上实验;
- 为何采用HR@5和HR@10这样偏短的召回序列评估,而不是对齐ComiRec的@20和@50;
- 经典方法论文中提及的实验数据:SasRec,Dien,TWIN,ComicRec;
- 看知乎某专栏[1]的摘要,似乎是投在了DASFAA,The International Conference on Database Systems for Advanced Applications (DASFAA) is a leading international forum for discussing the latest research on database systems and advanced applications;
- 离线实验的数据集还是偏小的,召回典型数据集Amazon Books和Taobao没有用,最新发布的KuaiRec、KuaiRand等快手自身的数据集也没有用,序列平均长度10在当前的工业推荐系统里显然是不够看的;
References
- arxiv第一稿,2024.04.06第一次提交[2];
本文参考资料
[1]
知乎某专栏: https://zhuanlan.zhihu.com/p/694700684
[2]
arxiv第一稿,2024.04.06第一次提交: https://arxiv.org/pdf/2404.08675A