Hierarchical Personalized Federated Learning for User Modeling阅读笔记

动机

本文是2021年WWW上发表的一篇论文。现有的联邦学习方法大多是针对一致的客户端设计的,但是现实情况是不同客户端通常存储不同的数据,具体来说有以下问题:1.统计异构性,不同客户端的数据不总是独立同分布的,这将会导致个性化的客户端。2.隐私异构性,用户数据隐私级别不同,有些是可以公开的,有些必须保护。3.模型异构性,客户端使用本地数据训练出的模型是异构的。在本文中作者提出HPFL模型(Hierarchical Personalized Federated Learning)用于在联邦学习中为不一致的客户端建模。

算法

整体框架图如下

客户端设计

客户端主要负责两部分,上传训练好的本地用户模型和根据全局模型更新个性化用户模型。客户端的用户模型是一个名为GUM的模型(后续会介绍GUM),GUM包含公开的组件和私有组件。
在上传阶段,公开的组件直接上传至服务器,因为它不会泄露用户隐私,对于私有组件,客户端上传一些草稿,这些草稿是对用户或项目的粗略估计,可以采用聚类的簇的中心。
在更新阶段,客户端根据全局模型更新本地模型,采用局部测试精度作为动态权重。在公开组件,对于客户端i在第t轮的局部属性知识向量为\(c^t_{k,i}\),全局知识向量为\(c^{t,g}_k\),精度为\(Acc^t_{k,i}\),更新公式为

对于私有组件,客户端i根据与全局私有组件表示的距离加权更新客户端的表示,更新公式如下

服务器端设计

服务器主要负责聚合客户端上传的本地模型,因为用户模型是异构的,因此我们需要设计一种新的算法分别聚合公开组件和私有组件。
全局的公开组件更新如下

如果x>p,则\(\delta(x,p)=1\),否则\(\delta(x,p)=0\)
全局的私有组件来源于各个客户端的草稿,并且服务器对这些草稿再次聚类,新的集群中心作为服务器私有组件。

用户模型设计(GUM)

GUM框架如下,GUM的目标是建模用户的隐特征。

(u,v,g)作为GUM的输入,我们可以通过用户id和物品id获得用户embedding(\(Emb_u\))和物品embedding(\(Emb_v\)),\(Emb_u\)\(Emb_v\)属于私有组件。属性id被转换为multi-hot向量。之后,我们通过三个映射矩阵,将属性上的分布融合到多维向量表示中。最终得到用户与物品的表示

我们使用用户与物品之间的距离表示用户对物品的反应

对于不同的任务,我们将使用它在用户建模中执行不同的预测任务作为目标。我们使用一个N×1的投影矩阵将\(P_{uv}\)映射到一个连续的值,表示为

用户的因特征表示为

HPFL工作流如下

结果

作者在两个数据集进行实验,所提出的用户模型GUM和HPFL框架均超越所有基线模型。

总结

本文是针对异构客户端所提出的一种联邦学习框架,该框架将用户数据分为可以公开的和私有的,在不泄露用户隐私的情况下尽可能地使用信息,取得了较为优异的结果。该框架可以应用在许多适合私人定制的领域,例如推荐系统、教育学习等等。

posted @ 2022-04-20 23:04  South1999  阅读(306)  评论(0编辑  收藏  举报