论文题目: Actions Speak Louder than Words: Trillion-Parameter Sequential Transducers for Generative Recommendations
论文地址: https://arxiv.org/pdf/2402.17152
论文发表于: arXiv 2024年5月
论文所属单位: Meta
论文大体内容
本文提出推荐系统的一个新的范式GRs,将LLM的优势发挥到推荐系统中。本文从特征、模型结构、推理等方面对GRs进行了详细描述,最终在离线和在线效果上取得了不错的收益。
Motivation
Transformer和LLM系列风靡,那么怎么应用到推荐系统中取得收益是需要探索的。
Contribution
①提出了推荐系统的新范式:生成式推荐系统(Generative Recommenders, GRs)。
②对异构特征进行了统一和序列化,包括Sparse和Dense特征,让它们能在GRs里面使用。
③提出了HSTU(Hierarchical Sequential Transduction Units)架构,提升5到15倍的性能。
④在离线数据集和线上AB实验中,取得不错的收益。并且证明scaling law也适用GRs,作者称这是推荐系统的ChatGPT moment。
1. Meta原有的推荐系统架构是DLRM,本质就是我们现在常见的深度学习这一套,利用Sparse特征、Dense特征来建模。
2. 随着Transformer的风靡,尤其是LLM时代的到来,本文作者也在想怎么把这套框架引入到推荐系统重,进行推荐范式的重构,名为生成式推荐系统(Generative Recommenders, GRs)。虽然运算量高出3个数量级,但是效果提升了12.4%。

3. 统一异构特征
将Sparse和Dense特征拍平到序列里面,其中统计类特征不直接放入GRs里面,而是通过序列中的关系去表达这种关系,采用了target-aware formulation。

4. 将Ranking和Retrieval变为序列转换任务
Ranking和Retrieval任务的转化方式如下图,其中Ranking根据序列学习出每个item的action,而Retrieval是根据序列学习出有正向action的item。

5. 分层序列转换单元HSTU
①整体框架如下图,其中每一层包括3个模块:Pointwise Projection、Spatial Aggregation、Pointwise Transformation
- HSTU的每一层(与Transformer的区别)[ATA]
- 逐点映射 Pointwise Projection
- 类似于 Transformer 的 QKV 映射,但计算更融合,并额外产生一个门控权重 U
- U, V, Q, K = Split(SiLU(f(X)))
- 空间聚合 Spatial Aggregation
- 执行注意力加权聚合,但不使用标准 Softmax
- 逐点聚合注意力 (Pointwise Aggregated Attention)
- Z = SiLU(Q * K^T + r) * V,其中r是相对注意力偏置 (relative attention bias),它同时编码了位置信息p和时间信息t
- 优势1:保留强度信息
- 标准 Softmax 会将注意力分数归一化为和为 1 的概率分布,这可能丢失原始分数中蕴含的强度信息。例如,如果一个用户历史中有 10 个与目标物品相关的项,而另一个用户只有 1 个,Softmax 可能会给这两个用户相似的注意力分布,但 HSTU 的设计可能允许模型感知到前者有更强的相关信号(因为聚合前的分数和可能更大)。
- 优势2:适应非平稳词表
- 推荐系统的物品/内容库是动态变化的(非平稳词表)。Softmax 这种全局归一化的方式可能不如逐点处理更能适应这种变化。
- 优势3:实验证明训练稳定且效果好
- 论文指出,这种 Pointwise Attention 之后需要接 Layer Normalization (见下一模块) 来稳定训练。论文表 2 (Table 2) 在一个模拟非平稳词表的合成数据集上进行的实验显示,使用 Pointwise Attention 的 HSTU 比使用 Softmax 的版本以及标准 Transformer 在 Hit Rate 指标上高出 44.7% 到超过 100%。
- 逐点变换 Pointwise Transformation
- output = f(norm(Z) * U),其中U是门控,元素乘控制哪些信息可以通过
- 类似于FFN,但是优势是:
- 优势1:减少计算和内存
- 用简单的逐元素门控和线性层取代了标准 Transformer 中包含两个线性层和一个非线性激活的 FFN 模块,显著减少了参数量、计算量和中间激活值的内存占用。
- 优势2:激活内存优化
- HSTU 的设计(更少的线性层、融合计算)使得每层所需的激活内存大约只有标准 Transformer 的一半,这对于需要大 Batch Size 训练的推荐系统至关重要,理论上允许构建更深的网络。
- 优势1:减少计算和内存
- 逐点映射 Pointwise Projection


②HSTU将MHA中的softmax attention换成Pointwise aggregated attention。原因是:
-与目标相关的先验数据点的数量是表明用户偏好强度的一个重要特征,而在softmax归一化之后很难捕捉到这一特征。这一点至关重要,因为我们既要预测参与度的强度,例如在给定项目上花费的时间,又要预测项目的相对排序,例如预测一种排序以最大化AUC。
-虽然softmax激活从构造上来说对噪声具有鲁棒性,但它不太适合流设置中的非平稳词汇表。
③提高稀疏性来提升速度
作者采用随机长度(SL)的方案选择输入序列,用一定的概率来选择序列子集。

④提出M-FALCON(Microbatched-Fast Attention Leveraging Cacheable OperatioNs)来高效推理。

6. 实验
①HSTU的收益
-离线数据集
数据集:MovieLens、Amazon Reviews
Metric: Hit Rate@K、NDCG@K
效果见下图

-工业数据集
Metric:在C-Task和E-Task上的Normalized Entropy (NE)

②Encoder效率
-序列长度:序列长度提升能提升效果

-效率:HSTU对速度有5~15倍的提升

③线上效果:提升12.4%

④Scaling law

7. 这篇论文给推荐系统构建了个新的范式,让推荐系统从传统的DNN框架升级为序列生成的框架,是比较开创性的工作,有可能颠覆未来推荐系统的发展。
参考资料
[1] https://zhuanlan.zhihu.com/p/691397927
以上均为个人见解,因本人水平有限,如发现有所错漏,敬请指出,谢谢!

1957

被折叠的 条评论
为什么被折叠?



