论文《Federated Social Recommendation with Graph Neural Network》阅读
论文《Federated Social Recommendation with Graph Neural Network》阅读
- 论文综述
- 
引言
 - 
方法论研究
 - 
问题建模过程
- 
FeSoG方案
 - 
地图设计策略
- 局部差分隐私机制
 - 基于伪物品标签法的数据处理方法
 
 - 
模型优化
 - 
模型训练
 
 - 
 - 
论文总结
 
 - 
 
论文概况
说明
论文地址: 论文地址
论文整体来看,在写作部分较为流畅自然。然而文章中存在相当数量的typo以及语法错误等问题。作为本人对联邦推荐机制的入门学习材料,在这里进行总结介绍。

Intro
作者首先概述了联邦社会化推荐系统(Federated Social Recommender System, FSRS)在实现过程中面临的技术难题、数据隐私保护问题以及系统的可扩展性限制。
- 多样性方面,在社交推荐系统中,用户间的连接模式既包含用户-用户(U-U)关系,也涵盖用户-物品(U-I)关系。
- 在个性化推荐机制中,各用户的兴趣特征通常呈现高度相关性。
 - 在联邦学习环境下进行推荐时需特别注意保护参与者的个人信息安全。
 
 
研究者构建了基于图神经网络的联邦社会化推荐(Federated Social Recommendation with Graph Neural Networks, FeSoG)系统
Methodology
问题形式化
下面介绍问题形式化及其核心概念。用户集合 \mathcal{U}= \left\{ u_1, u_2, \ldots, u_N\right\} 和物品集合 \mathcal{T}= \left\{t_1, t_2, \ldots, t_M \right\} 之间构建了一个评分矩阵 \mathbf{R} \in \mathbb{R}^{N \times M} ,其中包含了用户与物品之间的交互数据;同时定义了用户间的相似性关系作为邻接矩阵 \mathbf{S} \in\{0,1\}^{N \times N} 用于捕捉用户的社交联系或行为相似性模式。
针对联邦推荐场景,
- 客户端(Client):每个用户 n 即一个客户端 c_n,客户端包含的数据包括 用户对物品的评分 (\mathbf{R}_{n\cdot})和他与其他用户之间的之间相邻关系(\mathbf{S}_{n\cdot})。
 - 服务器(Center Server):中心用户不包含用户的邻接数据和用户的交互矩阵。中心服务器包含的数据包含每个client上的参数,每个用户、每个物品的embedding。通过 server 和 client 之间每轮的数据更新,根据 client 上传给 server 的梯度数据进行更新, 更新完成之后再将最新的参数都更新给每个客户端。
 - 联邦社会化推荐(FSRS):对于 任意客户端 c_n,根据
当前用户 n 的交互向量 \mathbf{r}_{n} = \{{r}_{n1}, {r}_{n2}, \cdots, {r}_{nk}\} 及 一阶邻居向量 \mathbf{s}_{n} = \{{s}_{n1}, {s}_{n2}, \cdots, {s}_{np}\} (n, p \in \{1, 2, \cdots, N\},k \in \{1, 2, \cdots, M\}),FSRS 在 不知道每个client 的 raw data 的基础上预测用户的交互数据。 
问题形式化:
该方法的具体定义如下:
用户 n 的行为序列 \mathcal{T}^{(n)}=\left\{t_1^{(n)}, t_2^{(n)}, \ldots, t_k^{(n)}\right\} 和其社交关系集合 \mathcal{U}^{(n)}=\left\{u_1^{(n)}, u_2^{(n)}, \ldots, u_p^{(n)}\right\} 是FSRS预测模型中用于推断用户n在其未访问的行为集中可能感兴趣的物品及其潜在交互强度的关键输入参数。预测模型旨在推断用户n在其未访问的行为集中可能感兴趣的物品及其潜在交互强度。
通过对 每个客户 c_n 构建本地的局部异构图 \mathcal{G}_{n}(包含U-U 及 U-I),
给出形式化定义:对于每个客户n及其对应的局部异构图集合\left\{\mathcal{G}_{n} \mid _{n=1}^{N}\right\},在无需访问本地图中 raw data 的情况下,FSRS旨在预测连边(u_n, t^*)的数值。
FeSoG

