Candicepan

Results 36 comments of Candicepan

> 设计思路: 基于https://keras.io/examples/generative/vae/#variational-autoencoder为例改写成隐语的联邦学习教程,体现隐语对 keras example的兼容,充分展现隐语的易用性和兼容性 数据分割:按照参与方均匀分割 模型: Variational AutoEncoder 数据集:MNIST digits 联邦策略:充分对齐隐语现有API,只要隐语支持的,理论上都可以支持 感谢认领~可以在下方的子 issue 中再次认领,将把该任务的该种实现方式 assign 给你哈~ https://github.com/secretflow/secretflow/issues/958

> 设计思路: 基于 https://github.com/pytorch/examples/tree/main/vae 为例改写成隐语的联邦学习教程,体现隐语对 PyTorch example的兼容,充分展现隐语的易用性和兼容性 数据分割:按照参与方均匀分割 模型: Variational AutoEncoder 数据集:MNIST digits 联邦策略:充分对齐隐语现有API,只要隐语支持的,理论上都可以支持 感谢认领,该实现方式的实现可以直接关联这个 issue 哈~

> ZacheryZ Give it to me 感谢认领~请在此处回复您的设计思路哈~

> ### 设计思路: > * i.在聚合前调整本地梯度数据对称轴使其都变为正数,并扩大数倍使其变成整数。 > * ii.使用PHE库中的paillier算法对本地梯度进行批量加密,每批数量与密钥长度挂钩——此步预计落在fl_base.py中。 > * iii.重写aggregator中的加法算法,使其变为同态加——落地在aggregator中。 > * iv.在fl_model中增加判断,如果全局权重为paillier对象,则调用解密算法再进一步分发至各个worker——此步预计落在fl_model中。 感谢认领,辛苦在子 issue 中再次认领任务,我们将会把任务的该种实现方式 assign 给你哈~ https://github.com/secretflow/secretflow/issues/892

> Give it to me 感谢认领~请在此处回复您的设计思路哈~

> bloom0705 Give it to me 感谢认领~请在此处回复您的设计思路哈~

> imogenxingren Give it to me 感谢认领~请在此处回复您的设计思路哈~

> ### 设计思路 > * 用户上传本地梯度给中心服务器之前,将绝对值最大(top-5%)和最小(bottom-75%)的参数裁剪掉。裁剪最大参数可以防止隐私泄露,裁剪最小参数可以大幅度降低通信开销。 > * 梯度裁剪会导致全局模型精度下降,我们进一步剔除误差反馈机制,裁剪之前将上一轮未上传的梯度参数累加到当前梯度参与模型更新。 > * 更多理论和实验方面的论证见我们组的论文https://openreview.net/pdf?id=Fjw_7Hv-mwB 感谢认领,辛苦在子 issue 中再次认领任务,我们将会把任务的该种实现方式 assign 给你哈~ https://github.com/secretflow/secretflow/issues/893

> > liuzhihaozhengshuai Give it to me > > 设计思路: > > ``` > i.参与方在本地生成梯度后,在梯度的部分位置(离输出层最近的全连接层)添加mask,并对mask使用paillier同态加密 > ii.参与方将带有mask的梯度以及被加密的mask发送至服务器进行聚合 > iii.服务器对梯度使用加法进行聚合,对密文状态下的mask使用同态加法进行聚合,最后将聚合结果返回至参与方 > iv.参与方解密mask的聚合值,最终得到无噪声的聚合结果 > ``` 感谢认领,辛苦在子 issue 中再次认领任务,我们将会把任务的该种实现方式 assign 给你哈~ https://github.com/secretflow/secretflow/issues/895

> 1.考虑dgl梯度泄露攻击的防范 2.在梯度聚合前对上传的local真实梯度进行剪枝,减少梯度泄露可能性 3.采用优化机制在加大梯度攻击难度的同时尽可能减少精度损失 感谢认领,辛苦在子 issue 中再次认领任务,我们将会把任务的该种实现方式 assign 给你哈~https://github.com/secretflow/secretflow/issues/896