从顶会论文看2022年推荐系统序列建模的趋势
©作者 | 猫的薛定谔
最近看了 22 年几篇顶会的序列建模的文章,模型无不复杂高深,但细细看后,发现这些文章本质上均是输入的变化,模型只为了配合输入。看看最近的顶会是怎么玩的吧。
背景
序列建模的目的是从用户的历史行为中挖掘用户的兴趣,进而给用户推荐感兴趣的物品。
先介绍两篇序列建模的经典文章。
第一篇是我认为的开山之作——阿里的 DIN,模型结构如下图所示。该论文认为在选择 target item 时,user behaviors 中的 item 应该具有不同的权重,并采用了 target-attention 的方式计算权重。DIN 的 user behavior 是一个一维的 item 序列,emb 之后多一个 emb 维度,希望大家能记住这种输入格式,后面的算法就是在丰富这种格式。
▲ DIN
第二篇是长序列的经典文章——阿里的 SIM,模型结构如下图所示。在 DIN 的基础上,将用户行为序列变长,如果计算资源允许,无脑采用 DIN 的方式也未尝不可。回到 SIM,论文是这么做的:依旧保留短期行为序列,采用 DIEN(DIN 的一种变体)的方式提取用户短期兴趣;长序列则采用两阶段方法,召回得到 topk 个 item 后,再计算 target-attention。
▲ SIM
插句题外话,阿里的 MIMN 已经证明,序列越长,auc 越高。
玩法一:序列加side info
这是 eBay 在 WSDM 2022 上的文章。
论文标题:
Sequential Modeling with Multiple Attributes for Watchlist Recommendation in E-Commerce
论文链接:
https://arxiv.org/pdf/2110.11072.pdf
之前的序列都只是 item 的序列,eBay 额外加了 item 的属性,比如价格;这个属性是变化的,例如当价格变动时,用户可能会感兴趣。
因此输入由一维序列变成了 2 维矩阵,对应的计算 attention 的方式也变成了 2D 的——attention2D,模型结构如下图。
▲ attention2D
具体的计算过程:
1. Embedding Layer——输入加了属性信息,是个 2D 的矩阵;embedding 之后多了 emb 维,shape 为 ,N 为序列长度,C 为属性个数;
2. 多了个属性维度后,emb 如何转变为 QKV 呢?本文对每种属性(也叫 channel) 进行相同的线性变换,即:
▲ Linear2D,i代表item,j代表属性
3. 那 2D 的 QK 如何计算 attention score 呢?本文介绍了 3 种粒度的计算方式: 是 4 维数据,代表了第 i 个 item 的第 j 个属性与第 个 item 的第 个属性的交互,是最细粒度的交互; 是 2 维数组,对 item 的所有 channel 求和,表示的是 item 维度的交互; 是 2 维数组,对 channel 的所有 item 求和,表示的是 channel 维度的交互。将这三种 score 加权求和就是最后的 score 了(加权系数也是学出来的)。
▲ 2D的attention score
4. 到目前为止,计算了 attention之后,输出仍有 2 维,属性维和 emb 维。降维处理是在 prediction layer 之前,对属性维进行 pooling,将仅剩的 emb 维松儒 mlp。
玩法二:序列加宽
本文是阿里在 WSDM 2022 上的文章。
论文标题:
Triangle Graph Interest Network for Click-throughRate Prediction
论文链接:
https://arxiv.org/pdf/2202.02698.pdf
序列再长也只是这一个用户的序列,这篇论文直接从别的用户的行为中寻找 item。用所有用户的行为序列构建一个 item 图,图上的每个节点都是一个 item,item 有边代表有用户依次点击过这两个 item。
本文首先定义了一个图上的 triangle,triangle 的定义不是重点,可以把 triangle 简单的理解为图上的邻居。
▲ triangle
TGIN 的模型结构如下图,看着复杂,其实很简单。下图中的红框部分就是一个类似于 DIN 的计算 attention 的网络,左边是处理 triangle 的,有边是计算多阶 triangle(理解为图上的多阶邻居)attention 的网络。
▲ TGIN
某阶的 TriangleNet:每一阶会有多个 triangle,每个 triangle 会有 3 个 item,所以就先内部聚合(intra),简单的 avg pooling;再外部聚合(inter),multi-head self-attention。
▲ TriangleNet
玩法三:序列分段并加标签
阿里 WSDM 2022
论文标题:
Modeling Users’ Contextualized Page-wise Feedback for Click-Through Rate Prediction in E-commerce Search
论文链接:
https://guyulongcs.github.io/files/WSDM2022_RACP.pdf
序列以 page 的形似分段,page 内不仅有点击 poi(正反馈),还有未点击 poi(负反馈),捕获页面内的 context 信息和页面间的兴趣演变。页面信息能学到什么?用户不点击可能不是因为不喜欢,而是页面中有一个同类型但更便宜的。
模型结构如下图。一般像这种两层结构的输入,模型也是有两层,一层提取页内信息(intra),一层聚合页间信息(inter)。这个模型有三层,中间加了一层 backtrack 层。还有一个细节,page 是经过过滤的,将其限制在与当前查询向量同类别的范围内。
▲ RACP
重点解释一下兴趣回溯层,即上图中的绿色部分。一般的模型只注重了长期兴趣与 target item 的相关性,而忽略了短期兴趣的一致性。具体到这篇论文,短期兴趣指的就是每个 page 所代表的兴趣。
在这一层引入了一个用户当前兴趣的查询向量 (这是一篇搜索的文章,所以有查询向量),其余的 不再是真正的查询向量,而是 attention query vector。attention query vector 通过 GRU 一层一层往左传,影响 page 内的 attention 计算。
总结
前面介绍了几种序列在输入侧的玩法。
玩法一:加 item 的属性。这个属性的选择非常有讲究,得是变化的、且用户非常敏感的,比如价钱、比如补贴;不能是那种无关痛痒的属性。
玩法二:加更多的 item,不过不是加长,而是通过图(本质是通过其他用户),引入一些用户以前没见过(或没交互过)但可能感兴趣的 item;这种加 item 的方式可以离线完成,可以用一些“高大上”的方法吹牛逼。个人感觉,这种方法有效的本质是学习了更多的共现关系。之前在给 user 选择 poi 时,只学习了 user 自己历史内的 poi 的共现关系;通过某种合理的方式(如其他用户的历史行为)引入更多共现关系可以拓宽模型的视野。
玩法三:序列分段(分 page、分 session),混合序列(不仅仅是点击序列),最真实地还原用户做选择的环境,推理用户在段内的点击逻辑,分析用户的选择心理。
一起交流
想和你一起学习进步!『NewBeeNLP』目前已经建立了多个不同方向交流群(机器学习 / 深度学习 / 自然语言处理 / 搜索推荐 / 图网络 / 面试交流 / 等),名额有限,赶紧添加下方微信加入一起讨论交流吧!(注意一定o要备注信息才能通过)
从顶会论文看2022年推荐系统序列建模的趋势相关推荐
- 顶会论文看图对比学习 (GNN+CL) 研究趋势
作者 | 侯宇蓬 单位 | 中国人民大学 来源 | RUC AI Box 随着对比学习(Contrastive Learning)在 CV.NLP 等领域大放异彩,其研究热度近年来也逐步走高.在图学习 ...
- 继续!从顶会论文看对比学习的应用!
公众号作者@上杉翔二 悠闲会 · 信息检索 整理 | NewBeeNLP 上周,我们分享了对比学习的一些应用,从顶会论文看对比学习的应用! 本篇博文将继续整理一些对比学习的应用,主要是集中在MoCo和 ...
- 从200多篇顶会论文看推荐系统前沿方向与最新进展
作者|牟善磊 学校|中国人民大学硕士生 研究方向 | 推荐系统 来源 | RUC AI Box 推荐系统作为深度学习御三家(CV, NLP, RS)之一,一直都是学术界和工业界的热门研究 topic. ...
- 顶会论文看图对比学习(GNN+CL)研究趋势
每天给你送来NLP技术干货! © 作者|侯宇蓬 机构|中国人民大学高瓴人工智能学院 研究方向|图机器学习与推荐系统 来自 | RUC AI Box 1. 引言 随着对比学习(Contrastive L ...
- 从2021年多篇顶会论文看OOD泛化新理论、新方法和新讨论
©PaperWeekly 原创 · 作者 | 张一帆 学校 | 华南理工大学本科生 研究方向 | CV,Causality arXiv 2021 论文标题: Towards a Theoretical ...
- 从 200 多篇顶会论文看预训练语言模型研究进展
© 作者|王晓磊 机构|中国人民大学高瓴人工智能学院博士一年级 导师|赵鑫教授 研究方向 | 对话系统和预训练模型 近年来,以 BERT 和 GPT 系列为代表的大规模预训练语言模型(Pre-trai ...
- 论文浅尝 | 从 6 篇顶会论文看「知识图谱」领域最新研究进展 | 解读 代码
本文内容源自往期「论文浅尝」,由 PaperWeekly 精选并重新排版整理,感谢 PaperWeekly. ISWC 2018 ■ 链接 | http://www.paperweekly.site/ ...
- 7篇顶会论文带你梳理多任务学习建模方法
如果觉得我的算法分享对你有帮助,欢迎关注我的微信公众号"圆圆的算法笔记",更多算法笔记和世间万物的学习记录- 公众号后台回复"多任务",即可获取相关论文资料集合 ...
- 顶会论文看不懂?阿里巴巴技术专家为你全方位解读!
简介: 由阿里云开发者社区联合新零售智能引擎事业群共同打造的<KDD 论文精华解读>电子书重磅发布!覆盖推荐系统.图神经网络预训练.买家秀视频标题生成.在线电视剧的受众竞争力预测和分析等 ...
最新文章
- linux-----shell高级编程----grep应用
- JAVA 泛型与反射
- 干掉勒索病毒的22岁程序员自曝黑历史:中学是电脑白痴
- 高通android开源代码下载,高通平台Android源码bootloader分析之sbl1(三)
- [iCustomer] 项目技术简介
- php表格批量修改数据,php批量修改数据库表名前缀
- matlab 神经网络工具箱的实用
- java实现打印菱形(任意输入数字打印任意阶菱形)
- 深度 ghost xp3 装IIS 方法
- mysql数据库字符集实践详解_mysql数据库 详解 之 自学成才1
- 写给朋友们的Markdown教程,真的很好用,而且很简单
- 幼儿园不同空间翻新设计注意事项
- 如何给物体添加阴影效果
- android入门书籍!微信小程序趋势及前景,安卓系列学习进阶视频
- import mysql.connector 报错
- IDE Eval Reset 插件安装使用
- “核高基”的专家有哪些人?
- 蹲175年的号子?维基解密阿桑奇动了谁的奶酪?
- UE4 AndroidSDK配置
- .bat文件实现对Sql Server数据库的查询