本地图设计
这部分旨在构建一个基于GAT的网络模型,并通过该网络在异构图上进行嵌入传播。这些嵌入数据是由中心服务器下载的,在本地环境中仅存储用户的交互物品以及直接好友数据。因此,在实际应用中我们仅限于传播一阶邻接信息以减少计算开销与资源消耗。此处略过技术细节,并将关键公式放置在此处以便后续参考。
该模型采用了带有漏掉ReLU激活函数的形式,并对输入向量进行了特定的线性变换以生成输出向量o_{n p}。\tag{1}
\alpha_{np} = \text{Softmax运算在维度p上作用于} o_{np} = \frac{\exp(o_{np})}{\sum\limits_{i=1}^{P} \exp(o_{ni})}.
计算 v_{n,k} 的值为 Leaky ReLU 激活函数作用于 \mathbf{b} 转置与 \mathbf{W}_2 相乘后分别作用于 \mathbf{e}_{u_n} 和 \mathbf{e}_{i_k} 并将其结果合并后的向量上,并将结果标记为公式 (3) 中所示的形式
β_{n,k}由以下公式表示:β_{n,k}=Softmax(v_{n,k})=指数函数exp(v_{n,i})在i从1到K求和后的比值
\mathbf{h}_u^{(n)}=\sum_{p=1}^p \alpha_{n \rho} \mathbf{W}_h \mathbf{e}_{u_p}.\tag{5}
\mathbf{h}_t^{(n)}=\sum_{k=1}^K \beta_{n k} \mathbf{W}_h \mathbf{e}_k.\tag{6}
\mathbf{h}_t^{(n)} 表示为交互图的嵌入表示;\mathbf{h}_t^{(u)} 则表示为社交图的嵌入表示;具体而言,在此过程中,我们通过注意力权重对两者的嵌入表示进行加权求和运算以生成最终结果。
\begin{aligned} & \gamma_u=\frac{\exp \left(\mathrm{c}^{\top}\left[\mathbf{h}_u^{(n)} \| \mathbb{v}_u\right]\right)}{\exp \left(\mathrm{c}^{\top}\left[\mathbf{h}_u^{(n)} \| \mathbf{v}_u\right]\right)+\exp \left(\mathbf{c}^{\top}\left[\mathbf{h}_t^{(n)} \| \mathbb{v}_t\right]\right)+\exp \left(\mathrm{c}^{\top}\left[\mathbf{h}_s^{(n)}\|\|_{v_s}\right]\right)}, \\ & \gamma_t=\frac{\exp \left(\mathbf{c}^{\top}\left[\mathbf{h}_t^{(n)} \| \mathbf{v}_t\right]\right)}{\exp \left(\mathbf{c}^{\top}\left[\mathbf{h}_u^{(n)} \| \mathbf{v}_u\right]\right)+\exp \left(\mathbf{c}^{\top}\left[\mathbf{h}_t^{(n)} \| \mathbb{v}_t\right]\right)+\exp \left(\mathbf{c}^{\top}\left[\mathbf{h}_s^{(n)} \| \mathbf{v}_s\right]\right)}, \\ & \gamma_s=\frac{\exp \left(\mathbf{c}^{\top}\left[\mathbf{h}_s^{(n)} \| \mathbf{v}_s\right]\right)}{\exp \left(c^{\top}\left[\mathbf{h}_u^{(n)} \| v_u\right]\right)+\exp \left(c^{\top}\left[\mathbf{h}_t^{(n)} \| \mathbb{v}_t\right]\right)+\exp \left(c^{\top}\left[\mathbf{h}_s^{(n)} \| \mathbf{v}_s\right]\right)}.\end{aligned} \tag{7}
\mathbf{e}_{n}^*=\gamma_s \mathbf{e}_{u_n}+\gamma_u \mathbf{h}_u^{(n)}+\gamma_t \mathbf{h}_t^{(n)} \tag{8}
通过内积计算 交互分数:
\hat{\mathbf{R}}_{n t}={\mathbf{e}_n^*}^\top \mathbf{e}_t.\tag{9}
本地化训练损失函数其表达式为:
\mathcal{L}_u=\sqrt{\frac{\sum_{t \in \mathcal{T}^{(u)}}\left(\mathbf{R}_{u t}-\hat{\mathbf{R}}_{u t}\right)^2}{\left|\mathcal{T}^{(u)}\right|}}\tag{10}

