在联邦学习中训练全局和本地模型

Training the global and local model in federated learning

在学习联邦学习的过程中,我的脑海中浮现出一些需要澄清的问题。

  1. 我们首先定义了客户,每个客户将被分成训练和测试集。训练数据用于训练本地模型。那么,测试数据有什么用呢?它们用于测试全局模型吗?或测试每个本地模型?
  2. 在训练全局模型时,我们首先计算每个局部模型的结果权重,然后将其发送给全局模型。在对本地客户端建模时,在发送到全局模型之前是否对模型本身进行了有效性检查,还是无论如何都发送了,然后由全局模型更新。

有论文解释这些点吗?

  1. 测试数据用于检查您的模型准确性。这对本地模型和全局模型都有用。但是,由于联邦学习的objective是为了构建一个唯一的全局模型,所以我会使用带有全局模型的测试数据。然而,有一些方法在“融合”到全局模型之前,使用局部模型相对于测试集的准确性来为局部模型赋予权重。这有时被称为加权 FedAvG(联合平均)
  2. 在“受控”联邦学习场景中,没有理由在发送给主模型之前检查每个本地模型。但是,在实际情况下,应该考虑很多关于安全性的注意事项,因此您可能需要比简单的“有效性检查”更强大的东西