赞
踩
FedFast: Going Beyond Average for Faster Training of Federated Recommender Systems
传统的联邦学习框架中,模型是随机从服务器中选择用户来进行训练和更新而且在服务器端也只是通过简单的聚合操作来对合成全局模型。 这样会导致模型的参与者要投入大量精力进行训练并要与服务器端进行多次通信,而且这种框架所训练的推荐系统的准确度不高。【Faster】【Accurate】
提出了新的用户采样机制(ActvSAMP)和模型更新机制(ActvAGG):先根据客户端的数据分布以及计算能力进行聚类,将客户端分成不同的簇,然后在每个簇内选取代表作为选中的待更新的客户端。之后进行模型更新,将更新的代表客户端的参数直接同步到同一簇内的其他客户端中。
本文选择训练GMF模型,其中的参数为 w \ w w,将参数分为三部分:非embedding部分、item_embedding和user_embedding部分,算法一共训练t轮,每轮使用ActvSAMP选择一个代表用户集 S t \ S_t St, S t \ S_t St中有来自p个用户簇的m个代表用户。
涉及的参数:
w
0
\ w_0
w0表示初始化的权重,
w
t
\ w_t
wt表示第t轮训练后的参数集
P
0
\ P_0
P0表示初始的客户群分布,初始的客户群分布是根据用户的嵌入做聚类算法实现的
p
\ p
p表示将客户分为p个簇
S
t
\ S_t
St 第t轮训练中参与训练的代表客户集
m
\ m
m抽取出的客户数量
过程:
涉及的参数:
K
\ K
K 所有的用户集合
m
\ m
m抽取出的客户数量
G
\mathcal{G}
G 已经分好组的客户端集群(分组的过程不在这个组件)
S
S
S 组件生成的代表客户集
过程:
涉及的参数:
S
\ S
S :第参与训练的代表客户端集合
w
0
\ w_0
w0 :上一轮的模型参数
n
k
\ n_k
nk: 客户端k上的样本数量
p
\ p
p : 将客户分为p个簇
返回值:
w
\ w
w :聚合后的模型参数
G
\mathcal{G}
G :已经分好组的客户端集群
过程:
整个过程分为四部分:非嵌入参数的更新、服务器端item_embedding的更新、代表客户端user-embedding的更新、从属客户端user-embedding参数的更新
在实验中作者选择GMF模型作为实验模型并与BPR模型做对比。
理论上来说集中训练的GMF模型的效果将是使用FL改造的模型的效果的上限。
本文使用的数据集是:ML1M、ML00K、Yelp、TripAdvisor
数据集处理规则:
本文使用GMF作为FedFast的基础模型,并且使用GMF的FedAVG和集中训练的GMF与BRP作为比较,实验结果如下:
简单说明一下HR代表命中率也就是推荐准确率,NDCG代表归一化折扣累积增益,NDCG是一种常用的基于排名的衡量标准,它通过对数贴现排名来强调排名靠前的重要性。二者的数值越大代表模型效果越好。
有趣的是使用FedFast改造的GMF模型有的实验的效果比集中训练的GMF模型的效果差别不大甚至有的数据集前者的效果更好,同时与BPR模型的差距不大。并且使用FedFast的模型的效果比FedAvg的效果也要好得多。
FedFast的另一项收益就是可以降低模型迭代轮次这样就能减少通信资源的消耗。
尽管FedAvg和FedFast都从相同的的HR@10开始,但是,FedFast能够以很快的速度收敛。
从上面实验结果我们可以很明显的看到,在相同迭代轮次的情况下FedFast的效果明显高于FedAvg并且在达到相同准确率的情况下FedFast能节省大量的迭代轮次。
作者为了探索超参数p(簇的个数)对模型的影响,当p取{5,10,20,40,60,100}对实验影响
在ML100K数据集中,FedFast的单个组件对FedAvg的贡献是一种改进。FedAvg和FedAvg + ActvSAMP几乎一模一样。ActvAGG似乎对提高推荐质量和加速性能有更大的影响。
FedAvg结合ActvSAMP,对FedAvg几乎没有什么影响。这是因为尽管ActvSAMP小心地选择好的候选对象来训练模型,但是FedAvg的默认聚集策略丢弃了ActvSAMP引入的性能的最潜在增益。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。