基于联邦学习的模型生成方法及装置制造方法及图纸

技术编号:27306884 阅读:23 留言:0更新日期:2021-02-10 09:21
本申请公开了一种基于联邦学习的模型生成方法及装置。方法的一具体实施方式包括:对获取的多方用户的数据,进行数据拼接,得到拼接数据;根据多方用户的预设合作协议,对多方用户进行资源配置;以拼接数据作为输入数据,对基于所配置的资源构建的多方用户的初始模型进行分布式训练,得到目标模型。本实施方式通过多方用户的数据训练得到优质的目标模型,提高了目标模型的准确性;而且,多方用户不必交换数据,保证了多方用户的数据安全。保证了多方用户的数据安全。保证了多方用户的数据安全。

【技术实现步骤摘要】
基于联邦学习的模型生成方法及装置


[0001]本申请实施例涉及计算机
,具体涉及一种基于联邦学习的模型生成方法及装置。

技术介绍

[0002]目前,人工智能技术大行其道,从人脸识别、阿尔法狗到无人驾驶以及早已被普遍应用的精准营销,人工智能技术已经进入人们生活的方方面面。一般,实现人工智能的相应模型需要依赖大量优质数据训练得到。而现实生活中,除了少数巨头公司能够拥有大量优质数据,绝大多数企业都存在数据量少、信息孤岛的问题,以至于无法获得输出结果精确的人工智能模型。

技术实现思路

