System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及联邦学习,具体而言,涉及一种不同数据块的动态联邦学习算法的评估方法及系统。
技术介绍
1、联邦学习算法里会采用各种密码学算法,比如同态加密或秘密分享,以保证数据和计算的安全性。不同的密码学算法有各自的优势和劣势。
2、当前的联邦学习算法是每个数据块固定采用一种密码学算法,计算过程中不会变化,比如固定采用同态加密算法,或固定采用秘密分享算法,其无法保证数据安全性的同时兼顾计算效率。
3、针对现有技术中联邦学习算法是每个数据块固定采用一种密码学算法,其无法保证数据安全性的同时兼顾计算效率的问题,目前尚未提出有效的解决方案。
技术实现思路
1、本专利技术实施例中提供一种不同数据块的动态联邦学习算法的评估方法及系统,以解决现有技术中联邦学习算法是每个数据块固定采用一种密码学算法,其无法保证数据安全性的同时兼顾计算效率的问题。
2、为达到上述目的,一方面,本专利技术提供了一种不同数据块的动态联邦学习算法的评估方法,该方法包括:s1、获取原始数据,并将所述原始数据拆分输入联邦学习模型的多个数据块中,根据每个数据块的密码学算法顺次进行每个数据块的数据块变量计算;s2、当前数据块完成计算后,根据数据块变量判断当前数据块是否满足条件;当不满足时,下一个数据块采用初始密码学算法,并根据当前数据块的数据块变量计算下一个数据块的数据块变量;当满足时,进入步骤s3;s3、计算密码学算法的选择条件,并根据所述密码学算法的选择条件选择第二密码学算法或第三密码学算
3、可选的,所述根据数据块变量判断当前数据块是否满足条件,包括:当相邻两次或多次数据块变量的绝对值小于或等于第一预设阈值时,判定当前数据块满足条件;当相邻两次或多次数据块变量的绝对值大于所述第一预设阈值时,判定当前数据块不满足条件。
4、可选的,所述根据迭代变量判断当前次迭代的收敛情况,包括:当相邻两次或多次迭代变量的绝对值小于或等于第二预设阈值时,判定当前次迭代为收敛;当相邻两次或多次迭代变量的绝对值大于所述第二预设阈值时,判定当前次迭代为不收敛。
5、可选的,所述数据块变量包括:权重、梯度;相邻两次迭代变量的绝对值为相邻两次迭代中最后一个数据块的数据块变量的绝对值。
6、可选的,所述根据所述密码学算法的选择条件选择第二密码学算法或第三密码学算法,包括:当所述密码学算法的选择条件为样本个数时,若样本个数大于或等于样本个数预设阈值时,采用第二密码学算法,否则选择第三密码学算法;当所述密码学算法的选择条件为特征个数时,若特征个数大于或等于特征个数预设阈值时,采用第二密码学算法,否则选择第三密码学算法;当所述密码学算法的选择条件为遍历次数时,若遍历次数大于特征个数的一半时,采用第二或第三密码学算法。
7、另一方面,本专利技术提供了一种基于不同数据块的动态联邦学习算法的评估系统,该系统包括:拆分单元,用于获取原始数据,并将所述原始数据拆分输入联邦学习模型的多个数据块中,根据每个数据块的密码学算法顺次进行每个数据块的数据块变量计算;第一判断单元,用于当前数据块完成计算后,根据数据块变量判断当前数据块是否满足条件;当不满足时,下一个数据块采用初始密码学算法,并根据当前数据块的数据块变量计算下一个数据块的数据块变量;当满足时,进入选择单元;选择单元,用于计算密码学算法的选择条件,并根据所述密码学算法的选择条件选择第二密码学算法或第三密码学算法;下一个数据块采用所述第二密码学算法或第三密码学算法,并根据当前数据块的数据块变量计算下一个数据块的数据块变量;替换单元,用于将下一个数据块作为当前数据块,返回第一判断单元;直至遍历完最后一个数据块,完成当前次迭代;第二判断单元,用于根据迭代变量判断当前次迭代的收敛情况;当不收敛时,返回拆分单元,进行下一次迭代;当收敛时,停止迭代,输出目标评估结果。
8、可选的,所述第一判断单元还用于:当相邻两次或多次数据块变量的绝对值小于或等于第一预设阈值时,判定当前数据块满足条件;当相邻两次或多次数据块变量的绝对值大于所述第一预设阈值时,判定当前数据块不满足条件。
9、可选的,所述第二判断单元还用于:当相邻两次或多次迭代变量的绝对值小于或等于第二预设阈值时,判定当前次迭代为收敛;当相邻两次或多次迭代变量的绝对值大于所述第二预设阈值时,判定当前次迭代为不收敛。
10、可选的,所述数据块变量包括:权重、梯度;相邻两次迭代变量的绝对值为相邻两次迭代中最后一个数据块的数据块变量的绝对值。
11、可选的,所述选择单元还用于:当所述密码学算法的选择条件为样本个数时,若样本个数大于或等于样本个数预设阈值时,采用第二密码学算法,否则选择第三密码学算法;当所述密码学算法的选择条件为特征个数时,若特征个数大于或等于特征个数预设阈值时,采用第二密码学算法,否则选择第三密码学算法;当所述密码学算法的选择条件为遍历次数时,若遍历次数大于特征个数的一半时,采用第二或第三密码学算法。
12、本专利技术的有益效果:
13、本专利技术提供了一种基于不同数据块的动态联邦学习算法的评估方法及系统,其中,该方法包括:s1、获取原始数据,并将所述原始数据拆分输入联邦学习模型的多个数据块中,根据每个数据块的密码学算法顺次进行每个数据块的数据块变量计算;s2、当前数据块完成计算后,根据数据块变量判断当前数据块是否满足条件;当不满足时,下一个数据块采用初始密码学算法,并根据当前数据块的数据块变量计算下一个数据块的数据块变量;当满足时,进入步骤s3;s3、计算密码学算法的选择条件,并根据所述密码学算法的选择条件选择第二密码学算法或第三密码学算法;下一个数据块采用所述第二密码学算法或第三密码学算法,并根据当前数据块的数据块变量计算下一个数据块的数据块变量;s4、将下一个数据块作为当前数据块,返回s2;直至遍历完最后一个数据块,完成当前次迭代;s5、根据迭代变量判断当前次迭代的收敛情况;当不收敛时,返回s1,进行下一次迭代;当收敛时,停止迭代,输出目标评估结果。该方法在联邦学习的计算过程中,不同的数据块根据密码学算法的选择条件动态的选择最优的密码学算法,在保证数据安全性的同时兼顾计算效率,实现最优的联邦学习算法。
本文档来自技高网...【技术保护点】
1.一种基于不同数据块的动态联邦学习算法的评估方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述根据数据块变量判断当前数据块是否满足条件,包括:
3.根据权利要求1所述的方法,其特征在于,所述根据迭代变量判断当前次迭代的收敛情况,包括:
4.根据权利要求3所述的方法,其特征在于:
5.根据权利要求1所述的方法,其特征在于,所述根据所述密码学算法的选择条件选择第二密码学算法或第三密码学算法,包括:
6.一种基于不同数据块的动态联邦学习算法的评估系统,其特征在于,包括:
7.根据权利要求6所述的系统,其特征在于,所述第一判断单元还用于:
8.根据权利要求6所述的系统,其特征在于,所述第二判断单元还用于:
9.根据权利要求8所述的系统,其特征在于:
10.根据权利要求6所述的系统,其特征在于,所述选择单元还用于:
【技术特征摘要】
1.一种基于不同数据块的动态联邦学习算法的评估方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述根据数据块变量判断当前数据块是否满足条件,包括:
3.根据权利要求1所述的方法,其特征在于,所述根据迭代变量判断当前次迭代的收敛情况,包括:
4.根据权利要求3所述的方法,其特征在于:
5.根据权利要求1所述的方法,其特征在于,所述根据所述密码学算法的选择条...
【专利技术属性】
技术研发人员:赵骁飞,兰春嘉,
申请(专利权)人:上海零数众合信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。