1. 选择数据集

FedCure 使用了 4 个图像分类数据集:

2. 选择模型

3. 对比算法

①那个客户端分联盟时对比

②联盟选择方式对比
Greedy;
Fair;
FedG;
FedFair;
FedCure。

4. 评价指标

①准确率(Accuracy)
衡量最终模型识别图片的正确程度。例如,MNIST 准确率为 96%,表示约 96% 的手写数字被正确识别。这个指标反映模型效果。
②Jensen-Shannon 散度(JS Divergence)
用来衡量不同客户端联盟之间的数据分布差异。JS 值越小,说明各联盟的数据越接近,非 IID 程度越低。这个指标主要用于评价 FedCure 的联盟构建效果。
③训练时延(Training Latency)
表示完成一轮训练需要多长时间,包括本地训练、边缘聚合和模型上传等过程。时延越低,说明训练效率越高。
④时延变异系数(COV)
用来衡量每轮训练时延是否稳定。COV 越小,说明不同轮次之间的训练时间波动越小,系统更加稳定。
⑤虚拟队列长度(Virtual Queue Length)
用来衡量某个联盟等待参与训练的程度。队列越长,说明该联盟被忽略的时间越久。通过观察队列长度,可以判断 FedCure 是否实现了长期参与平衡。
⑥收敛速度
观察模型达到较高准确率或稳定状态所需要的训练轮数。收敛越快,说明训练效率越高。
⑦Cohen’s d 效应量
用来判断不同方法之间的准确率差异是否明显。它不是主要性能指标,而是用于说明 FedCure 与其他方法之间的差异是否具有实际意义。

5. 实验(图)

5.1 图1解释

上层:边缘服务器与去服务器
下层:客户端与边缘服务器

橙色公式

右边第二个白色方框

Scheduling Rule II for SC:用来确定第 t 轮到底选择哪个联盟参加训练。
Resource Allocation Rule F for RC:用来确定被选中的客户端应该使用多少 CPU 资源来训练?

5.2 图2解释

x轴是客户端联盟的编号1,2,3,4,5
y轴是各个联盟中不同标签数据的分布密度(纵轴上的数字 0 到 9 可以理解为手写数字类别)。
a,b,c图是客户端分组状态,a是刚开始时的,b是客户端切换过程中的,c是最终分组情况。
d图是连接性的切换js值变化,abc是从中取的3个状态!

5.3 图3解释

x轴都是联邦训练轮次
y轴都是分类准确率
abcd分别表示使用的4个数据集
然后是对比方法

  • K-Means:用 K-Means 方法给客户端分组;
  • Mean-Shift:用 Mean-Shift 方法给客户端分组;
  • JS=0.69:客户端联盟之间的数据差异较大;
  • JS=0.45:数据差异有所降低;
  • JS=0.0:各联盟的数据分布基本一致。

5.4 图4解释

左边那张图表示5种联盟选择方案训练时延波动大小比较!

右边那张图是“虚拟队列长度”图

图片b的主要作用是证明cure能不让联盟长时间被忽略!

6. 实验(表)

6.1 表1解释

与图4对应,图4描述的是时间,表1描述的是准确率,可以看出,在4个数据集上,作者的方法还是非常不错了。
表格最后一行是 Cohen’s d,用于衡量 FedCure 和其他最佳方法之间的实际差异大小。

最下面那行的计算方式

常见标准