BERT4Rec
概述
由Sun等人于2019年提出的序列推荐模型,将BERT的双向编码器表示引入推荐系统,通过Cloze任务进行训练,是SASRec之后序列推荐领域的另一个重要里程碑。
关键内容
-
论文信息:标题"BERT4Rec: Sequential Recommendation with Bidirectional Encoder Representations from Transformer",作者Fajie Sun等,发表于CIKM 2019,arXiv: 1904.06690。作为SASRec的直接后续工作,BERT4Rec采用了双向注意力机制,与SASRec的单向因果注意力形成对比。
-
核心创新:与SASRec的单向因果掩码不同,BERT4Rec使用双向Transformer Encoder,通过Cloze任务(随机掩盖序列中的某些物品,预测被掩盖的物品)进行训练。这种方法允许模型在训练时同时看到目标物品的前后上下文,理论上能捕获更丰富的序列信息。
-
架构特点:
- 双向注意力:与SASRec的因果掩码不同,BERT4Rec允许序列中每个位置看到所有其他位置(除了被掩盖的物品)
- Cloze任务:随机掩盖序列中的部分物品,训练模型预测被掩盖的物品
- 位置编码:保持Transformer的位置感知能力
-
与SASRec的对比:SASRec vs. BERT4Rec的争论是序列推荐领域持续时间最长的学术辩论之一。2023年的研究("Turning Dross Into Gold Loss")发现,BERT4Rec的优势主要来自其损失函数(全物品softmax交叉熵),而非双向注意力本身。当两者使用相同损失函数时,SASRec在大多数数据集上实际表现更好。
-
实验效果:在多个公开数据集上取得了当时的最优性能,但由于其复杂的训练策略和计算开销,实际应用中需要权衡效果与效率。
来源
相关
- SASRec — BERT4Rec的直接对比模型,单向自注意力
- 序列推荐 — BERT4Rec解决的核心场景
- Cloze任务 — BERT4Rec采用的训练任务
- Transformer架构 — BERT4Rec的基础架构
- 自注意力机制 — BERT4Rec的核心计算机制
- 双向注意力 — BERT4Rec与SASRec的关键区别