阿里SDM序列召回模型
背景
这是阿里2019年发表的一篇用于召回阶段的序列建模论文,这篇论文主要解决了两个问题:
1. 用户可能有多个兴趣(这篇论文的多个兴趣是指用户是否购买一个商品可能会受颜色、品牌、店铺等多个因素影响),如何建模多个兴趣
2. 用户的兴趣可以分为短期兴趣(当前session),长期兴趣,如何同时建模长期兴趣和短期兴趣
方法
模型上层视角的结构如上图所示,采用了经典的双塔模型,item tower得到 item embedding,user tower得到 user embedding,然后通过点乘求和得到score
正样本是有用户正反馈的item,负样本来自于随机采样,训练时使用softmax + logloss,serving时采样了knn检索。
模型的详细结构如下图所示
item侧的结构论文中没有详情介绍,应该是通过几层NN得到item embedding,论文主要详细介绍了user embedding的计算过程
为了能同时建模用户的长期兴趣和短期兴趣,用户分别提取了用户的短期行为序列和长期行为序列,划分方式如下所示:
短期行为序列:同个session,或行为间隔小于10min,但是最长不超过50
长期行为序列:用户7天内行为序列 - 短期行为序列
短期行为序列建模
短期行为序列建模方式如上图的左下所示,主要包含如下几个步骤:
1. 输入行为序列后用embedding层提取embedding
2. 经过一层LSTM建模时间依赖
3. 通过一层 multi-head self-attention 提取用户多个兴趣点
4. 经过一层user-attention引入用户个性化信息
长期行为序列建模
论文提取了多个长期行为序列(id序列、店铺序列、品牌序列等),每个序列都用user-attention建模,然后concat过NN
长短期兴趣融合
为了融合短期行为序列的建模结果和长期行为序列的建模,论文设计了一个gate结构,原理如下:
参考资料
论文地址:https://arxiv.org/abs/1909.00385v1
https://www.sohu.com/a/340104070_99979179
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异