[0003]本申请实施例提出了一种基于联邦学习的模型生成方法及装置。
[0004]第一方面,本申请实施例提供了一种基于联邦学习的模型生成方法,包括:对获取的多方用户的数据,进行数据拼接,得到拼接数据;根据多方用户的预设合作协议,对多方用户进行资源配置;以拼接数据作为输入数据,对基于所配置的资源构建的多方用户的初始模型进行分布式训练,得到目标模型。
[0005]在一些实施例中,上述对获取的多方用户的数据,进行数据拼接,得到拼接数据,包括:对获取的多方用户的原始数据进行数据转换,得到转换数据;在对转换数据的拼接过程中进行数据加密,得到加密后的拼接数据。
[0006]在一些实施例中,上述对获取的多方用户的数据,进行数据拼接,得到拼接数据,包括:针对获取的多方用户中的每一方用户的每一份数据,获取该数据的身份信息;将多方用户的数据中身份信息相同的数据进行数据拼接,得到拼接数据。
[0007]在一些实施例中,上述将多方用户的数据中身份信息相同的数据进行数据拼接,得到拼接数据,包括:通过设置的多个数据拼接模块将多方用户的数据中身份信息相同的数据进行数据拼接,得到拼接数据;和/或在包括预设数量的数据的滑动时间窗口中,将多方用户的数据中身份信息相同的数据进行数据拼接,得到拼接数据。
[0008]在一些实施例中,上述根据多方用户的预设合作协议,对多方用户进行资源配置,包括:根据多方用户的预设合作协议,确定资源配置信息,其中,资源配置信息包括多方用户中的每一方用户进行模型训练的多个容器;根据资源配置信息,对多方用户进行资源配置。
[0009]在一些实施例中,上述以拼接数据作为输入数据,对基于所配置的资源构建的多方用户的初始模型进行分布式训练,得到目标模型,包括:将多方用户中的一方用户的多个容器中部署的多个训练器与多方用户中的其他方用户的多个容器中部署的多个训练器进行配对,得到多个训练器组,其中,训练器组与初始模型一一对应,对于同一训练器组中的每个训练器,该训练器用于以同一拼接数据中属于该训练器所属方用户的部分数据为输入
数据,对与该训练器对应的初始模型进行训练;通过多个训练器组,进行多方用户的多个初始模型的分布式训练,得到目标模型。
[0010]在一些实施例中,上述方法还包括:在分布式训练过程中,响应于同一训练器组中的多个训练器配对失败,进行重新配对。
[0011]在一些实施例中,上述方法还包括:在分布式训练过程中,通过数据包在多方用户之间进行信息交互。
[0012]在一些实施例中,上述在分布式训练过程中,通过数据包在多方用户之间进行信息交互,包括:在分布式训练过程中,响应于接收到多方用户中的数据接收方的回应数据包,确定多方用户中的数据发送方完成基于发送数据包的信息交互,其中,回应数据包的身份信息所表征的数值与发送数据包的身份信息所表征的数值之差为预设数值。
[0013]在一些实施例中,上述在分布式训练过程中,响应于接收到多方用户中的数据接收方的回应数据包,确定多方用户中的数据发送方完成基于发送数据包的信息交互,包括:在分布式训练过程中,响应于接收到多方用户中的数据接收方的回应数据包,确定多方用户中的数据发送方完成基于一次性发送的多个发送数据包的信息交互,其中,一次性发送的多个发送数据包的身份信息所表征的数值为连续数值,回应数据包的身份信息所表征的数值与收到的连续数值中最大的数值之差为预设数值。
[0014]在一些实施例中,上述在分布式训练过程中,通过数据包在多方用户之间进行信息交互,还包括:在分布式训练过程中,响应于未接收到多方用户中的数据接收方的回应数据包,重新向多方用户中的数据接收方发送发送数据包。
[0015]在一些实施例中,上述通过多个训练器组,进行多方用户的多个初始模型的分布式训练,得到目标模型,包括:针对于所述多个训练器组中的每个训练器组,响应于确定该训练器组中的、对应于多方用户中的一方用户的训练器预先获取到输入数据,通过数据包与该训练器组中的、对应于多方用户的中的其他用户的训练器进行信息交互,以同步该训练器组中的多个训练器在模型训练过程中的输入数据;通过所述多个训练器组,以预先获取的输入数据作为输入数据,对多方用户的多个初始模型进行分布式训练,得到目标模型。
[0016]在一些实施例中,上述通过所述多个训练器组,以预先获取的输入数据作为输入数据,对多方用户的多个初始模型进行分布式训练,得到目标模型,包括:通过所述多个训练器组,以预先获取的输入数据作为输入数据,对多方用户的多个初始模型进行分布式训练,在分布式训练过程中,通过参数服务器对多方用户的多个初始模型进行参数更新,得到目标模型。
[0017]第二方面,本申请提供了一种基于联邦学习的模型生成装置,包括:拼接单元,被配置成对获取的多方用户的数据,进行数据拼接,得到拼接数据;配置单元,被配置成根据多方用户的预设合作协议,对多方用户进行资源配置;训练单元,被配置成以拼接数据作为输入数据,对基于所配置的资源构建的多方用户的初始模型进行分布式训练,得到目标模型。
[0018]在一些实施例中,拼接单元进一步被配置成:对获取的多方用户的原始数据进行数据转换,得到转换数据;在对转换数据的拼接过程中进行数据加密,得到加密后的拼接数据。
[0019]在一些实施例中,拼接单元进一步被配置成:针对获取的多方用户中的每一方用
户的每一份数据,获取该数据的身份信息;将多方用户的数据中身份信息相同的数据进行数据拼接,得到拼接数据。
[0020]在一些实施例中,拼接单元进一步被配置成:通过设置的多个数据拼接模块将多方用户的数据中身份信息相同的数据进行数据拼接,得到拼接数据;和/或在包括预设数量的数据的滑动时间窗口中,将多方用户的数据中身份信息相同的数据进行数据拼接,得到拼接数据。
[0021]在一些实施例中,配置单元进一步被配置成:根据多方用户的预设合作协议,确定资源配置信息,其中,资源配置信息包括多方用户中的每一方用户进行模型训练的多个容器;根据资源配置信息,对多方用户进行资源配置。
[0022]在一些实施例中,训练单元进一步被配置成:将多方用户中的一方用户的多个容器中部署的多个训练器与多方用户中的其他方用户的多个容器中部署的多个训练器进行配对,得到多个训练器组,其中,训练器组与初始模型一一对应,对于同一训练器组中的每个训练器,该训练器用于以同一拼接数据中属于该训练器所属本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于联邦学习的模型生成方法,包括:对获取的多方用户的数据,进行数据拼接,得到拼接数据;根据所述多方用户的预设合作协议,对所述多方用户进行资源配置;以所述拼接数据作为输入数据,对基于所配置的资源构建的所述多方用户的初始模型进行分布式训练,得到目标模型。2.根据权利要求1所述的方法,其中,所述对获取的多方用户的数据,进行数据拼接,得到拼接数据,包括:对获取的所述多方用户的原始数据进行数据转换,得到转换数据;在对所述转换数据的拼接过程中进行数据加密,得到加密后的所述拼接数据。3.根据权利要求1所述的方法,其中,所述对获取的多方用户的数据,进行数据拼接,得到拼接数据,包括:针对获取的所述多方用户中的每一方用户的每一份数据,获取该数据的身份信息;将所述多方用户的数据中身份信息相同的数据进行数据拼接,得到所述拼接数据。4.根据权利要求3所述的方法,其中,所述将所述多方用户的数据中身份信息相同的数据进行数据拼接,得到所述拼接数据,包括:通过设置的多个数据拼接模块将所述多方用户的数据中身份信息相同的数据进行数据拼接,得到所述拼接数据;和/或在包括预设数量的数据的滑动时间窗口中,将所述多方用户的数据中身份信息相同的数据进行数据拼接,得到所述拼接数据。5.根据权利要求1所述的方法,所述根据所述多方用户的预设合作协议,对所述多方用户进行资源配置,包括:根据所述多方用户的预设合作协议,确定资源配置信息,其中,所述资源配置信息包括所述多方用户中的每一方用户进行模型训练的多个容器;根据所述资源配置信息,对所述多方用户进行资源配置。6.根据权利要求5所述的方法,所述以所述拼接数据作为输入数据,对基于所配置的资源构建的所述多方用户的初始模型进行分布式训练,得到目标模型,包括:将所述多方用户中的一方用户的多个容器中部署的多个训练器与所述多方用户中的其他方用户的多个容器中部署的多个训练器进行配对,得到多个训练器组,其中,训练器组与初始模型一一对应,对于同一训练器组中的每个训练器,该训练器用于以同一拼接数据中属于该训练器所属方用户的部分数据为输入数据,对与该训练器对应的初始模型进行训练;通过多个训练器组,进行所述多方用户的多个初始模型的分布式训练,得到所述目标模型。7.根据权利要求6所述的方法,其中,所述方法还包括:在分布式训练过程中,响应于同一训练器组中的多个训练器配对失败,进行重新配对。8.根据权利要求1所述的方法,其中,所述方法还包括:在分布式训练过程中,通过数据包在所述多方用户之间进行信息交互。9.根据权利要求8所述的方法,其中,所述在分布式训练过程中,通过数据包在所述多方用户之间进行信息交互,包括:
在所述分布式训练过程中,响应于接收到所述多方用户中的数据接收方的回应数据包,确定所述多方用户中的数据发送方完成基于发送数据包的信息交互,其中,所述回应数据包的身份信息所表征的数值与所述发送数据包的身份信息所表征的数值之差为预设数值。10.根据权利要求9所述的方法,其中,所述在所述分布式训练过程中,响应于接收到所述多方用户中的数据接收方的回应数据包,确定所述多方用户中的数据发送方完成基于发送数据包的信息交互,包括:在所述分布式训练过程中,响应于接收到所述多方用户中的数据接收方的回应数据包,确定所述多方用户中的数据发送方完成基于一次性发送的多个发送数据包的信息交互,其中,所述一次性发送的多个发送数据包的身份信息所表征的数值为连续数值,所述回应数据包的身份信息所表征的数值与收到的所述连续数值中最大的数值之差为预设数值。11.根据权利要求9或10所述的方法,其中,所述在分布式训练过程中,通过数据包在所述多方用户之间进行信息交互,还包括:在所述分布式训练过程中,响应于未接收到所述多方用户中的数据接收方的回应数据包,重新向所述多方用户中的数据接收方发送所述发送数据包。12.根据权利要求6所述的方法,其中,所述通过多个训练器组,进行所述多方用户的多个初始模型的分布式训练,得到所述目标模型,包括:针对于所述多个训练器组中的每个训练器组,响应于确定该训练器组中的、对应于所述多方用户中的一方用户的训练器预先获取到输入数据,通过数据包与该训练器组中的、对应于所述多方用户的中的其他用户的训练器进行信息交互,以同步该训练器组中的多个训练器在模型训练过程中的输入数据;通过所述多个训练器组,以预先获取的输入数据作为输入数据,对所述多方用户的多个初始模型进行分布式训练,得到所述目标模型。13.根据权利要求12所述的方法,其中,所述通过所述多个训练器组,以预先获取的输入数据作为输入数据,对所述多方用户的多个初始模型进行分布式训练,得到所述目标模型,包括:通过所述多个训练器组,以预先获取的输入数据作为输入数据,对所述多方用户的多个初始模型进行分布式训练,在所述分布式训练过程中,通过参...

【专利技术属性】
技术研发人员:杜宝坤魏艳伟牛文杰黄薇贺京健王建领贺旭刘嵩张波支荣李开荣戴移胜
申请(专利权)人:北京沃东天骏信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1