一种模型联合训练的方法和系统技术方案

技术编号:30832918 阅读:23 留言:0更新日期:2021-11-18 12:51
本说明书实施例公开了一种模型联合训练的方法及系统。所述方法包括:多个联合训练的参与终端分别基于所述终端自身持有的私有数据联合进行模型训练,多个联合训练的参与终端分别使用基于梯度的优化算法生成各自的梯度;所述多个参与终端分别将所述各自的梯度发送给服务器;所述服务器从多个所述梯度中选取可信任梯度,并且根据选取的所述可信任梯度更新所述联合训练模型的参数;所述样本数据为文本数据、语音数据或者图形数据。语音数据或者图形数据。语音数据或者图形数据。

【技术实现步骤摘要】
一种模型联合训练的方法和系统
分案说明
[0001]本申请是针对2020年04月23日提交的中国申请202010326265.6提出的分案。


[0002]本说明书涉及机器学习领域,特别涉及一种模型联合训练的方法和系统。

技术介绍

[0003]多方联合建模,即多个参与方在保护各自私有数据的基础上,共同建立一个机器学习模型。但在这个场景下,多个参与方中的一方或者多方可能会为了自己的利益,对训练数据下毒,使得最终训练得到的模型有偏,例如:模型会对于某些样本做出错误的判断,从而下毒的参与方可以从中获益。
[0004]因此期待一种模型联合训练的方法和系统,在多方联合建模的场景下,可以抵御多个参与方中的一方或者多方对训练数据下毒。

技术实现思路

[0005]本说明书实施例之一提供一种模型联合训练的方法,所述方法包括:
[0006]多个联合训练的参与终端分别基于所述终端自身持有的样本数据进行模型联合训练,多个联合训练的参与终端分别使用基于梯度的优化算法生成各自的梯度;所述多个参与终端分别将所述各自的梯度发送给服务器;所述服务器从多个所述梯度中选取可信任梯度,并且根据选取的所述可信任梯度更新所述联合训练模型的参数;所述样本数据为文本数据、语音数据或者图形数据。
[0007]本说明书实施例之一提供一种模型联合训练的系统,所述系统包括:
[0008]梯度生成模块,用于使得多个联合训练的参与终端分别基于所述终端自身持有的样本数据进行模型联合训练,多个联合训练的参与终端分别使用基于梯度的优化算法生成各自的梯度;梯度发送模块,用于使得所述多个参与终端分别将所述各自的梯度发送给服务器;参数更新模块,用于使得所述服务器从多个所述梯度中选取可信任梯度,并且根据选取的所述可信任梯度更新所述联合训练模型的参数;所述样本数据为文本数据、语音数据或者图形数据。
[0009]本说明书实施例之一提供一种模型联合训练的装置,所述装置包括:
[0010]至少一个处理器以及至少一个存储器;所述至少一个存储器用于存储计算机指令;所述至少一个处理器用于执行所述计算机指令中的至少部分指令以实现模型联合训练的方法。
[0011]本说明书实施例之一提供一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,所述计算机执行指令中的至少部分指令以实现模型联合训练的方法。
附图说明
[0012]本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
[0013]图1是根据本说明书一些实施例所示的模型联合训练的系统的模块图;
[0014]图2是根据本说明书一些实施例所示的模型联合训练的方法的示例性流程图;
[0015]图3是根据本说明书一些实施例所示的模型联合训练的应用场景图;以及
[0016]图4是根据本说明书一些实施例所示的根据梯度更新模型的参数的示意图。
具体实施方式
[0017]为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
[0018]应当理解,本文使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
[0019]如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
[0020]本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
[0021]图1是根据本说明书一些实施例所示的模型联合训练的系统的模块图。
[0022]如图1所示,该模型联合训练的系统可以包括生成模块110、发送模块120、更新模块130。
[0023]生成模块110可以用于使得多个联合训练的参与终端分别基于所述终端自身持有的样本数据进行模型联合训练,多个联合训练的参与终端分别使用基于梯度的优化算法生成各自的梯度。关于多个联合训练的参与终端分别基于所述终端自身持有的样本数据进行模型联合训练,多个联合训练的参与终端分别使用基于梯度的优化算法生成各自的梯度的详细描述可以参见图2,在此不再赘述。
[0024]发送模块120可以用于使得多个参与终端分别将梯度发送给服务器。关于多个参与终端分别将梯度发送给服务器的详细描述可以参见图2,在此不再赘述。
[0025]更新模块130可以用于使得所述服务器从多个所述梯度中选取可信任梯度,并且根据选取的所述可信任梯度更新所述联合训练模型的参数。关于所述服务器从多个所述梯度中选取可信任梯度,并且根据选取的所述可信任梯度更新所述联合训练模型的参数的详
细描述可以参见图2,在此不再赘述。
[0026]应当理解,图1所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD

ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
[0027]需要注意的是,以上对于模型联合训练的系统及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,在一些实施例中,图1中披露的生成模块110、发送模块120、更新模块130可以是一个系统中的不同模块,也本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种模型联合训练的方法,所述方法包括:获取多个梯度,其中,所述多个梯度由多个联合训练的参与终端分别基于所述终端自身持有的样本数据进行模型联合训练得到;计算所述多个梯度的第一平均值,并且分别比较所述多个梯度与所述第一平均值,获取多个偏差结果;基于所述多个偏差结果,从所述多个梯度中选取可信任梯度,并且根据选取的所述可信任梯度更新联合训练模型的参数,其中,所述多个梯度中除可信任梯度外的其他梯度为可疑梯度,所述可疑梯度不被用于本次更新所述联合训练模型的参数;所述样本数据为文本数据、语音数据或者图形数据。2.根据权利要求1所述的方法,其中,所述从所述多个梯度中选取可信任梯度包括:从所述多个梯度中选取偏差小于预设阈值的所述梯度作为可信任梯度。3.根据权利要求1所述的方法,其中,所述从所述多个梯度中选取可信任梯度包括:确定所述多个偏差结果的偏差由小到大的排名,从所述多个梯度中选取排名小于预设阈值的所述梯度作为可信任梯度。4.根据权利要求1所述的方法,其中,所述根据选取的所述可信任梯度更新所述联合训练模型的参数包括:计算所述多个可信任梯度的第二平均值;将所述第二平均值作为所述联合训练模型的参数对应的梯度,使用所述基于梯度的优化算法更新所述联合训练模型的参数。5.一种模型联合训练的系统,所述系统包括:生成模块,用于:获取多个梯度,其中,所述多个梯度由多个联合训练的参与终端分别基于所述终端自身持有的样本数据进行模型联合训练得到;计算所述多个梯度的第一平均值,并且分别比较所述多个梯度与所...

【专利技术属性】
技术研发人员:陈超超曹绍升王力周俊
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:

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

1