聚合算子
聚合算子应根据聚合策略、加密方式进行定制。常见的联邦学习聚合算子定制方法是以随机数为基础,结合多方安全计算协议进行变化。
激活函数
激活函数应包括但不限于:
a) 传统机器学习的激活函数,如 sigmoid、softmax、tanh、softsign 等;
b) 联邦学习的联合激活函数,如基于半同态加密的泰勒展开 sigmoid、基于秘密共享的 ReLU等。
正则化处理器
正则化处理器应包括但不限于:
a) 传统机器学习的正则化处理器,如 L1、L2 等;
b) 联邦学习的联合正则化处理器,如基于半同态加密的泰勒展开 L1、基于半同态加密的泰勒展开L2 等。
代价函数
代价函数应包括但不限于:
a) 传统机器学习的代价函数,如交叉熵(Cross Entropy)、均方误差(Mean Squared Error)、平均绝对误差(Mean Absolute Error)等;
b) 联邦学习的联合代价函数,如基于半同态加密的二分类交叉熵等。
优化方法
优化方法应包括但不限于:
a) 传统机器学习的优化方法,如随机梯度下降(SGD)、RMSProp、AdaGrad、Adam 等;
b) 联邦学习的联合优化方法。
梯度处理器
梯度处理器应包括但不限于:
a) 传统机器学习的梯度处理器;
b) 联邦学习的联合梯度处理器。
多方安全计算算子
多方安全计算算子的基本原则包括:
a) 参与方的加密 / 脱敏组件使用其他参与方、协调方支持的算法对数据进行处理,并移除与原数据有关的信息;
b) 协调方负责加密、解密和密钥管理,并将结果传输至相关参与方。
多方安全计算算子的实现方式包括:
a) 同态加密(Homomorphic Encryption);
b) 秘密共享(Secret Sharing);
c) 遗忘传输(Oblivious Transfer);
d) 混淆电路(Garbled Circuit);
e) RSA 加密算法,密钥为 1024bit 或以上;
f) 可信执行环境(Trusted Execution Environment,TEE)。
常见多方安全计算算子包括:
a) 四则运算算子;
b) 大小比较算子;
c) 逻辑与 / 或 / 非算子;
d) 向量计算算子。