当前位置: 首页 > article >正文

论文阅读《Co-clustering for Federated Recommender System》

论文概况

本文是2024 WWW的一篇联邦推荐论文,提出了一个基于特定类别物品相似度来进行聚类的联邦推荐框架。

Introduction

  • 分析了经典聚类技术KMeans在联邦推荐设置中的不足,提出了一种新的共聚类联邦推荐机制CoFedRec,该机制在每个通信回合中根据特定的物品类别对用户进行分组,并生成包含邻居协作信息的智能组模型。我们提出的范例适用于不同的主干。

  • 在局部训练阶段引入监督对比项,对用户个人物品网络中的全局物品关系进行编码。这确保了我们提出的CoFedRec不仅有效地利用用户协作信息,而且还无缝地将全球见解集成到本地培训过程中。

Method

在这里插入图片描述

A.用户分区的协同聚类

在每一轮交流中,我们专注于单个项目类别,并根据用户对该特定类别的相似或不相似程度将用户分为两个不同的组。在每一轮𝑡中,服务器都需要为一个核心客户端𝑐∈𝑈和一个项目类别𝑘提供服务,具体来说,就是查找客户端的邻居𝑐。为了实现这一点,服务器首先对参与者客户端上传的所有项目网络执行全局聚合,然后生成M个项目种类(聚类),详细说明哪些项目属于哪些类别。然后,我们计算核心客户和所有其他参与者在其项目网络的选定项目类别上的相似度。
s u = ∑ i ∈ M k V c , i ⋅ V u , i ∣ V c , i ∣ ⋅ ∣ V u , i ∣ , u ∈ P s_{u}=\sum_{i \in M_{k}} \frac{V_{c, i} \cdot V_{u, i}}{\left|V_{c, i}\right| \cdot\left|V_{u, i}\right|}, u \in P su=iMkVc,iVu,iVc,iVu,i,uP

为了将所有用户分为相似与不相似两类,我们寻找相似度得分中的肘部点来做分界线
L ( x ) = s 1 ′ + x ( s ∣ P ∣ ′ − s 1 ′ ) \mathbf{L}(x)=s_{1'}+x(s_{|P|'}-s_{1'}) L(x)=s1+x(sPs1)
对于相似性分数中的每个点𝑠𝑢,我们计算其到直线L(x)的正交距离
x u = h u ⋅ ( s ∣ P ∣ ′ − s 1 ′ ) ∣ s ∣ P ∣ ′ − s 1 ′ ∣ 2 x_{u}=\frac{h_{u}\cdot(s_{|P|'}-s_{1'})}{|s_{|P|'}-s_{1'}|^{2}} xu=sPs12hu(sPs1)
d u = ∣ h u − x u ( s ∣ P ∣ ′ − s 1 ′ ) ∣ d_u=|h_u-x_u(s_{|P|'}-s_{1'})| du=huxu(sPs1)
取到直线L(x)的距离𝑑𝑒最大的点𝑒作为弯头点。
{ u ∈ D s , i f d u ≥ d e , u ∈ D d i s , i f d u < d e , \begin{cases}u\in D_s,&\mathrm{if} d_u\geq d_e,\\u\in D_{dis},&\mathrm{if} d_u<d_e,\end{cases} {uDs,uDdis,ifdude,ifdu<de,
组形成后,进行组聚合,在相似组内传递协作信息:
V s ← 1 ∣ D s ∣ ∑ u ∈ D s V u V_s\leftarrow\frac1{|D_s|}\sum_{u\in D_s}V_u VsDs1uDsVu

B.本地监督对比学习

在前一节中,我们提出了共同聚类,以发现客户机之间的共同偏好,然后将它们聚到相似组和不相似组中,在聚合阶段排除后者。然而,这可能会导致忽略一些不同的信息,因为全局洞察力可能部分来自被忽略的不同客户。
首先,我们在服务器用kmeans对所有物品进行聚类,
ϕ c ( V g , i ; C ) = ∥ V g , i − C ∥ F 2 \phi_c(V_{g,i};\mathbb{C})=\|V_{g,i}-C\|_F^2 ϕc(Vg,i;C)=Vg,iCF2
在客户端,我们将服务器中属于同类的物品拉近,不同类物品远离,以此作对比学习
L s u p = − ∑ i ∈ I log ⁡ { 1 ∣ Z ( i ) ∣ ∑ z ∈ Z ( i ) ( exp ⁡ ( V u , i ⋅ V u , z / τ ) ∑ a ∈ I ∖ { i } exp ⁡ ( V u , i ⋅ V u , a / τ ) ) } L_{sup}=-\sum_{i\in I}\log\left\{\frac{1}{|Z(i)|}\sum_{z\in Z(i)}\left(\frac{\exp(V_{u,i}\cdot V_{u,z}/\tau)}{\sum_{a\in I\setminus\{i\}}\exp(V_{u,i}\cdot V_{u,a}/\tau)}\right)\right\} Lsup=iIlog Z(i)1zZ(i)(aI{i}exp(Vu,iVu,a/τ)exp(Vu,iVu,z/τ))

C.结果

在这里插入图片描述

总结

第二个创新点凑数用的,典中典利用服务器的聚类信息给客户端作对比学习,重点在于提出以往聚类的不足以及新型聚类方法。


http://www.kler.cn/news/323162.html

相关文章:

  • Transformers 引擎,vLLM 引擎,Llama.cpp 引擎,SGLang 引擎,MLX 引擎
  • 每日OJ_牛客_OR59字符串中找出连续最长的数字串_双指针_C++_Java
  • 新茶饮卷出海,本土化成胜败关键
  • 牛肉高脂猫粮,福派斯猫粮新选择?乳鸽猫粮
  • zookeeper 服务搭建(单机)
  • 远程访问软路由
  • [半导体检测-8]:KLA Surfscan 系统设备组成
  • 深度学习----------------------语言模型
  • yolov10安装体验
  • ICM20948 DMP代码详解(48)
  • C# 字符串(String)的应用说明一
  • 机器学习入门
  • 单通道串口服务器
  • 【华为HCIP实战课程一】OSPF相关基础介绍及基础配置,网络工程师必修
  • 华为认证HCIA篇--网络通信基础
  • 3.5k star 一款开源简单好用的前端TAG标签组建库
  • 2024年最新C# ASP.NET+Vue斯诺克球馆购票系统,快速部署,抢占市场先机,优化球馆服务
  • vue-baidu-map的基本使用
  • SSM框架VUE电影售票管理系统开发mysql数据库redis设计java编程计算机网页源码maven项目
  • 2024/9/28 英语每日一段
  • git基础 -- 在 Git 中查找文件
  • 一批点中,找出能找出多少对可以组成的矩形
  • 基于SSM的图书管理管理系统的设计与实现 (含源码+sql+视频导入教程)
  • 深入浅出MySQL事务处理:从基础概念到ACID特性及并发控制
  • ARM基础架构-文档导读系列
  • Nuxt.js提供了多种内置的性能优化策略
  • 在 CentOS 8 服务器上运行 Selenium 代码
  • Camera Raw:打开图像
  • UE5 C++: 插件编写04 | 增加和删改前缀
  • 蓝桥杯【物联网】零基础到国奖之路:十二. TIM