创建联邦实例
登录联邦首页后,可先按照界面上的操作指引进行操作,也可直接按如下步骤创建联邦实例。
- 单击“创建联邦实例”,如图1 联邦实例创建界面所示。
- 在实例创建界面填写相应信息,如图2 参数配置界面所示,参数配置说明,如表1 参数配置所示。
表1 参数配置 区域
参数名称
参数说明
基本信息
实例名称
联邦实例的名称,也是联邦实例的标识之一,不同实例通过实例ID区分;
只能以字母(A~Z a~z)开头,由字母、数字(0~9)、下划线(_)、中划线(-)组成,不能以下划线和中划线结尾。
联邦类型
联邦实例类型,当前仅支持“横向联邦”。
描述
联邦实例的描述信息,一般用于描述实例的创建或使用场景。
是否公开
联邦实例是否公开给所有用户 ,默认为否。
基础模型配置
联邦汇聚算法类型
支持的汇聚算法类型及说明如下:
模型评估指标
选择基础算法使用的模型评估指标:
- 准确率
- 精确率
- 召回率
- F1 Score
- F2 Score
一般选择“准确率”,表示所创建合作模型的准确程度。
边缘节点运行环境
选择基础算法使用的运行环境:
- TensorFlow Lite
- PyTorch
- Keras
本地导入
从用户本地导入模型包。
用户在“模型包路径”中打开本地基础模型包路径,导入模型包。
模型包要求说明:
- 包文件必须是单个ZIP格式的压缩文件,包文件名只含字母、数字、中划线、下划线和英文圆括号。
- 包文件应不超过100M。
- 压缩文件内二级目录下应包含metadata.json,并在metadata.json中正确填写模型包的元数据信息。
模型包路径
“基础模型配置”选择“本地导入”时,展示此参数,用于从本地选择待上传的基础模型包。
从NAIE平台中导入
从NAIE训练平台的训练项目中选择基础模型包。
系统会自动从NAIE训练平台中导入已有的联邦学习训练项目,包括项目名称、模型包、描述、创建人、创建时间等信息。系统支持通过项目名称快速检索项目,也可以通过“操作”相应列进入训练平台查看该项目的详细信息。
如果当前列表找不到合适的项目,用户可以单击“NAIE平台”链接跳转至NAIE训练平台,在NAIE训练平台创建一个联邦学习训练项目,并在该项目下完成模型训练任务训练及训练结果打包。
客户端策略
全部
“客户端策略”选择“全部”,则所有在线边缘节点同时参与训练,建议10个以内。
注册边缘节点数阈值
“客户端策略”选择“全部”时,需要设置此参数,表示中心节点允许注册的最大边缘节点数。
指定数量
“客户端策略”选择“指定数量”,则需选定需要同时训练边缘数量,该策略适用于大量边缘节点场景。
随机挑选策略
“客户端策略”选择“指定数量”时,展示此参数。
随机挑选策略支持的选项及说明:
默认为“误差减少策略”。
每轮训练参与的边缘节点数
“客户端策略”选择“指定数量”时,展示此参数。手动输入每轮参与联邦的边缘节点数。
随机选择的客户端比例
“客户端策略”选择“指定数量”且“随机挑选策略”选择“误差减少策略”时,展示此参数。
误差减少策略下,该参数设置比例部分按随机准则挑选,剩下的部分按误差减少准则挑选。
注册边缘节点数阈值
“客户端策略”选择“指定数量”时,展示此参数。表示中心节点允许注册的最大边缘节点数。
默认为10000。
高级选项-联邦算法配置
通用算法
启用安全隐私算法
选用安全隐私算法:
- 否
- 多方计算
- RSA多方计算
- DP-RSA安全隐私算法
默认为“否”。
启用压缩算法
是指通过放弃部分模型改变量极小的参数传递,减少网络流量。
选用安全隐私算法:
- 否
- 随机选参
- 服务端参数冻结
默认为“否”。
高级算法
启用自适应聚合算法
默认为“否”。
是指神经网络中最后一层网络参数不参与联邦汇聚。
启用梯度分叉算法
默认为“否”。
当启用梯度分叉法,则会动态调整边缘模型迭代次数,学习效率更高。
持续学习算法
默认为“否”。
当启用了持续学习算法,表示边缘损失函数中增加了惩罚项,记录重要网络参数,克服多轮联邦任务出现的网络遗忘。边缘侧需包含Fisher信息计算过程,并生成ewc.h5文件。
启用FedProx
默认为“否”。
启用FedProx时,边缘损失函数中需增加近端项惩罚,限制边缘模型远离初始全局模型,避免边缘模型发散。
超参配置
边缘模型学习率
边缘模型参数更新学习率。默认为“0.01”。
此值设置过大易欠拟合,过小易出现过拟合的情形。
边缘模型迭代次数
每轮训练边缘节点内迭代次数,值应不小于1的整数。
每轮迭代次数越多想对训练效果越好;但过大的值也会导致训练时间过长,无意义。
最小边缘节点数
一轮联邦学习迭代任务中参与迭代的边缘节点数目设置值,通常不小于2的整数值。
在实际应用中相当于参与本轮联邦的用户数。
此值的设置需要与实际注册的边缘节点数一致。
中心模型汇聚轮次阈值
默认值为“100”。
联邦学习任务总共执行的迭代步长数目,即每次在中心节点汇聚的迭代次数。
中心模型评估间隔
评估中心模型精度的迭代轮数间隔设置值。
中心模型学习率
默认为“1”。
中心模型参数更新学习率设置值。
中心模型改变量阈值
模型收敛判定指标。
模型改变量小于设置值后停止联邦学习迭代过程。
学习率衰减系数
默认为1,表示不改变学习率。
达到衰减步长,学习率=学习率*衰减系数。
学习率衰减步长
表示汇聚轮次。
在“学习率衰减系数”非设定为1时有意义。
每次本地训练所选取的样本数
每次本地训练所选取的样本数
自定义参数
自定义参数配置,配置方法为:
单击“自定义参数”区域,弹出“自定义参数”配置框,单击
新增自定义参数,配置“参数类型”、“参数名”及“参数值”。
- 设置完成,单击“确认”即完成实例创建。
- 在主界面查看创建的实例信息,如图3所示。
创建完成后,可在主界面查看创建的实例信息,包括实例名称,ID为唯一标识(边缘注册时使用),版本号0.0.1(首次创建联邦实例,版本号为0.0.1),联邦类型及状态。其中版本默认为0.0.1,后续也可在此基础上创建其它版本号的实例;初始创建的实例均为“草稿”状态。
