DiffuRec: A Diffusion Model for Sequential Recommendation
TL;DR 精炼摘要
本文首次将扩散模型应用于序列推荐,提出DiffuRec,以分布形式建模物品表示,从而灵活反映用户多重兴趣和物品多样化特性。通过噪声添加,目标物品嵌入被转化为高斯分布,促进了不确定性注入和物品表示重建,实验证明效果显著。
摘要
Mainstream solutions to Sequential Recommendation (SR) represent items with fixed vectors. These vectors have limited capability in capturing items' latent aspects and users' diverse preferences. As a new generative paradigm, Diffusion models have achieved excellent performance in areas like computer vision and natural language processing. To our understanding, its unique merit in representation generation well fits the problem setting of sequential recommendation. In this paper, we make the very first attempt to adapt Diffusion model to SR and propose DiffuRec, for item representation construction and uncertainty injection. Rather than modeling item representations as fixed vectors, we represent them as distributions in DiffuRec, which reflect user's multiple interests and item's various aspects adaptively. In diffusion phase, DiffuRec corrupts the target item embedding into a Gaussian distribution via noise adding, which is further applied for sequential item distribution representation generation and uncertainty injection. Afterward, the item representation is fed into an Approximator for target item representation reconstruction. In reverse phase, based on user's historical interaction behaviors, we reverse a Gaussian noise into the target item representation, then apply a rounding operation for target item prediction. Experiments over four datasets show that DiffuRec outperforms strong baselines by a large margin.
思维导图
论文精读
中文精读
1. 论文基本信息
1.1. 标题
DiffuRec: 一种用于序列推荐的扩散模型 (DiffuRec: A Diffusion Model for Sequential Recommendation)
1.2. 作者
ZIHAO LI 和 CHENLIANG LI,来自中国武汉大学网络空间安全学院、航空航天信息安全与可信计算教育部重点实验室;AIXIN SUN,来自新加坡南洋理工大学。
1.3. 发表期刊/会议
ACM Transactions on Information Systems (ACM Trans. Inf. Syst.)。该期刊在信息系统和推荐系统领域具有较高的声誉和影响力。
1.4. 发表年份
2023年
1.5. 摘要
序列推荐 (SR) 的主流解决方案通常使用固定向量来表示物品。这些向量在捕获物品的潜在方面和用户多样化的偏好方面能力有限。扩散模型 (Diffusion models) 作为一种新的生成范式,在计算机视觉和自然语言处理等领域取得了卓越的性能。研究人员认为,其在表示生成方面的独特优势非常适合序列推荐的问题设置。在本文中,研究人员首次尝试将扩散模型应用于 SR,并提出了 DiffuRec,用于物品表示构建和不确定性注入。DiffuRec 不将物品表示建模为固定向量,而是将其表示为分布,这能够自适应地反映用户的多重兴趣和物品的各种方面。在扩散 (diffusion) 阶段,DiffuRec 通过添加噪声将目标物品嵌入 (embedding) 破坏成一个高斯分布,该分布进一步用于序列物品分布表示的生成和不确定性注入。随后,物品表示被输入到一个近似器 (Approximator) 中进行目标物品表示的重建。在逆向 (reverse) 阶段,基于用户的历史交互行为,模型将高斯噪声逆向转换回目标物品表示,然后应用一个舍入操作 (rounding operation) 进行目标物品预测。在四个数据集上的实验表明,DiffuRec 在强基线上取得了显著的性能提升。
1.6. 原文链接
https://arxiv.org/abs/2304.00686 PDF 链接: https://arxiv.org/pdf/2304.00686v4.pdf 发布状态: 预印本 (Preprint),发布于 arXiv,并已在 ACM Trans. Inf. Syst. 正式发表。
2. 整体概括
2.1. 研究背景与动机
论文试图解决的核心问题是什么? 序列推荐 (Sequential Recommendation, SR) 的核心目标是根据用户历史交互记录,预测用户接下来可能感兴趣的物品。当前主流的 SR 方法通常将物品表示为固定的向量 (fixed vectors)。然而,这种固定向量表示在以下四个方面存在局限性,导致无法充分捕获推荐场景的复杂性:
- 物品的多重潜在方面 (Multiple Latent Aspects):一个物品(例如一部电影)可能包含多个主题或类别(例如爱情、战争),而固定向量难以精确编码这种复杂的、多维度的潜在方面分布。
- 用户的多重兴趣 (Multiple Interests):用户的兴趣是动态且多样化的,会根据不同场景或时间段进行调整。固定物品表示无法适应用户对物品不同潜在方面的动态偏好变化。
- 不确定性 (Uncertainty):用户当前的偏好和意图本身具有不确定性。同时,推荐系统也期望能提供多样性 (diversity)、新颖性 (novelty) 和意外性 (serendipity) 的推荐结果,这需要模型能够处理和注入不确定性。
- 目标物品的引导 (Guidance of Target Item):目标物品(即用户下一个将要交互的物品)可以作为辅助信号来指导用户当前意图的理解和表示生成,但如何在不引入巨大计算成本和深度耦合的情况下利用这一信息是一个挑战。
为什么这个问题在当前领域是重要的?现有研究存在哪些具体的挑战或空白?
SR 任务在商业上具有显著价值,但现有方法如基于序列神经网络 (LSTM、GRU)、自注意力 (Transformer-based, SASRec, BERT4Rec) 和图神经网络 (GNN) 的方法,都普遍采用固定物品嵌入。一些尝试解决多兴趣建模(如 DIN、MIND、ComiRec)和不确定性建模(如 VAE 系列、STOSA)的方法,也存在各自的局限:
- 多兴趣模型通常需要启发式地预定义兴趣数量,限制了表示能力和灵活性。
VAE模型则面临表示能力有限和后验分布近似坍塌 (collapse issue) 的问题。- 现有方法未能在一个统一的框架下,将用户的多重兴趣和物品的多重潜在方面都建模为分布。
这篇论文的切入点或创新思路是什么? 论文的切入点是借鉴扩散模型在生成多样化表示方面的强大能力。扩散模型 (Diffusion models) 在计算机视觉 (CV) 和自然语言处理 (NLP) 领域表现卓越,其核心优势在于能够生成连续多样的分布表示。研究人员认为,扩散模型天然适合解决序列推荐中物品多方面、用户多兴趣以及不确定性建模的问题。
2.2. 核心贡献/主要发现
论文最主要的贡献是什么?
- 首次将扩散模型应用于序列推荐 (First Application of Diffusion Model to SR):提出了
DiffuRec,这是首次将扩散模型框架引入序列推荐任务,利用其固有的分布生成能力来建模物品的多重潜在方面和用户的多样化意图。 - 分布表示与不确定性注入 (Distributional Representation and Uncertainty Injection):与传统的固定向量不同,
DiffuRec将物品表示建模为分布,从而能够自适应地反映用户的多重兴趣和物品的各种方面。通过在扩散和逆向过程中注入不确定性(噪声),增强了模型的鲁棒性并促使更具区分性的物品嵌入学习。 - 目标物品引导的融合 (Fusion of Target Item Guidance):设计了一种机制,在扩散阶段通过对目标物品嵌入逐步加噪,并以此调整历史物品的表示,将目标物品信息作为辅助信号融入到历史物品表示生成中,以更好地理解用户当前偏好。
- 新颖的逆向过程和舍入操作 (Novel Reverse Process and Rounding Operation):在逆向阶段,从纯高斯噪声迭代地重构目标物品表示,并通过一个定制的舍入函数将连续的表示映射到离散的物品索引空间进行最终推荐。
- 卓越的实验性能 (Superior Experimental Performance):在四个真实世界数据集上的广泛实验表明,
DiffuRec在所有评估指标上均显著优于九个强大的基线模型,验证了其有效性。
论文得出了哪些关键的结论或发现?
- 将物品表示为分布而非固定向量,能够更好地捕捉物品的复杂潜在方面和用户多样化的兴趣。
- 扩散模型固有的不确定性注入能力,不仅增强了模型鲁棒性,还有助于生成更具多样性的推荐结果。
- 将目标物品的信号融入到历史交互物品的表示生成中,可以有效提升模型对用户当前意图的理解。
DiffuRec在处理不同序列长度和物品流行度(头部物品和长尾物品)方面都表现出良好的鲁棒性。- 相较于纯对抗训练,
DiffuRec结合了扩散模型的分布生成和目标物品引导,能够取得更好的性能。
3. 预备知识与相关工作
3.1. 基础概念
为了理解 DiffuRec,需要掌握以下核心概念:
3.1.1. 序列推荐 (Sequential Recommendation, SR)
序列推荐旨在根据用户过去一系列按时间顺序发生的交互行为(例如购买、点击、观看),预测用户下一个可能感兴趣的物品。其核心挑战在于捕捉用户兴趣的动态演变和物品之间的顺序依赖关系。
- 输入: 用户 的历史交互序列 ,其中 是用户 交互的第 个物品,且 发生时间早于 。
- 目标: 预测用户 下一个会交互的物品 。
3.1.2. 物品嵌入 (Item Embedding)
在推荐系统中,物品通常被表示为低维、稠密的向量,这些向量被称为物品嵌入。嵌入向量能够捕获物品的语义信息和潜在特征,使得相似的物品在嵌入空间中距离更近。传统的 SR 方法通常使用固定的物品嵌入向量。
3.1.3. 扩散模型 (Diffusion Model)
扩散模型是一种生成模型,灵感来源于非平衡热力学,其核心思想是通过一个前向扩散过程 (forward diffusion process) 逐步向数据中添加噪声,直到数据完全变为纯噪声(通常是高斯噪声),然后学习一个逆向去噪过程 (reverse denoising process),将纯噪声逐步恢复为原始数据。
- 前向扩散过程 (Diffusion Phase):
- 逐步向原始数据 添加小量高斯噪声,生成一系列带噪数据 。
- 每一步添加的噪声量由一个预定义的噪声调度 (noise schedule) 控制。
- 这个过程是马尔可夫链 (Markov Chain),并且可以被表示为 。
- 一个关键特性是,可以在任意时间步 直接从原始数据 采样得到 :,其中
\bar{\alpha}_t = \prod_{s=1}^t (1-\beta_s)。
- 逆向去噪过程 (Reverse Phase):
- 模型学习一个神经网络 来逆转扩散过程,即从带噪数据 预测出前一步的更少噪声的数据 。
- 这个过程也是马尔可夫链,目标是从纯高斯噪声 逐步恢复到原始数据 。
- 训练目标:通常是最小化变分下界 (Variational Lower Bound, VLB),但简化后可以等价于预测每个时间步添加的噪声 。 其中, 是采样的高斯噪声, 是一个神经网络(近似器),用于预测噪声。
3.1.4. Transformer (Transformer)
Transformer 是一种基于自注意力机制 (self-attention mechanism) 的深度学习模型,最初用于自然语言处理,现已广泛应用于各种序列建模任务。
- 自注意力 (Self-Attention):允许模型在处理序列中的每个元素时,计算其与序列中所有其他元素的相关性(注意力权重),从而聚合整个序列的信息。 其中 (Query)、 (Key)、 (Value) 是输入经过线性变换得到的矩阵, 是键向量的维度,用于缩放点积。
- 多头自注意力 (Multi-Head Self-Attention):通过并行地运行多个自注意力机制(每个机制学习不同的表示子空间),然后将它们的输出拼接并进行线性变换,以增强模型的表达能力。
- 前馈网络 (Feed-Forward Network, FFN):每个注意力层之后会接一个全连接的前馈网络。
- 残差连接 (Residual Connections) 和层归一化 (Layer Normalization):用于稳定训练并加速收敛。
3.2. 前人工作
-
传统序列推荐模型:
- 马尔可夫链 (Markov Chain, MC):早期模型,如
FPMC,假设用户的下一个行为只依赖于上一个行为,局限性在于无法捕获长期依赖。 - 循环神经网络 (Recurrent Neural Network, RNN):
GRU4Rec是开创性工作,使用GRU(Gated Recurrent Unit) 建模序列信息。 - 卷积神经网络 (Convolutional Neural Network, CNN):
Caser将最近的 个物品视为“图像”,通过卷积操作捕获序列模式。 - 自注意力机制 (Self-Attention):
SASRec首次将单向Transformer应用于 SR,捕获物品之间的转换模式。BERT4Rec引入双向Transformer,将 SR 视为完形填空任务,利用未来信息预测当前物品。 - 图神经网络 (Graph Neural Network, GNN):
SR-GNN等工作利用GNN建模物品间的显式关系和高阶依赖。
- 马尔可夫链 (Markov Chain, MC):早期模型,如
-
多兴趣建模 (Multi-Interest Modeling):
DIN(Deep Interest Network):通过局部激活单元自适应学习用户兴趣表示。MIND(Multi-Interest Network with Dynamic Routing):通过胶囊动态路由机制提取用户多兴趣。ComiRec:结合动态路由和注意力机制进行多兴趣建模。TiMiRec:引入目标物品作为监督信号,指导兴趣分布生成。- 这些方法通常需要预定义兴趣数量,限制了灵活性。
-
表示分布与不确定性建模 (Representation Distribution and Uncertainty Modeling):
- 变分自编码器 (Variational Auto-Encoder, VAE):
Multi-VAE将VAE应用于协同过滤。SVAE结合RNN和VAE捕获时序模式。ACVAE引入对抗变分贝叶斯 (Adversarial Variational Bayes, AVB) 框架增强表示。VAE面临表示退化 (representation degeneration) 和坍塌问题。 - 分布表示 (Distribution-based Representation):
Distribution-based Transform将物品表示为椭圆高斯分布,并使用Wasserstein Distance作为损失函数。STOSA(Stochastic Self-Attention) 将自注意力中的内积替换为Wasserstein Distance,并注入不确定性。
- 变分自编码器 (Variational Auto-Encoder, VAE):
3.3. 技术演进
序列推荐技术从最初的马尔可夫链模型演进到深度学习时代的 RNN、CNN,再到近年来占据主导地位的自注意力机制(Transformer)。这些模型不断提升对序列依赖关系的捕获能力。在表示学习方面,也从简单的 ID 嵌入发展到更复杂的、能够编码多兴趣和不确定性的分布表示。扩散模型作为一种新兴的生成范式,在 CV 和 NLP 领域展现了强大的分布建模能力,为 SR 领域引入分布表示和不确定性注入提供了新的视角和工具。
3.4. 差异化分析
DiffuRec 与上述前人工作的核心区别和创新点在于:
- 统一框架下的分布建模:
DiffuRec首次在序列推荐中,使用扩散模型的生成范式,在一个统一的框架下将物品表示建模为分布。这与传统方法使用固定向量(如SASRec、BERT4Rec)或VAE系列方法(受限于表示退化问题)形成鲜明对比。分布表示能够更自然地捕获物品的多重潜在方面和用户的多样化、动态变化的兴趣。 - 目标物品引导的有效融合:通过扩散过程,
DiffuRec将目标物品的噪声表示作为辅助信息,引导历史物品分布表示的生成。这与TiMiRec尝试引入目标物品信号的方式不同,DiffuRec的方法是基于扩散模型的去噪机制,能够更深层次地将目标信息融合到表示学习中,并注入不确定性。 - 利用扩散模型的不确定性:扩散模型天然具备在生成过程中注入和处理不确定性的能力,这有助于克服
VAE的坍塌问题,并生成更多样、更鲁棒的推荐结果。这与STOSA通过随机高斯分布注入不确定性的方式有所不同,DiffuRec的不确定性注入是其核心生成机制的一部分。 - 连续到离散的映射:
DiffuRec在逆向阶段生成连续的目标物品表示,并通过一个特殊的舍入操作将其映射到离散的物品索引,这在生成模型应用于推荐时是关键的一步,有效桥接了连续生成与离散推荐的鸿沟。
4. 方法论
DiffuRec 模型建立在扩散模型 (Diffusion Model) 的基础上,旨在将物品表示为分布,并注入不确定性以更好地捕获用户兴趣的多样性和物品的多个潜在方面。其核心思想是,在训练阶段通过扩散过程将目标物品嵌入逐渐加噪,并以此引导历史物品表示的生成;在推理阶段,通过逆向过程从纯高斯噪声逐步恢复出目标物品表示。
4.1. 方法原理
DiffuRec 的方法原理可以概括为以下几点:
- 分布表示而非固定向量:
DiffuRec不将物品表示建模为固定的嵌入向量,而是将其视为分布。这使得模型能够更灵活地捕捉物品的多种潜在属性和用户多样化的兴趣。 - 扩散过程用于表示生成和不确定性注入:在训练阶段,模型将真实的目标物品嵌入 逐步加噪,得到一个带噪声的表示 。这个 不仅包含了目标物品的信息,还注入了不确定性。接着,模型利用这个带噪声的 来调整用户历史交互序列中每个物品的表示,生成一组分布表示 。
- 近似器 (Approximator) 进行重建:
DiffuRec使用一个Transformer模型作为近似器 ,接收历史物品的分布表示 作为输入,并尝试重建原始的、未加噪的目标物品表示 。训练目标是使重建出的 尽可能接近真实的目标物品嵌入 。 - 逆向过程进行物品预测:在推理阶段,模型从一个纯高斯噪声 开始,通过训练好的近似器 迭代地执行逆向去噪过程,逐步去除噪声,最终恢复出预测的目标物品表示 。这个逆向过程本身也具有随机性,从而引入了对用户行为不确定性的建模。
- 舍入操作 (Rounding Operation) 进行离散化:由于逆向过程产生的 是一个连续的向量,需要将其映射到离散的物品索引。
DiffuRec通过计算 与所有候选物品嵌入的内积,选择内积最大的物品作为推荐结果。
4.2. 核心方法详解
DiffuRec 的整体架构如原文 Figure 2 所示,主要包含三个部分:近似器 (Approximator)、扩散(训练)阶段和逆向(推理)阶段。
4.2.1. 任务定义
给定用户 的历史交互序列 ,其中 表示用户 交互的第 个物品, 是序列长度。序列推荐的目标是生成一个排序列表,作为用户 接下来可能偏好的物品候选。
4.2.2. 整体流程概览
该图像是示意图,展示了DiffuRec模型在顺序推荐中的双阶段流程,包括扩散(训练)阶段和反向(推理)阶段。模型通过对目标项嵌入进行高斯噪声处理,生成分布表示,以适应用户的多样兴趣和项目的各方面特性。公式 表示在扩散过程中推断目标项表示。
VLM 描述: 该图像是示意图,展示了DiffuRec模型在顺序推荐中的双阶段流程,包括扩散(训练)阶段和反向(推理)阶段。模型通过对目标项嵌入进行高斯噪声处理,生成分布表示,以适应用户的多样兴趣和项目的各方面特性。公式 表示在扩散过程中推断目标项表示。 原始论文描述: F..Architecture of DifFuRec.The figure on the left is the Aproximator, a Transformer backbone for tcelain ha reverse phase, respectively.
参考上图 (原文 Figure 2),DiffuRec 的核心步骤如下:
- 扩散(训练)阶段:
- 选择目标物品 的静态嵌入 。
- 通过扩散过程,向 添加高斯噪声,生成带噪声的目标物品表示 。
- 利用 调整历史序列中的每个物品嵌入 ,生成分布表示 。
- 将这些分布表示 输入近似器 。
- 近似器输出重建的目标物品表示 。
- 通过交叉熵损失函数优化模型参数,使 接近 。
- 逆向(推理)阶段:
- 从纯高斯噪声 开始。
- 迭代地执行逆向去噪步骤:
- 利用当前的 调整历史物品嵌入,生成 。
- 将 输入训练好的近似器 ,得到 的估计。
- 根据 和 估计出更少噪声的 。
- 重复此过程直到得到 。
- 对最终的 应用舍入操作,预测目标物品 。
4.2.3. 近似器 (Approximator)
DiffuRec 采用 Transformer 作为近似器 的骨干网络,用于在扩散和逆向阶段重建目标物品表示 。Transformer 因其在序列依赖建模方面的有效性而被广泛采用。
近似器的输入序列 的每个元素 是由原始物品嵌入 和扩散/逆向步骤信息 调整后得到的: 其中, 的计算方式为:
- 表示逐元素乘法 (element-wise product)。
- 是物品 的静态嵌入。
- 是对应扩散/逆向步骤的嵌入 (step embedding),它将每个时间步 的特定信息引入模型,这通常通过正弦位置编码或学习到的嵌入实现,如
Transformer中常用的方式。 - 在扩散阶段是带噪声的目标物品表示 ;在逆向阶段是当前去噪后的目标物品表示 。
- 是从高斯分布 中采样的值,其中 是一个超参数,定义了均值和方差。
-
在扩散阶段, 控制噪声注入的程度,使得历史物品表示能够被目标物品的带噪信息所调节。
-
在逆向阶段, 引入随机性,建模用户兴趣演变的不确定性,使得历史物品每个潜在方面的权重可以根据用户和时间动态调整。
近似器的
Transformer结构保持标准配置,包括多头自注意力 (multi-head self-attention)、带ReLU激活的前馈网络 (feed-forward network)、层归一化 (layer normalization)、dropout和残差连接 (residual connection)。为了增强表示能力,模型堆叠了多个Transformer块。最终,模型选择最后一个物品 在Transformer最后一层生成的表示 作为 。
-
4.2.4. 扩散(训练)阶段
在扩散阶段,目标是训练近似器 来重建原始的目标物品嵌入 。
-
噪声调度 (Noise Schedule) :用于控制每一步添加的噪声量。
DiffuRec使用截断线性调度 (truncated linear schedule),其形式为: 其中a, b是超参数,控制 的范围。 是一个截断阈值,论文中设置为 。如果计算出的 超过 ,则将其缩小 10 倍。这种调度旨在在扩散过程中引入一个近乎线性的急剧下降(即在中间步骤添加更多噪声),在极端情况(接近 )下变化较小,以实现更好的去噪能力。 -
扩散步骤采样 (Diffusion Step Sampling):在训练过程中,对于每个目标物品,随机采样一个扩散步骤 ,即 , ,其中 是最大扩散步数。
-
目标物品加噪 (Target Item Corruption):根据扩散模型的重参数化技巧 (reparameterization trick),带噪声的目标物品表示 可以直接从原始目标物品嵌入 (这里指的是目标物品的静态嵌入 )和高斯噪声 得到: 其中,
\bar{\alpha}_s = \prod_{k=1}^s (1-\beta_k)。这里, 实际上就是目标物品的静态嵌入 。 -
历史物品分布表示生成 (Sequential Item Distribution Representation Generation): 使用加噪后的 和随机采样的 (从 中采样)来生成历史物品的分布表示 ,如公式
\mathbf{z}_i = \mathbf{e}_i + \lambda_i \odot (\mathbf{x}_s + \mathbf{d})所示。 -
重建和优化 (Reconstruction and Optimization): 将生成的历史物品分布表示序列 输入近似器 ,得到重建的目标物品表示 。模型通过交叉熵损失函数进行优化。
完整的扩散(训练)过程如 Algorithm 2 所示。
Algorithm 2: Diffusion or Training
1: Input:
2: Historical Sequence: ;
3: Learning Epochs: ;
4: Maximum Diffusion Steps: ;
5: Schedule : Linear;
6: Hyperparameter (mean and variance): sampling;
7: Approximator: ;
8: Output:
9: Well-trained Approximator: ;
10: while do
11: s = \lfloor s ^ { \prime } \rfloor , s ^ { \prime } \sim U ( 0 , t ) ; / . / Diffusion Step Sampling
12: // Diffusion
13: / Distribution
Representation
14: ;// Reconstruction
15: parameter update: ;
16:
17: end while
4.2.5. 逆向(推理)阶段
在逆向阶段,目标是从纯高斯噪声逐步恢复出目标物品表示 。
-
初始噪声采样 (Initial Noise Sampling):从标准高斯分布中采样纯噪声 。
-
迭代去噪 (Iterative Denoising):模型迭代地执行 步去噪。在每一步 (),根据当前的带噪表示 估计出原始目标物品表示 ,然后用它来计算更少噪声的 。
- 估计 :
首先,使用当前步的 和随机采样的 (从 中采样)生成历史物品的分布表示 ,如公式
\mathbf{z}_i = \mathbf{e}_i + \lambda_i \odot (\mathbf{x}_s + \mathbf{d})所示。 然后,将这些分布表示 输入训练好的近似器 ,得到对原始目标物品表示的估计 。 - 计算 : 根据扩散模型的逆向过程公式,并应用重参数化技巧,可以计算 : 其中, 是一个标准高斯噪声。这个过程将 和 结合起来,逐步去噪,生成 。
- 估计 :
首先,使用当前步的 和随机采样的 (从 中采样)生成历史物品的分布表示 ,如公式
-
最终表示 (Final Representation):重复上述步骤直到 ,得到最终的去噪表示 。
完整的逆向(推理)过程如 Algorithm 1 所示。
Algorithm 1: Reverse or Inference 1: Input: 2: Historical Sequence: ; 3: Target item Representation ; 4: Total Reverse Steps: ; 5: Schedule : Linear; 6: Hyperparameter (mean and variance): sampling; 7: Approximator: ; 8: Output: 9: Predicted Target Item: ; 10: while do 11: Distribution Representation 12: 0 ← fθ(z1, .., Zn); // Reconstruction 13: ;// reverse 14: ;// Iteration 15: end while 16:
4.2.6. 损失函数 (Loss Function)
传统的扩散模型通常使用均方误差 (Mean Squared Error, MSE) 损失(如公式 8 所示)。然而,DiffuRec 认为 MSE 不适用于推荐任务,原因有二:
-
离散性:物品嵌入在潜在空间中是静态的,而非连续分布,
MSE在这种情况下可能不稳定。 -
相关性度量:在序列推荐中,使用内积 (inner product) 来计算两个向量之间的相关性更为普遍和有效。
因此,
DiffuRec在扩散阶段使用交叉熵损失 (Cross-Entropy Loss) 进行模型优化:
- 是由近似器重建的目标物品表示。
- 是真实的目标物品嵌入。
- 是候选物品集。
- 表示内积操作。
- 计算了预测的目标物品 与真实目标物品 之间的相关性,并通过
softmax归一化。 - 是所有用户交叉熵损失的平均值,旨在最大化真实目标物品的预测概率。
4.2.7. 舍入操作 (Rounding Operation)
在推理阶段,逆向过程最终生成一个连续的表示 。为了将其映射到离散的物品索引空间进行最终推荐,DiffuRec 采用了一个舍入函数:
Rounding操作计算最终去噪表示 与所有候选物品嵌入 之间的内积。- 选择内积最大的物品作为最终的推荐结果 。内积也用于对候选物品进行排名。
4.2.8. 不确定性讨论 (Discussion on Uncertainty)
DiffuRec 强调扩散模型在扩散和逆向过程中固有的不确定性(通过加噪和随机采样)。此外, 从高斯分布中采样也引入了随机性。研究人员认为,这种注入的不确定性作为对原始物品嵌入的小扰动,能够提高模型的鲁棒性并缓解过拟合。
为了深入分析这种扰动的影响,论文还与对抗训练 (Adversarial Training) 进行了比较。对抗训练通过向输入添加对抗性扰动来提高模型鲁棒性。其目标是解决一个最小-最大优化问题: 其中:
-
是模型的可学习参数。
-
是对抗性扰动,其范数受 限制。
-
是原始损失函数。
-
是平衡对抗正则项和主损失的权重。
由于精确求解 具有挑战性,论文采用迭代方式近似: 是第 个训练周期中的扰动, 初始化为零,然后 。 最终的对抗训练损失函数为: 这种对比旨在表明,
DiffuRec中的不确定性不仅仅是简单的噪声,而是结合了目标物品信息的辅助信号,从而在提升鲁棒性的同时,更好地捕捉用户意图。
5. 实验设置
5.1. 数据集
实验使用了四个真实世界数据集来验证 DiffuRec 的有效性,这些数据集广泛用于序列推荐任务。
-
Amazon Beauty (亚马逊美妆) 和 Amazon Toys (亚马逊玩具):亚马逊评论数据集的两个类别,包含用户-物品交互记录。
-
Movielens-1M:包含一百万条电影评分,来自 6000 名用户对 4000 部电影的评分。这是一个广泛使用的基准数据集。
-
Steam:从大型在线视频游戏平台收集,包含丰富的外部信息(如用户游玩时长、价格、类别等)。
数据预处理 (Data Preprocessing):
-
所有评论或评分被视为隐式反馈 (implicit feedback),并按时间戳排序。
-
过滤掉交互次数少于 5 次的不流行物品 (unpopular items) 和不活跃用户 (inactive users)。
-
采用留一法 (leave-one-out strategy) 进行评估:
- 序列 中,最近的交互 用于测试。
- 倒数第二个交互 用于模型验证。
- 更早的交互 用于模型训练。
-
最大序列长度设置:Movielens-1M 为 200,其他三个数据集为 50。
以下是原文 Table 1 的结果,展示了数据集的统计信息:
Dataset # Sequence # items # Actions Avg_len Sparsity Beauty 22,363 12,101 198,502 8.53 99.93% Toys 19,412 11,924 167,597 8.63 99.93% Movielens-1M 6,040 3,416 999,611 165.50 95.16% Steam 281,428 13,044 3,485,022 12.40 99.90%
为什么要选择这些数据集进行实验?它们是否能有效地验证方法的性能? 这些数据集涵盖了不同的领域(电商、电影、游戏),以及不同的规模和序列特征(平均序列长度差异大,如 Movielens-1M 的序列较长),这有助于全面验证模型在各种真实场景下的泛化能力和有效性。
5.2. 评估指标
所有模型都使用以下两个常用指标进行评估:
5.2.1. 命中率 (Hit Rate, HR@K)
概念定义:HR@K 衡量的是在推荐列表的前 K 个物品中,有多少比例的测试集目标物品被命中。它关注的是模型是否能成功推荐出用户感兴趣的物品,而不考虑其精确排名。
数学公式: 其中,"Number of hits @ K" 表示在每个测试用户的推荐列表前 K 个物品中,包含了真实目标物品的用户数量。
符号解释:
- : 命中率在 K 截断时的值。
- : 在前 K 个推荐物品中,包含真实目标物品的测试交互总数。
- : 所有的测试交互总数。
5.2.2. 归一化折损累计增益 (Normalized Discounted Cumulative Gain, NDCG@K)
概念定义:NDCG@K 不仅关注目标物品是否被命中,还考虑了其在推荐列表中的位置。排名靠前的目标物品会获得更高的分数,这使得 NDCG 能够更好地评估推荐列表的排序质量。如果目标物品不在前 K 个推荐中,其 NDCG@K 值为 0。
数学公式: 其中, 是折损累计增益 (Discounted Cumulative Gain), 是理想折损累计增益 (Ideal Discounted Cumulative Gain)。 对于二元相关性(即物品是否是目标物品), 通常取 1(如果物品在位置 是相关物品)或 0(如果不相关)。在序列推荐的下一个物品预测任务中,通常只有一个真实目标物品,所以 仅当 是真实目标物品的位置时。
符号解释:
-
: 归一化折损累计增益在 K 截断时的值。
-
: 折损累计增益在 K 截断时的值。
-
: 理想折损累计增益在 K 截断时的值。
-
: 推荐列表的截断长度。
-
: 推荐列表中物品的位置。
-
: 位于位置 的物品的相关性得分。在下一个物品预测中,如果位置 的物品是真实目标物品,则 ,否则为 0。
-
: 真实相关物品的数量(在下一个物品预测中通常为 1)。
评估设置: 论文报告了 时的实验结果。为了避免采样负样本可能导致的不一致性问题(当负样本数量较少时),模型对所有候选物品进行排名,而不仅仅是采样部分负样本。
5.3. 对比基线
DiffuRec 与三类代表性的序列推荐方法进行了比较:
-
传统序列神经网络模型 (Conventional Sequential Neural Models):
- GRU4Rec [19]:使用
GRU(Gated Recurrent Unit) 建模用户序列行为。 - Caser [44]:通过水平和垂直
CNN(Convolutional Neural Network) 捕捉用户最近子序列行为。 - SASRec [25]:使用单向
Transformer捕获物品间的隐式相关性,是序列推荐的强基线。 - BERT4Rec [42]:使用双向
Transformer,将序列推荐建模为完形填空任务,利用未来信息进行预测。
- GRU4Rec [19]:使用
-
多兴趣模型 (Multi-Interest Models):
- ComiRec [4]:结合注意力机制和动态路由来提取用户多兴趣。
- TiMiRec [48]:最新的多兴趣模型,引入目标物品作为辅助监督信号,用于兴趣分布生成。
-
VAE 和不确定性模型 (VAE and Uncertainty Models):
- SVAE [36]:结合
GRU和变分自编码器 (Variational Autoencoder, VAE) 进行下一个物品预测的开创性工作。 - ACVAE [53]:使用对抗变分贝叶斯 (Adversarial Variational Bayes, AVB) 框架,提出对抗和对比变分自编码器 (Adversarial and Contrastive VAE) 来生成高质量潜在变量表示。
- STOSA [10]:通过
Wasserstein自注意力 (Wasserstein self-attention) 改进标准自注意力机制,建模物品表示之间的内在相关性,并通过随机高斯分布注入不确定性。
- SVAE [36]:结合
5.4. 实现细节
- 优化器:Adam 优化器。
- 初始学习率:0.001。
- 参数初始化:
Transformer参数基于Xavier归一化分布进行初始化。 - 模型结构:
Transformer块数量 (block numbers):4。- 嵌入维度 (embedding dimension):128。
- 所有隐藏状态大小 (hidden state size):128。
- 多头数量 (multi-head numbers):4(未明确说明,但通常与 block numbers 或隐藏状态大小有关,这里按照
SASRec和BERT4Rec的常见设置)。
- 批处理大小 (Batch Size):1024。
- Dropout 率:
Transformer块中的dropout:0.1。- 物品嵌入的
dropout:0.3。
- 参数:从均值和方差都为 0.001 的高斯分布中采样。
- 总逆向步数 (Total Reverse Steps):32。
- 噪声调度 (Noise Schedule):截断线性调度 (truncated linear schedule)。
- 重复实验:每个方法进行 5 次实验,并报告平均结果。
- 统计显著性检验:采用
student t-test。 - 计算资源:NVIDIA GeForce RTX 3090 GPU 和 Intel Xeon CPU E5-2680 v3。
6. 实验结果与分析
6.1. 核心结果分析
以下是原文 Table 2 的结果,展示了 DiffuRec 与其他基线模型在四个数据集上的整体性能:
| Dataset | Metric | GRU4Rec | Caser | SASRec | BERT4Rec | ComiRec | TiMiRec | SVAE | ACVAE | STOSA | DiffuRec | % |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Beauty | HR@5 | 1.0112 | 1.6188 | 3.2688 | 2.1326 | 2.0495 | 1.9044 | 0.9943 | 2.4672 | 3.5457 | 5.5758* | 57.26% |
| HR@10 | 1.9370 | 2.8166 | 6.2648 | 3.7160 | 4.4545 | 3.3434 | 1.9745 | 3.8832 | 6.2048 | 7.9068* | 26.21% | |
| HR@20 | 3.8531 | 4.4048 | 8.9791 | 5.7922 | 7.6968 | 5.1674 | 3.1552 | 6.1224 | 9.5939 | 11.1098* | 15.80% | |
| NDCG@5 | 0.6084 | 0.9758 | 2.3989 | 1.3207 | 1.0503 | 1.2438 | 0.6702 | 1.6858 | 2.5554 | 4.0047* | 56.72% | |
| NDCG@10 | 0.9029 | 1.3602 | 3.2305 | 1.8291 | 1.8306 | 1.7044 | 0.9863 | 2.1389 | 3.2085 | 4.7494* | 47.02% | |
| NDCG@20 | 1.3804 | 1.7595 | 3.6563 | 2.3541 | 2.6451 | 2.1627 | 1.2867 | 2.7020 | 3.7609 | 5.5566* | 47.75% | |
| Toys | HR@5 | 1.1009 | 0.9622 | 4.5333 | 1.9260 | 2.3026 | 1.1631 | 0.9109 | 2.1897 | 4.2236 | 5.5650* | 22.76% |
| HR@10 | 1.8553 | 1.8317 | 6.5496 | 2.9312 | 4.2901 | 1.8169 | 1.3683 | 3.0749 | 6.9393 | 7.4587* | 7.48% | |
| HR@20 | 3.1827 | 2.9500 | 9.2263 | 4.5889 | 6.9357 | 2.7156 | 1.9239 | 4.4061 | 9.5096 | 9.8417* | 3.49% | |
| NDCG@5 | 0.6983 | 0.5707 | 3.0105 | 1.1630 | 1.1571 | 0.7051 | 0.5580 | 1.5604 | 3.1017 | 4.1667* | 34.34% | |
| NDCG@10 | 0.9396 | 0.8510 | 3.7533 | 1.4870 | 1.7953 | 0.9123 | 0.7063 | 1.8452 | 3.8806 | 4.7724* | 22.98% | |
| NDCG@20 | 1.2724 | 1.1293 | 4.3323 | 1.9038 | 2.4631 | 1.1374 | 0.8446 | 2.1814 | 4.3789 | 5.3684* | 22.60% | |
| Movielens-1M | HR@5 | 5.1139 | 7.1401 | 9.3812 | 13.6393 | 6.1073 | 16.2176 | 1.4869 | 12.7167 | 7.0495 | 17.9659* | 10.78% |
| HR@10 | 10.1664 | 13.3792 | 16.8941 | 20.5675 | 12.0406 | 23.7142 | 2.7189 | 19.9313 | 14.3941 | 26.2647* | 10.76% | |
| HR@20 | 18.6995 | 22.5507 | 28.318 | 29.9479 | 21.0094 | 33.2293 | 5.0326 | 28.9722 | 24.9871 | 36.7870* | 10.71% | |
| NDCG@5 | 3.0529 | 4.1550 | 5.3165 | 8.8922 | 3.5214 | 10.8796 | 0.9587 | 8.2287 | 3.7174 | 12.1150* | 11.36% | |
| NDCG@10 | 4.6754 | 6.1400 | 7.7277 | 11.1251 | 5.4076 | 13.3059 | 1.2302 | 10.5417 | 6.0771 | 14.7909* | 11.16% | |
| NDCG@20 | 6.8228 | 8.4304 | 10.5946 | 13.4763 | 7.6502 | 15.7019 | 1.8251 | 12.8210 | 8.7241 | 17.4386* | 11.06% | |
| Steam | HR@5 | 3.0124 | 3.6053 | 4.7428 | 4.7391 | 2.2872 | 6.0155 | 3.2384 | 5.5825 | 4.8546 | 6.6742* | 10.95% |
| HR@10 | 5.4257 | 6.4940 | 8.3763 | 7.9448 | 5.4358 | 9.6697 | 5.8275 | 9.2783 | 8.5870 | 10.7520* | 11.19% | |
| HR@20 | 9.2319 | 10.9633 | 13.6060 | 12.7332 | 10.3663 | 14.8884 | 7.9753 | 14.4846 | 14.1107 | 16.6507* | 11.84% | |
| NDCG@5 | 1.8293 | 2.1586 | 2.8842 | 2.9708 | 1.0965 | 3.8721 | 1.8836 | 3.5429 | 2.9220 | 4.2902* | 10.80% | |
| NDCG@10 | 2.6033 | 3.0846 | 4.0489 | 4.0002 | 2.1053 | 5.0446 | 2.6881 | 4.7290 | 4.1191 | 5.5981* | 10.97% | |
| NDCG@20 | 3.5572 | 4.2073 | 5.3630 | 5.2027 | 3.3434 | 6.3569 | 3.2323 | 6.0374 | 5.5072 | 7.0810* | 11.39% |
核心发现:
-
DiffuRec的卓越性能:DiffuRec在所有四个数据集的所有六个评估指标(HR@5, HR@10, HR@20, NDCG@5, NDCG@10, NDCG@20)上都始终优于所有基线模型。- 在
Amazon Beauty数据集上,相比最佳基线,DiffuRec在HR/NDCG上分别实现了高达 的提升。 - 在
Amazon Toys数据集上,提升高达 。 - 在
Movielens-1M数据集上,提升高达 。 - 在
Steam数据集上,提升高达 。 这一显著的性能提升表明DiffuRec能够有效整合物品多潜在方面、用户多兴趣、不确定性以及目标物品引导这四个特性。
- 在
-
传统序列模型的表现:
GRU4Rec和Caser由于长期依赖建模能力有限,表现不如其他基线。- 基于
Transformer的SASRec和BERT4Rec通常优于GRU4Rec和Caser,证实Transformer在序列建模中的高效性。
-
多兴趣模型的表现:
ComiRec和TiMiRec并非总能全面超越传统序列模型,尤其不如SASRec和BERT4Rec。ComiRec对序列表示差异关注更多,而TiMiRec引入目标物品作为辅助监督信号,在复杂和长序列数据集(如Movielens-1M和Steam)上表现更好。
-
VAE和不确定性模型的表现:-
SVAE表现最差,因为它仅使用GRU进行序列建模。 -
ACVAE通过对抗学习增强表示,在多数情况下表现尚可。 -
STOSA基于高斯分布和Wasserstein Distance建模,通过动态不确定性注入和分布表示学习,其结果证实了分布表示学习和不确定性注入对序列推荐的有效性。综合分析:
DiffuRec的优势在于其独特的扩散模型框架,能够以分布形式建模物品和用户兴趣,并巧妙地注入不确定性。这使得模型不仅能够捕获复杂的序列模式,还能适应用户兴趣的多样性和动态性,并通过目标物品引导进一步提升预测准确性。
-
6.2. 消融实验/参数分析
为了验证 DiffuRec 中各项设计选择的有效性,论文进行了消融实验。
以下是原文 Table 3 的结果,展示了消融实验的结果:
| Dataset | Ablation | HR@5 | HR@10 | HR@20 | NDCG@5 | NDCG@10 | NDCG@20 |
|---|---|---|---|---|---|---|---|
| Amazon Beauty | w GRU | 3.1773 | 4.6685 | 6.9000 | 2.2253 | 2.7075 | 3.2682 |
| w R* | 1.3036 | 2.2902 | 3.4768 | 0.7964 | 1.1130 | 1.4108 | |
| DiffuRec | 5.5758 | 7.9068 | 11.1098 | 4.0047 | 4.7494 | 5.5566 | |
| Amazon Toys | w GRU | 2.3895 | 3.4150 | 4.9407 | 1.7577 | 2.0849 | 2.4700 |
| w R* | 0.1194 | 0.4133 | 0.7480 | 0.0567 | 0.1510 | 0.2343 | |
| DiffuRec | 5.5650 | 7.4587 | 9.8417 | 4.1667 | 4.7724 | 5.3684 | |
| Movielens-1M | w GRU | 16.6016 | 24.6094 | 34.9772 | 10.9553 | 13.5348 | 16.1403 |
| W R* | 4.0690 | 6.0872 | 9.1688 | 2.7787 | 3.4297 | 4.1978 | |
| DiffuRec | 17.9659 | 26.2647 | 36.7870 | 12.1150 | 14.7909 | 17.4386 | |
| Steam | w GRU | 6.2832 | 10.1723 | 15.8169 | 4.0056 | 5.2548 | 6.6727 |
| w R* | 1.4873 | 2.5977 | 4.3086 | 0.9022 | 1.2582 | 1.6877 | |
| DiffuRec | 6.6742 | 10.7520 | 16.6507 | 4.2902 | 5.5981 | 7.0810 |
分析:
-
w GRU (Approximator 替换为
GRU):- 当
Transformer近似器替换为GRU时,DiffuRec在Movielens-1M和Steam数据集上仍表现出优越性能,但在Amazon Beauty和Amazon Toys上性能显著下降。 - 这表明,即使使用更简单的
GRU作为骨干,扩散模型的框架也能带来收益,尤其是在长序列数据集上。然而,Transformer在捕获复杂序列依赖方面的能力仍是整体高性能的关键。这与计算机视觉领域中U-Net(一个简单的编码-解码器框架)与扩散模型结合也能取得出色结果的现象类似。
- 当
-
w R* (舍入操作
Rounding Operation替换为其他变体):- 当将舍入操作(即用内积来排名)替换为原文 [12] 提出的变体(公式 20 后的公式:)时,性能大幅下降。
- 在
Amazon Beauty上,HR/NDCG至少下降 。 - 在
Amazon Toys上,HR/NDCG至少下降 。 - 在
Movielens-1M上,HR/NDCG至少下降 。 - 在
Steam上,HR/NDCG至少下降 。 - 这强烈表明,内积操作(作为多数推荐工作中的惯用相关性度量)与交叉熵损失函数更为一致,更适合于序列推荐任务。
6.2.1. 噪声调度 (Noise Schedule) 的影响
论文还研究了不同噪声调度对最终结果的影响。
该图像是一个图表,展示了DiffuRec在不同数据集(Amazon Beauty、Amazon Toys、Movielens-1M、Steam)上的推荐性能,包括HR@k和NDCG@k指标。图表中使用了不同的线型标识,包括余弦相似度(Cosine)、线性(Linear)、平方根(Sqrt)和截断线性(Truncated Linear)。
VLM 描述: 该图像是一个图表,展示了DiffuRec在不同数据集(Amazon Beauty、Amazon Toys、Movielens-1M、Steam)上的推荐性能,包括HR@k和NDCG@k指标。图表中使用了不同的线型标识,包括余弦相似度(Cosine)、线性(Linear)、平方根(Sqrt)和截断线性(Truncated Linear)。 原始论文描述: Fig. 3. Performance of DiffuRec with different schedule.
该图像是一个图表,展示了不同扩散调度下的 ar{ eta }_t值随扩散步骤的变化。图中包含线性(蓝色)、余弦(橙色)、平方根(绿色)和截断线性(红色)四种曲线,帮助理解在扩散过程中不同调度对 ar{ eta }_t 的影响。
VLM 描述: 该图像是一个图表,展示了不同扩散调度下的 ar{ eta }_t值随扩散步骤的变化。图中包含线性(蓝色)、余弦(橙色)、平方根(绿色)和截断线性(红色)四种曲线,帮助理解在扩散过程中不同调度对 ar{ eta }_t 的影响。
原始论文描述: Fig. 4. throughout diffusion in different schedule.
分析:
- 截断线性调度 (Truncated Linear Schedule):在
Amazon Beauty和Amazon Toys数据集上表现最佳。 - 曲线分析 (Figure 4):截断线性调度在扩散过程中提供了近乎线性的急剧下降,在 附近变化微妙。这种设计被认为有助于增强模型的兴趣建模能力,因为在训练过程中需要一个剧烈的腐蚀(添加更多噪声)以获得更好的去噪能力,从而在一步估计中恢复原始输入。
- 调度选择的复杂性:尽管截断线性调度在部分数据集上表现最佳,但在其他两个数据集上却表现次优。这表明,不同的调度可能会影响最终结果,但正如 [17] 所述,通常不会引起巨大的性能波动。这提示未来可能存在介于截断线性和线性调度之间,且更具普适性的最佳调度方案。
6.2.2. 超参数 的影响
参数(在公式 \mathbf{z}_i = \mathbf{e}_i + \lambda_i \odot (\mathbf{x} + \mathbf{d}) 中)控制了物品表示的区分能力。
该图像是一个图表,展示了在两个数据集(Amazon Beauty 和 Movielens-1M)上,随着参数 λ 的不同取值(0.001、0.01、0.1 和 1)对 HR@K 和 NDCG@K 的影响。图中包含了 HR@5、HR@10、HR@20 和 NDCG@5、NDCG@10、NDCG@20 的条形图。
VLM 描述: 该图像是一个图表,展示了在两个数据集(Amazon Beauty 和 Movielens-1M)上,随着参数 λ 的不同取值(0.001、0.01、0.1 和 1)对 HR@K 和 NDCG@K 的影响。图中包含了 HR@5、HR@10、HR@20 和 NDCG@5、NDCG@10、NDCG@20 的条形图。 原始论文描述: Fig. 5. Parameter sensitivity of λ.
分析:
- 小 值的优势:较小的 值(例如 0.001)通常在
Amazon Beauty和Movielens-1M数据集上带来更好的性能。 - 大 值的负面影响:当 增加到 0.1 时,
HR和NDCG急剧下降,尤其是在Movielens-1M数据集上。 - 解释:较大的 值可能向历史交互序列中添加了过多的噪声,这会破坏原始信息,阻碍模型精确理解用户兴趣的能力。因此,需要仔细调整 以在注入不确定性和保留原始信息之间取得平衡。
6.3. 与对抗训练的比较 (RQ4)
为了进一步分析扩散模型注入不确定性和多样性对推荐任务的有效性,论文将 DiffuRec 与对抗训练 (Adversarial Training) 进行了比较。
该图像是一个图表,展示了 adversarial training 和 DiffuRec 在四个数据集(Amazon Beauty、Amazon Toys、Movielens-1M 和 Steam)上的表现。图表中,横坐标为不同的指标(HR@5、HR@10、HR@20 和 NDCG@5、NDCG@10、NDCG@20),纵坐标为对应的评分,蓝色条表示 adversarial,橙色条表示 DiffuRec。
VLM 描述: 该图像是一个图表,展示了 adversarial training 和 DiffuRec 在四个数据集(Amazon Beauty、Amazon Toys、Movielens-1M 和 Steam)上的表现。图表中,横坐标为不同的指标(HR@5、HR@10、HR@20 和 NDCG@5、NDCG@10、NDCG@20),纵坐标为对应的评分,蓝色条表示 adversarial,橙色条表示 DiffuRec。 原始论文描述: Fig. 6. Performance of adversarial training and DifFuREc.
分析:
- 对抗
Transformer的提升:对抗训练的Transformer即使在模型架构相同的情况下,也比BERT4Rec取得了更好的结果。- 在
Amazon Beauty上,HR/NDCG至少提升 。 - 在
Movielens-1M上,HR/NDCG至少提升 。 - 这证实了在训练过程中注入扰动(即使是简单的对抗扰动)有助于提高模型的鲁棒性和性能。
- 在
DiffuRec的显著优越性:然而,与对抗Transformer相比,DiffuRec在所有数据集上都表现出显著的优势。- 原因分析:
DiffuRec中的不确定性注入和扰动不仅仅是简单的噪声,它还融合了来自目标物品表示的辅助信息作为监督信号,以促进模型捕获用户当前意图。这种结合了分布生成和目标物品引导的机制,使得DiffuRec能够取得更优的性能。
6.4. 不同序列长度和流行度物品上的表现 (RQ5)
论文进一步分析了 DiffuRec 在不同序列长度以及头部物品和长尾物品上的性能。
该图像是条形图,展示了两个数据集(Amazon Beauty 和 Movielens-1M)中序列长度和项目互动次数的分布情况。图左侧以蓝色表示序列长度,图右侧以橙色表示项目互动次数,反映了不同数据集中用户行为的特点。
VLM 描述: 该图像是条形图,展示了两个数据集(Amazon Beauty 和 Movielens-1M)中序列长度和项目互动次数的分布情况。图左侧以蓝色表示序列长度,图右侧以橙色表示项目互动次数,反映了不同数据集中用户行为的特点。
序列长度和物品交互次数分布分析 (Figure 7):
- Amazon Beauty:大多数序列长度小于 15,物品交互次数小于 40。
- Movielens-1M:尽管序列长度和交互次数远超
Amazon Beauty,但短序列和长尾物品仍占多数。
6.4.1. 头部物品和长尾物品的表现
该图像是一个图表,展示了在 Amazon Beauty 和 Movielens-1M 数据集上,DiffuRec 与其他方法在头部项和长尾项推荐性能的比较。图中提供了各方法在 HR@10 和 NDCG@10 指标下的表现,DiffuRec 方法的效果表现在不同类型的项中均优于其他对比方法。
VLM 描述: 该图像是一个图表,展示了在 Amazon Beauty 和 Movielens-1M 数据集上,DiffuRec 与其他方法在头部项和长尾项推荐性能的比较。图中提供了各方法在 HR@10 和 NDCG@10 指标下的表现,DiffuRec 方法的效果表现在不同类型的项中均优于其他对比方法。 原始论文描述: Fig. 8. Performance on the head and long-tail items.
分析:
- 头部物品性能优于长尾物品:在
Amazon Beauty和Movielens-1M数据集上,所有模型在头部物品上的性能都显著优于长尾物品。这是推荐系统中的常见现象,因为头部物品有更多的交互数据可供学习。 - 数据集差异:
Movielens-1M上头部物品和长尾物品的性能差距小于Amazon Beauty(前者差距小于三倍,后者大于五倍)。这可能是因为Movielens-1M的物品数量相对较少。 DiffuRec的优势:DiffuRec在大多数设置下都优于所有基线,尤其是在NDCG指标上表现出色。这表明DiffuRec能够更好地处理不同流行度的物品,即使在长尾场景下也能维持较好的性能。
6.4.2. 不同序列长度的表现
根据序列长度的百分位数,数据集被划分为短、中短、中、中长和长五组。
该图像是图表,展示了在不同序列长度下,DiffuRec与其他推荐方法(如SASRec、TimiRec、STOSA)的性能比较。横轴表示序列长度,纵轴分别为HR@10和NDCG@10,能够直观地反映各模型在Amazon Beauty和Movielens-1M数据集上的效果。
VLM 描述: 该图像是图表,展示了在不同序列长度下,DiffuRec与其他推荐方法(如SASRec、TimiRec、STOSA)的性能比较。横轴表示序列长度,纵轴分别为HR@10和NDCG@10,能够直观地反映各模型在Amazon Beauty和Movielens-1M数据集上的效果。 原始论文描述: Fig. 9. Performance on different length of sequence.
分析:
Amazon Beauty(短序列优势):DiffuRec在长序列上表现更好。对于Amazon Beauty数据集,80%的序列长度小于 10。Movielens-1M(长序列挑战):性能随着序列长度的增加而逐渐下降。对于Movielens-1M数据集,80%的序列长度超过 37。- 解释:短序列可能无法提供足够的信息来精确揭示用户当前的偏好。同时,处理非常长的序列对所有模型来说都是挑战。
DiffuRec的鲁棒性:尽管存在不同序列长度下的性能模式差异,DiffuRec在所有设置下都取得了最佳结果,表明其对序列长度具有良好的鲁棒性。
6.5. 收敛性和效率 (RQ6)
6.5.1. 收敛性 (Convergence)
论文比较了 DiffuRec 与 SASRec(一个代表性的 Transformer 基线)的收敛速度。
该图像是图表,展示了SASRec和DiffuRec在Amazon Beauty和Movielens-1M数据集上的训练损失曲线。左侧为SASRec模型,右侧为DiffuRec模型,横轴为训练轮数,纵轴为损失值。可以观察到,DiffuRec在训练过程中损失下降幅度较大,表现更优。
VLM 描述: 该图像是图表,展示了SASRec和DiffuRec在Amazon Beauty和Movielens-1M数据集上的训练损失曲线。左侧为SASRec模型,右侧为DiffuRec模型,横轴为训练轮数,纵轴为损失值。可以观察到,DiffuRec在训练过程中损失下降幅度较大,表现更优。 原始论文描述: Fig. 10. Curve of training loss on Amazon Beauty and Movielens-1M datasets
分析:
- Amazon Beauty (相似收敛速度):在
Amazon Beauty数据集上,DiffuRec和SASRec都在大约 150 个训练周期后收敛。 - Movielens-1M (
DiffuRec更快收敛):在Movielens-1M数据集上,DiffuRec大约在 100 个周期收敛,而SASRec需要大约 250 个周期。 - 解释:
Movielens-1M的平均序列长度(95.19)是Amazon Beauty(8.53)的十倍以上。SASRec可能难以高效捕获长序列中的长期依赖关系。DiffuRec通过从目标物品表示中提取用户当前兴趣作为辅助信息,加速了模型的训练收敛速度。
6.5.2. 效率 (Efficiency)
效率主要受逆向步数影响。
以下是原文 Table 4 的结果,展示了 DiffuRec 及其他基线的复杂度:
| Model | Complexity |
|---|---|
| GRU4Rec | |
| SASRec | |
| BERT4Rec | |
| ACVAE | |
| STOSA | |
| DiffuRec |
-
: 表示维度 (representation dimension)。
-
: 序列长度 (sequence length)。
时间复杂度分析 (Table 4):
-
GRU4Rec和ACVAE:由于使用GRU作为骨干,时间复杂度较低,为 。 -
SASRec、BERT4Rec和STOSA:基于Transformer,核心复杂度来自自注意力机制,为 。 -
DiffuRec:由于近似器是Transformer,并且在每一步都涉及对历史序列进行处理,复杂度为 ,其中dn来源于对每个历史物品的表示调整。
该图像是图表,展示了不同方法在扩散步骤下的时间表现。左侧的折线图比较了SASRec、BERT4Rec等方法随扩散步骤的运行时间,右侧的柱状图则展示了不同算法在特定扩散步骤下的总时间消耗,包括DiffuRec和其他对比方法。
VLM 描述: 该图像是图表,展示了不同方法在扩散步骤下的时间表现。左侧的折线图比较了SASRec、BERT4Rec等方法随扩散步骤的运行时间,右侧的柱状图则展示了不同算法在特定扩散步骤下的总时间消耗,包括DiffuRec和其他对比方法。
推理时间分析 (Figure 11 左图):
-
逆向步数的影响:当总扩散步数较小(例如 2)时,
DiffuRec的推理时间与SASRec和BERT4Rec接近,因为它们都是基于Transformer的。 -
指数增长:随着逆向步数的增加,单个样本的推理时间呈指数增长。
-
性能与时间平衡:虽然更多的逆向步数可能提高性能,但也会显著增加推理时间。论文认为适度的逆向步数(如 32 或 64)足以在表示质量和时间消耗之间取得平衡。
-
其他模型:
GRU4Rec和ACVAE由于模型结构更轻量,推理时间比基于Transformer的模型短。STOSA略长于未经修改的Transformer模型,因为它使用了Wasserstein距离。
该图像是图表,展示了在不同反向步骤下,Amazon Beauty 和 Movielens-1M 数据集的 HR @ K和 NDCG@ K指标变化。上方左侧为 Amazon Beauty 的 HR,右侧为 NDCG;下方左侧为 Movielens-1M 的 HR,右侧为 NDCG。
VLM 描述: 该图像是图表,展示了在不同反向步骤下,Amazon Beauty 和 Movielens-1M 数据集的 HR @ K 和 NDCG @ K 指标变化。上方左侧为 Amazon Beauty 的 HR,右侧为 NDCG;下方左侧为 Movielens-1M 的 HR,右侧为 NDCG。
原始论文描述: Fig. 12. Recall and NDCG at different reverse steps on Amazon Beauty and Movielens-1M datasets.
不同逆向步数下的性能 (Figure 12):
-
Amazon Beauty和Movielens-1M数据集上的HR@K和NDCG@K曲线表明,性能在逆向步数达到一定值后趋于稳定,甚至可能略有下降。这印证了选择一个“适中”的逆向步数的重要性。训练时间分析 (Figure 11 右图):
-
GRU4Rec的训练时间显著低于其他模型,因为其模型结构和大小更轻量。 -
SASRec、ACVAE、STOSA、DiffuRec和BERT4Rec的平均训练时间非常接近(在 14s 到 18s 之间)。 -
结论:
DiffuRec的训练过程不会成为模型优化的瓶颈。
6.6. 不确定性与多样性可视化 (RQ7)
6.6.1. 不确定性 (Uncertainty)
论文通过 t-SNE [46] 将重建的目标物品表示 投影到二维空间,以可视化其不确定性。
该图像是一个t-SNE图,展示了从反向阶段重构的 extbf{x}_0 表示。左侧是来自Amazon Beauty的数据,紫点表示通过100种不同高斯噪声反转的相同项,黄点表示随机序列的其他项;右侧是Movielens-1M的数据,图示相似。
VLM 描述: 该图像是一个t-SNE图,展示了从反向阶段重构的 extbf{x}_0 表示。左侧是来自Amazon Beauty的数据,紫点表示通过100种不同高斯噪声反转的相同项,黄点表示随机序列的其他项;右侧是Movielens-1M的数据,图示相似。
原始论文描述: Fig. 13. A t-SNE plot of the reconstructed representation from reverse phase. The purple points represent the same item but reversed by 100 different Gaussian noise for a specifichistorical sequence. The yellow points are the others each of which is reversed from a random sequence in Amazon Beauty and Movilens-1M datasets respectively.
分析 (Figure 13):
- 随机序列的 分布:从随机序列逆向得到的 表示在整个空间中均匀分散。
- 特定序列的 分布:对于同一个示例序列,通过 100 种不同高斯噪声逆向得到的 表示(紫色点)相对集中,但彼此之间仍存在一定的偏差。这表明
DiffuRec能够在保持语义一致性的同时,注入并捕获不确定性。 - 检索多样性:这种不确定性对于检索阶段非常有益。通过并行计算 100 个不同的 (从不同的高斯噪声开始),对于一个示例序列,在
Amazon Beauty上,前 20 名推荐中独特的物品数量达到 643 个;在Movielens-1M上达到 82 个。这说明DiffuRec能够生成多样化的检索结果。
6.6.2. 多样性 (Diversity)
为验证不确定性对最终推荐结果多样性的影响,论文随机抽取 Amazon Toys 数据集中的一个序列,并比较不同模型推荐物品的类别。
以下是原文 Table 5 的结果,展示了推荐物品的类别多样性:
| Model | Categories of Top 5 Items. | Target Item Category |
|---|---|---|
| SASRec | Kids' Electronics, Electronic Toys, Learning & Education, Toy Remote Control & Play Vehicles, Play Vehicles | Electronic Toys |
| TimiRec | Toy Remote Control & Play Vehicles, Electronic Toys, Play Vehicles, Remote & App Controlled Vehicle Parts, Play Trains & Railway Sets | Electronic Toys |
| STOSA | Learning & Education, Playsets & Vehicles, Board Games, Train Sets, Wind-up Toys Electronic Toys, Helicopter Kits, Remote & App Controlled Vehicles, | Electronic Toys |
| DiffuRec | Card Games, Electronic Software & Books | Electronic Toys |
分析 (Table 5):
SASRec和TimiRec:倾向于推荐来自相似类别的物品(例如,电子玩具、交通工具)。TimiRec尤其如此,因为它利用目标物品作为监督信号,可能导致推荐结果更偏向于与目标物品相似的类别。STOSA和DiffuRec:由于注入了不确定性,STOSA和DiffuRec能够推荐更广泛类别的物品,而不是仅仅集中在“电子玩具”上。- 结论:注入不确定性为推荐系统带来了更大的灵活性,从而产生了更多样化和更丰富的推荐结果。
7. 总结与思考
7.1. 结论总结
这篇论文解决了序列推荐中传统固定向量表示无法充分捕获物品多重潜在方面和用户多样化兴趣的问题。研究人员首次将扩散模型引入序列推荐领域,提出了 DiffuRec。该模型将物品表示为分布而非固定向量,并利用扩散模型固有的分布生成能力和不确定性注入机制来建模用户兴趣演变和物品复杂属性。在训练阶段,DiffuRec 通过逐步加噪的目标物品嵌入来引导历史物品的分布表示生成。在推理阶段,模型迭代地从高斯噪声中去噪,恢复出预测的目标物品表示,并通过一个舍入操作进行最终推荐。在四个真实世界数据集上的广泛实验表明,DiffuRec 在各项评估指标上均显著优于现有强基线,验证了其有效性和对模型各组件设计的合理性。
7.2. 局限性与未来工作
- 扩散步数与效率:论文指出,扩散模型的推理时间与逆向步数呈指数关系,虽然可以通过选择适中的步数来平衡性能和效率,但这仍然是一个需要权衡的因素。未来的工作可以探索更快的采样方法(如
DDIM或DPM-Solver),以降低推理延迟。 - 调度策略优化:消融实验表明,不同的噪声调度策略对性能有影响,且当前的最佳调度并非在所有数据集上都普适。未来可以研究更自适应或数据驱动的调度策略。
- 连续到离散的映射:当前的舍入操作虽然有效,但仍是一个启发式过程。如何更优雅、更端到端地将连续表示映射到离散物品索引,可能是一个改进方向。
- 其他推荐场景:扩散模型作为一种新的范式,尚未在其他推荐场景(如基于会话的推荐、点击率预测)中得到充分探索。
- 可解释性:扩散模型在生成过程中引入的随机性和复杂性,可能会对其推荐决策的可解释性带来挑战。未来的研究可以关注如何提升
DiffuRec的可解释性。
7.3. 个人启发与批判
7.3.1. 个人启发
- 扩散模型的潜力:这篇论文展示了扩散模型在推荐系统领域的巨大潜力。其核心优势在于能够自然地处理不确定性和生成多样化分布,这与推荐系统本身对多样性和复杂用户兴趣建模的需求高度契合。以往
VAE等生成模型在推荐中面临的挑战(如后验坍塌)或许可以通过扩散模型的新范式得到有效缓解。 - “分布”的价值:将物品和用户兴趣建模为分布而非固定向量,是理解推荐场景复杂性的一个重要进步。这使得模型能够捕捉物品的多重方面和用户兴趣的动态变化,为个性化推荐提供了更精细的描述。
- 跨领域方法迁移:论文成功地将
CV/NLP领域的先进生成模型(扩散模型)迁移到推荐系统,为其他领域的技术创新提供了灵感。在人工智能领域,打破子领域壁垒,进行跨领域的技术融合,往往能催生出意想不到的突破。 - 不确定性的积极作用:论文强调了注入不确定性对模型鲁棒性和推荐多样性的积极作用,这与传统的推荐系统追求确定性预测有所不同。这种对不确定性的拥抱,使得推荐系统能够生成更具探索性、更个性化的结果。
7.3.2. 批判性思考
- 计算成本:扩散模型的迭代去噪过程在推理阶段可能带来较高的计算成本,尤其是当需要大量逆向步数才能达到最佳性能时。虽然论文提到可以权衡步数,但如何在保证性能的同时,大幅度降低在线推理的延迟,仍是其实际应用面临的挑战。这可能需要探索更高效的采样器或模型蒸馏 (model distillation) 等技术。
- 超参数敏感性: 参数对模型性能影响显著,且噪声调度策略也非普适。这意味着
DiffuRec可能对超参数的选择较为敏感,在不同数据集或场景下需要细致的调优。 - 复杂性与可解释性:扩散模型的内部机制相对复杂,其生成过程涉及多次采样和去噪,这使得模型决策的可解释性可能不如基于注意力权重或因子分解的传统模型直观。在对可解释性有较高要求的场景中,这可能是一个劣势。
- 冷启动问题:论文主要关注已有历史交互序列的场景。对于新用户或新物品的冷启动问题,扩散模型如何利用其分布生成能力进行有效的解决,仍有待进一步探索。
- 离散物品空间的挑战:扩散模型本质上是为连续数据设计的。尽管论文通过内积进行舍入操作,但如何更自然、更端到端地将连续的潜在表示映射到离散的物品 ID,以避免信息损失或引入额外偏差,仍是一个值得深入研究的问题。
相似论文推荐
基于向量语义检索推荐的相关论文。