在上述内容中,在本地完成了所有计算流程,在中心服务器获取了embedding和模型参数,并在本地执行了GAT运算,并通过反向传播算法实现了参数优化(如公式(10)所示)。
本地差分隐私
在上述基础上,在客户端与服务器间的 数据传输 过程中涉及 梯度计算 和 参数更新 ,为了防止用户数据泄露(基于FedMF技术原理,在连续两次的数据传输被获取后可推断出用户的评分信息),在此过程中我们引入了本地差分隐私机制(Local Differential Privacy, LDP)。
具体而言,在梯度向量的基础上执行剪切操作(其范围被限定于 \delta 区域内),并在此基础上叠加服从拉普拉斯噪声分布的扰动项(其强度由参数 \lambda 控制)。
在动态噪声的具体实现过程中,在具体操作中为实现动态噪声的特性,在具体操作中采用的形式包括:
其中定义为\mathrm{g}^{(n)} = \{\mathbf{g}_t^{(n)}, \mathbf{g}_m^{(n)}, \mathbf{g}_u^{(n)}\}并包含三个向量\{\mathbf{g}_t^{(n)}, \mathbf{g}_m^{(n)}, \mathbf g_u^ {( n ) }$$}$它们分别对应于时间维度空间维度以及用户维度的变化率并且与损失函数关于参数Θ的偏导数相等
Pseudo-Item Labeling
为了更好地保护用户的隐私(零梯度向量对应用户的非互动物品),作者引入了 q 个假标签 \tilde{\mathcal{T}}^{(n)}=\left\{ \tilde{t}_1^{(n)}, \tilde{t}_2^{(n)}, \ldots, \tilde{t}_q^{(n)} \right\}。在预测阶段,通过四舍五入的方式将 sampling 得到的 pseudo items 用于训练模型,并增强了数据传输的安全性。具体而言:$$
\tilde{\mathcal{L}}u=\sqrt{\frac{\sum{t \in \mathcal{T}(u) \cup \tilde{\mathcal{T}}^{(u)}}\left(\mathbf{R}{u t}-\hat{\mathbf{R}}{u t} \right)2}{\left|\mathcal{T}{(u)}\right|}}, \tag{13}
其中,在数学表达式中, $\hat{\mathbf{R}}_{u t} \in \mathbb{R}$ 代表标签值的取值范围; 而 $\mathbf{R}_{u t} \in \mathbb{N}$ 则代表预测结果对应的自然数. ### 模型优化 作者将梯度数据分为三部分,模型梯度$\overline{\mathbf{g}}_m$,物品 embedding 梯度 $\overline{\mathbf{g}}_t$,及用户 embedding 梯度 $\overline{\mathbf{g}}_u$,通过对应client 对应rating数量大小 进行 加权求期望的操作完成 中心服务器 平均梯度 的计算,并根据梯度完成模型参数的更新。更新之后将参数下载到 各个 client ,将参数进行更新。具体如下:
\begin{aligned} &\overline{\mathbf{g}}m =\frac{\sum{n \in \mathcal{N}}\left|\mathcal{R}_n\right| \cdot \tilde{\mathbf{g}}m^{(n)}}{\sum{n \in \mathcal{N}}\left|\mathcal{R}_n\right|}, \ &\overline{\mathbf{g}}t =\frac{\sum{n \in \mathcal{N}}\left|\mathcal{R}_n\right| \cdot \tilde{\mathbf{g}}t^{(n)}}{\sum{n \in \mathcal{N}}\left|\mathcal{R}_n^t\right|}, \ &\overline{\mathbf{g}}u =\frac{\sum{n \in \mathcal{N}} \left|\mathcal{R}_n\right| \cdot \tilde{\mathbf{g}}u^{(n)} }{\sum{n \in \mathcal{N}} \left| \mathcal{R}_n^t \right|}, \end{aligned} \tag{14}
### 模型训练 上文所述的所有步骤采用了某种算法实现了全面呈现这一做法对把握整个流程具有重要意义具体而言  ## 论文总结 上述内容就是关于 FeSoG 模型的所有内容,模型写作非常流畅。值得推荐!
