联合训练业务模型的方法及装置转让专利

申请号 : CN202011310524.2

文献号 : CN112101946B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 熊涛

申请人 : 支付宝(杭州)信息技术有限公司

摘要 :

本说明书实施例提供一种联合训练业务模型的方法,通过数据方局部编码模型与服务方全局模型的架构,在数据传递方面,仅由各个数据方传递维度较小的表征向量,以及由服务方回传表征向量对应的梯度数据,大大降低大规模模型训练过程中传递的参数量。另外,在数据方确定本地数据的表征向量过程中,一方面可以使用自定义的编码网络,充分适应数据异构的需求,另一方面,在编码模型中增加噪声层,以在预定隐私代价下,保持模型预测结果的鲁棒性,从而,可以有效保护数据隐私。总之,以上方法可以提高大规模联合训练业务模型的有效性。

权利要求 :

1.一种联合训练业务模型的方法,其中,所述业务模型用于对相关业务数据进行处理,以确定相应的业务处理结果,所述方法由多个数据方和服务方共同执行,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及设于服务方的全局模型,所述局部编码模型用于对相应的单个数据方持有的作为隐私数据的本地训练样本进行编码,得到相应的表征向量,所述全局模型用于处理单个数据方经由相应的局部编码模型确定的表征向量,并得到业务处理结果;所述方法包括:各个数据方分别通过相应的局部编码模型对本地的训练样本进行编码处理,针对各个本地训练样本分别得到各个预定维度的表征向量,其中,单个编码网络中的至少一层为噪声层,所述噪声层为当前本地训练样本的当前表达向量叠加按照预定分布生成的噪声向量;

服务方利用全局模型处理各个表征向量,得到与各个训练样本分别对应的各个业务处理结果,并基于各个业务处理结果与相应样本标签的对比,反向推导全局模型的各个模型参数的梯度,以根据得到的梯度数据调整服务方持有的模型参数;

各个数据方根据服务方反向推导得到的梯度数据确定局部编码模型中,各个模型参数的梯度,以根据得到的梯度数据调整本地模型参数。

2.一种联合训练业务模型的方法,其中,所述业务模型用于对相关业务数据进行处理,以确定相应的业务处理结果,所述方法由多个数据方和服务方共同执行,所述多个数据方包括第一方,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及设于服务方的全局模型,单个局部编码模型用于对相应的单个数据方持有的作为隐私数据的本地训练样本进行编码,得到相应的表征向量,所述全局模型用于处理单个数据方经由相应的局部编码模型确定的表征向量,并得到业务处理结果;对应于所述第一方的局部编码模型为第一编码模型,在所述方法中,所述第一方执行的操作包括:利用所述第一编码模型处理本地的第一样本,得到第一表征向量,并将第一表征向量发送至服务方,以供服务方利用全局模型处理所述第一表征向量,并得到与所述第一样本对应的第一业务处理结果,从而,基于所述第一业务处理结果与所述第一样本对应的第一标签的对比结果,确定所述全局模型的第一梯度,所述第一编码模型中的至少一层为噪声层,所述噪声层用于在所述第一样本的当前表达向量上叠加按照预定分布生成的噪声向量;

基于所述第一梯度,确定所述第一编码模型中各个模型参数的梯度,以根据得到的梯度数据调整本地模型参数。

3.根据权利要求2所述的方法,其中,所述利用所述第一编码模型处理本地的第一样本,得到第一表征向量包括:

利用所述第一编码模型对所述第一样本进行预定的s次编码处理,得到相应的s个表征向量,其中,单次编码处理对应预定分布的单个噪声向量;

基于所述s个表征向量的平均向量,确定所述第一表征向量。

4.根据权利要求2所述的方法,其中,所述预定分布为高斯分布或拉普拉斯分布中的一种。

5.根据权利要求2所述的方法,其中,所述噪声层为独立神经网络层,所述当前表达向量为所述第一编码模型前一层的输出向量。

6.根据权利要求2所述的方法,其中,所述噪声层中,输出向量的单个维度上的元素为,在前一层的输出向量中的各维元素处理结果,叠加所述噪声向量中相应元素的叠加结果。

7.一种联合训练业务模型的方法,其中,所述业务模型用于对相关业务数据进行处理,以确定相应的业务处理结果,所述方法由多个数据方和服务方共同执行,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及设于服务方的全局模型,单个局部编码模型用于对相应的单个数据方持有的作为隐私数据的本地训练样本进行编码,得到相应的表征向量,所述全局模型用于处理单个数据方经由相应的局部编码模型确定的表征向量,并得到业务处理结果;在所述方法中,所述服务方执行的操作包括:获取各个数据方按照本地的局部编码模型处理本地训练样本得到的各个表征向量,得到各个业务处理结果,其中,单个局部编码模型中的至少一层为噪声层,所述噪声层用于在相应训练样本的当前表达向量上叠加按照预定分布生成的噪声向量;

基于各个业务处理结果分别与各个训练样本对应的样本标签的对比结果,反向推导全局模型的各个模型参数的梯度,以根据得到的梯度数据调整服务方持有的模型参数;

将各个训练样本分别对应的梯度数据分别发送至相应数据方,以供相应数据方根据相应梯度数据推导本地的局部编码模型中各个模型参数的梯度,从而根据得到的梯度数据调整本地模型参数。

8.一种业务处理的方法,利用由多个数据方和服务方预先联合训练的业务模型对相关业务数据进行处理,以确定相应的业务处理结果,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及对应于服务方的全局模型,所述方法包括:获取利用至少一个局部编码模型处理待处理业务数据得到的表征向量,单个局部编码模型中的至少一层为噪声层,所述噪声层用于在所述待处理业务数据的当前表达向量上叠加按照预定分布生成的噪声向量;

将所述待处理业务数据的表征向量输入预先训练的全局模型,得到相应的输出结果,所述全局模型是利用权利要求1-7中任一方式,与至少一个局部编码模型一起训练的全局模型;

根据所述全局模型的输出结果确定待处理业务数据的业务处理结果。

9.根据权利要求8所述的方法,其中,所述处理业务数据的表征向量基于相应数据方对应的局部编码模型对所述待处理业务数据的处理确定,或者基于各个数据方的本地编码网络对所述待处理业务数据的处理得到的各个表征向量的平均向量确定。

10.一种联合训练业务模型的系统,其中,所述业务模型用于对相关业务数据进行处理,以确定相应的业务处理结果,所述系统包括服务方和多个数据方,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及设于服务方的全局模型,所述局部编码模型用于对相应的单个数据方持有的作为隐私数据的本地训练样本进行编码,得到相应的表征向量,所述全局模型用于处理单个数据方经由相应的局部编码模型确定的表征向量,并得到业务处理结果;所述系统配置为:各个数据方分别通过相应的局部编码模型对本地的训练样本进行编码处理,针对各个本地训练样本分别得到各个预定维度的表征向量,其中,单个编码模型中的至少一层为噪声层,所述噪声层为当前本地训练样本的当前表达向量叠加按照预定分布生成的噪声向量;

服务方利用全局模型处理各个表征向量,得到与各个训练样本分别对应的各个业务处理结果,并基于各个业务处理结果与相应样本标签的对比,反向推导全局模型的各个模型参数的梯度,以根据得到的梯度数据调整服务方持有的模型参数;

各个数据方根据服务方反向推导得到的梯度数据确定局部编码模型中,各个模型参数的梯度,以根据得到的梯度数据调整本地模型参数。

11.一种用于联合训练业务模型的装置,其中,所述业务模型用于对相关业务数据进行处理,以确定相应的业务处理结果,联合训练业务模型的方法由多个数据方和服务方共同执行,所述多个数据方包括第一方,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及设于服务方的全局模型,单个局部编码模型用于对相应的单个数据方持有的作为隐私数据的本地训练样本进行编码,得到相应的表征向量,所述全局模型用于处理单个数据方经由相应的局部编码模型确定的表征向量,并得到业务处理结果;对应于所述第一方的局部编码模型为第一编码模型,所述装置设于第一方,包括:编码单元,配置为利用所述第一编码模型处理本地的第一样本,得到第一表征向量,并将第一表征向量发送至服务方,以供服务方利用全局模型处理所述第一表征向量,并得到与所述第一样本对应的第一业务处理结果,从而,基于所述第一业务处理结果与所述第一样本对应的第一标签的对比结果,确定所述全局模型的第一梯度,所述第一编码模型中的至少一层为噪声层,所述噪声层用于在所述第一样本的当前表达向量上叠加按照预定分布生成的噪声向量;

梯度确定单元,配置为基于所述第一梯度,确定所述第一编码模型中各个模型参数的梯度,以根据得到的梯度数据调整本地模型参数。

12.根据权利要求11所述的装置,其中,所述编码单元进一步配置为:

利用所述第一编码模型对所述第一样本进行预定的s次编码处理,得到相应的s个表征向量,其中,单次编码处理对应预定分布的单个噪声向量;

基于所述s个表征向量的平均向量,确定所述第一表征向量。

13.根据权利要求11所述的装置,其中,所述预定分布为高斯分布或拉普拉斯分布中的一种。

14.一种联合训练业务模型的装置,其中,所述业务模型用于对相关业务数据进行处理,以确定相应的业务处理结果,联合训练业务模型的方法由多个数据方和服务方共同执行,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及设于服务方的全局模型,单个局部编码模型用于对相应的单个数据方持有的作为隐私数据的本地训练样本进行编码,得到相应的表征向量,所述全局模型用于处理单个数据方经由相应的局部编码模型确定的表征向量,并得到业务处理结果;所述装置设于服务方,包括:获取单元,配置为获取各个数据方按照本地的局部编码模型处理本地训练样本得到的各个表征向量,得到各个业务处理结果,其中,单个局部编码模型中的至少一层为噪声层,所述噪声层用于在相应训练样本的当前表达向量上叠加按照预定分布生成的噪声向量;

梯度确定单元,配置为基于各个业务处理结果分别与各个训练样本对应的样本标签的对比结果,反向推导全局模型的各个模型参数的梯度,以根据得到的梯度数据调整服务方持有的模型参数;

梯度反馈单元,配置为将各个训练样本分别对应的梯度数据分别发送至相应数据方,以供相应数据方根据相应梯度数据推导本地的局部编码模型中各个模型参数的梯度,从而根据得到的梯度数据调整本地模型参数。

15.一种业务处理的装置,利用由多个数据方和服务方预先联合训练的业务模型对相关业务数据进行处理,以确定相应的业务处理结果,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及对应于服务方的全局模型,所述装置包括:获取单元,配置为获取利用至少一个局部编码模型处理待处理业务数据得到的表征向量,单个局部编码模型中的至少一层为噪声层,所述噪声层用于在所述待处理业务数据的当前表达向量上叠加按照预定分布生成的噪声向量;

预测单元,配置为将所述待处理业务数据的表征向量输入预先训练的全局模型,得到相应的输出结果,所述全局模型利用权利要求10 所述的系统,或权利要求11-14中任一装置,与至少一个局部编码模型一起训练;

结果确定单元,配置为根据所述全局模型的输出结果确定待处理业务数据的业务处理结果。

16.根据权利要求15所述的装置,其中,所述处理业务数据的表征向量基于相应数据方对应的局部编码模型对所述待处理业务数据的处理确定,或者基于各个数据方的本地编码网络对所述待处理业务数据的处理得到的各个表征向量的平均向量确定。

17.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-9中任一项的所述的方法。

18.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-9中任一项所述的方法。

说明书 :

联合训练业务模型的方法及装置

技术领域

[0001] 本说明书一个或多个实施例涉及计算机技术领域,尤其涉及联合训练业务模型的方法及装置。

背景技术

[0002] 随着计算机技术的发展,获取数据的手段也越来越多。正是因为如此,各种业务处理过程中的数据隐私保护的重要度越来越高。尤其在多方联合计算领域,对各方业务数据的隐私保护更加重要。联邦学习过程中,通常由多个数据方联合训练相关业务模型,必要时,还需要服务方或可信第三方进行辅助计算。在数据量庞大、模型规模庞大、各个数据方数据结构不同(异构)等情况下,如何在联邦学习中,兼顾准确性、隐私保护以及可处理性,是值得研究的问题。

发明内容

[0003] 本说明书一个或多个实施例描述了一种联合训练业务模型的方法及装置,用以解决背景技术提到的一个或多个问题。
[0004] 根据第一方面,提供一种联合训练业务模型的方法,其中,所述业务模型用于对相关业务数据进行处理,以确定相应的业务处理结果,所述方法由多个数据方和服务方共同执行,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及设于服务方的全局模型,所述局部编码模型用于对相应的单个数据方持有的作为隐私数据的本地训练样本进行编码,得到相应的表征向量,所述全局模型用于处理单个数据方经由相应的局部编码模型确定的表征向量,并得到业务处理结果;所述方法包括:各个数据方分别通过相应的局部编码模型对本地的训练样本进行编码处理,针对各个本地训练样本分别得到各个预定维度的表征向量,其中,单个编码网络中的至少一层为噪声层,所述噪声层为当前本地训练样本的当前表达向量叠加按照预定分布生成的噪声向量;服务方利用全局模型处理各个表征向量,得到与各个训练样本分别对应的各个业务处理结果,并基于各个业务处理结果与相应样本标签的对比,反向推导全局模型的各个模型参数的梯度,以根据得到的梯度数据调整服务方持有的模型参数;各个数据方根据服务方反向推导得到的梯度数据确定局部编码模型中,各个模型参数的梯度,以根据得到的梯度数据调整本地模型参数。
[0005] 根据第二方面,提供一种联合训练业务模型的方法,其中,所述业务模型用于对相关业务数据进行处理,以确定相应的业务处理结果,所述方法由多个数据方和服务方共同执行,所述多个数据方包括第一方,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及设于服务方的全局模型,单个局部编码模型用于对相应的单个数据方持有的作为隐私数据的本地训练样本进行编码,得到相应的表征向量,所述全局模型用于处理单个数据方经由相应的局部编码模型确定的表征向量,并得到业务处理结果;对应于所述第一方的局部编码模型为第一编码模型,在所述方法中,所述第一方执行的操作包括:利用所述第一编码网络处理本地的第一样本,得到第一表征向量,并将第一表征向量发送至服务方,以供服务方利用全局模型处理所述第一表征向量,并得到与所述第一样本对应的第一业务处理结果,从而,基于所述第一业务处理结果与所述第一样本对应的第一标签的对比结果,确定所述全局模型的第一梯度,所述第一编码网络中的至少一层为噪声层,所述噪声层用于在所述第一样本的当前表达向量上叠加按照预定分布生成的噪声向量;基于所述第一梯度,确定所述第一编码网络中各个模型参数的梯度,以根据得到的梯度数据调整本地模型参数。
[0006] 根据一个实施例,所述利用所述第一编码网络处理本地的第一样本,得到第一表征向量包括:利用所述第一编码网络对所述第一样本进行预定的s次编码处理,得到相应的s个表征向量,其中,单次编码处理对应预定分布的单个噪声向量;基于所述s个表征向量的平均向量,确定所述第一表征向量。
[0007] 根据一个实施例,所述预定分布为高斯分布或拉普拉斯分布中的一种。
[0008] 根据一个实施例,所述噪声层为独立神经网络层,所述当前表达向量为所述第一编码网络前一层的输出向量。
[0009] 根据一个实施例,所述噪声层中,输出向量的单个维度上的元素为,在前一层的输出向量中的各维元素处理结果,叠加所述噪声向量中相应元素的叠加结果。
[0010] 根据第三方面,提供一种联合训练业务模型的方法,其中,所述业务模型用于对相关业务数据进行处理,以确定相应的业务处理结果,所述方法由多个数据方和服务方共同执行,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及设于服务方的全局模型,单个局部编码模型用于对相应的单个数据方持有的作为隐私数据的本地训练样本进行编码,得到相应的表征向量,所述全局模型用于处理单个数据方经由相应的局部编码模型确定的表征向量,并得到业务处理结果;在所述方法中,所述服务方执行的操作包括:获取各个数据方按照本地的局部编码模型处理本地训练样本得到的各个表征向量,得到各个业务处理结果,其中,单个局部编码模型中的至少一层为噪声层,所述噪声层用于在相应训练样本的当前表达向量上叠加按照预定分布生成的噪声向量;基于各个业务处理结果分别与各个训练样本对应的样本标签的对比结果,反向推导全局模型的各个模型参数的梯度,以根据得到的梯度数据调整服务方持有的模型参数;将各个训练样本分别对应的梯度数据分别发送至相应数据方,以供相应数据方根据相应梯度数据推导本地的局部编码模型中各个模型参数的梯度,从而根据得到的梯度数据调整本地模型参数。
[0011] 根据第四方面,提供一种业务处理的方法,利用由多个数据方和服务方预先联合训练的业务模型对相关业务数据进行处理,以确定相应的业务处理结果,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及对应于服务方的全局模型,所述方法包括:获取利用至少一个局部编码模型处理待处理业务数据得到的表征向量,单个局部编码模型中的至少一层为噪声层,所述噪声层用于在所述待处理业务数据的当前表达向量上叠加按照预定分布生成的噪声向量;将所述待处理业务数据的表征向量输入预先训练的全局模型,得到相应的输出结果,所述全局模型是利用第一方面、第二方面、第三方面中的任一方面,与至少一个局部编码模型一起训练的全局模型;根据所述全局模型的输出结果确定待处理业务数据的业务处理结果。
[0012] 在一个实施例中,所述处理业务数据的表征向量基于相应数据方对应的局部编码模型对所述待处理业务数据的处理确定,或者基于各个数据方的本地编码网络对所述待处理业务数据的处理得到的各个表征向量的平均向量确定。
[0013] 根据第五方面,提供一种联合训练业务模型的系统,其中,所述业务模型用于对相关业务数据进行处理,以确定相应的业务处理结果,所述系统包括服务方和多个数据方,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及设于服务方的全局模型,所述局部编码模型用于对相应的单个数据方持有的作为隐私数据的本地训练样本进行编码,得到相应的表征向量,所述全局模型用于处理单个数据方经由相应的局部编码模型确定的表征向量,并得到业务处理结果;所述系统配置为:
[0014] 各个数据方分别通过相应的局部编码模型对本地的训练样本进行编码处理,针对各个本地训练样本分别得到各个预定维度的表征向量,其中,单个编码网络中的至少一层为噪声层,所述噪声层为当前本地训练样本的当前表达向量叠加按照预定分布生成的噪声向量;
[0015] 服务方利用全局模型处理各个表征向量,得到与各个训练样本分别对应的各个业务处理结果,并基于各个业务处理结果与相应样本标签的对比,反向推导全局模型的各个模型参数的梯度,以根据得到的梯度数据调整服务方持有的模型参数;
[0016] 各个数据方根据服务方反向推导得到的梯度数据确定局部编码模型中,各个模型参数的梯度,以根据得到的梯度数据调整本地模型参数。
[0017] 根据第六方面,提供一种用于联合训练业务模型的装置,其中,所述业务模型用于对相关业务数据进行处理,以确定相应的业务处理结果,联合训练业务模型的方法由多个数据方和服务方共同执行,所述多个数据方包括第一方,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及设于服务方的全局模型,单个局部编码模型用于对相应的单个数据方持有的作为隐私数据的本地训练样本进行编码,得到相应的表征向量,所述全局模型用于处理单个数据方经由相应的局部编码模型确定的表征向量,并得到业务处理结果;对应于所述第一方的局部编码模型为第一编码模型,所述装置设于第一方,配置为:
[0018] 编码单元,配置为利用所述第一编码网络处理本地的第一样本,得到第一表征向量,并将第一表征向量发送至服务方,以供服务方利用全局模型处理所述第一表征向量,并得到与所述第一样本对应的第一业务处理结果,从而,基于所述第一业务处理结果与所述第一样本对应的第一标签的对比结果,确定所述全局模型的第一梯度,所述第一编码网络中的至少一层为噪声层,所述噪声层用于在所述第一样本的当前表达向量上叠加按照预定分布生成的噪声向量;
[0019] 梯度确定单元,配置为基于所述第一梯度,确定所述第一编码网络中各个模型参数的梯度,以根据得到的梯度数据调整本地模型参数。
[0020] 在一个实施例中,所述编码单元进一步配置为:
[0021] 利用所述第一编码网络对所述第一样本进行预定的s次编码处理,得到相应的s个表征向量,其中,单次编码处理对应预定分布的单个噪声向量;
[0022] 基于所述s个表征向量的平均向量,确定所述第一表征向量。
[0023] 根据第七方面,提供一种联合训练业务模型的装置,其中,所述业务模型用于对相关业务数据进行处理,以确定相应的业务处理结果,联合训练业务模型的方法由多个数据方和服务方共同执行,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及设于服务方的全局模型,单个局部编码模型用于对相应的单个数据方持有的作为隐私数据的本地训练样本进行编码,得到相应的表征向量,所述全局模型用于处理单个数据方经由相应的局部编码模型确定的表征向量,并得到业务处理结果;所述装置设于服务方,配置为:
[0024] 获取单元,配置为获取各个数据方按照本地的局部编码模型处理本地训练样本得到的各个表征向量,得到各个业务处理结果,其中,单个局部编码模型中的至少一层为噪声层,所述噪声层用于在相应训练样本的当前表达向量上叠加按照预定分布生成的噪声向量;
[0025] 梯度确定单元,配置为基于各个业务处理结果分别与各个训练样本对应的样本标签的对比结果,反向推导全局模型的各个模型参数的梯度,以根据得到的梯度数据调整服务方持有的模型参数;
[0026] 梯度反馈单元,配置为将各个训练样本分别对应的梯度数据分别发送至相应数据方,以供相应数据方根据相应梯度数据推导本地的局部编码模型中各个模型参数的梯度,从而根据得到的梯度数据调整本地模型参数。
[0027] 根据第八方面,提供一种业务处理的装置,利用由多个数据方和服务方预先联合训练的业务模型对相关业务数据进行处理,以确定相应的业务处理结果,所述业务模型包括至少一个对应于单个数据方的局部编码模型,以及对应于服务方的全局模型,所述装置配置为:
[0028] 获取单元,配置为获取利用至少一个局部编码模型处理待处理业务数据得到的表征向量,单个局部编码模型中的至少一层为噪声层,所述噪声层用于在所述待处理业务数据的当前表达向量上叠加按照预定分布生成的噪声向量;
[0029] 预测单元,配置为将所述待处理业务数据的表征向量输入预先训练的全局模型,得到相应的输出结果,所述全局模型是与至少一个局部编码模型一起训练的全局模型;
[0030] 结果确定单元,配置为根据所述全局模型的输出结果确定待处理业务数据的业务处理结果。
[0031] 在一个实施例中,所述处理业务数据的表征向量基于相应数据方对应的局部编码模型对所述待处理业务数据的处理确定,或者基于各个数据方的本地编码网络对所述待处理业务数据的处理得到的各个表征向量的平均向量确定。
[0032] 根据第九方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面至第四方面的方法。
[0033] 根据第十方面,提供了一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面至第四方面的方法。
[0034] 通过本说明书实施例提供的方法、装置和系统,基于数据方局部编码模型与服务方全局模型的架构,在数据传递方面,仅由各个数据方传递维度较小的表征向量,以及由服务方回传表征向量对应的梯度数据,大大降低大规模模型训练过程中传递的参数量。另外,在数据方确定本地数据的表征向量过程中,一方面可以使用自定义的编码网络,充分适应数据异构的需求,另一方面,在编码模型中增加噪声层,以在预定隐私代价下,保持模型预测结果的鲁棒性,从而,可以有效保护数据隐私。总之,以上方法可以提高大规模联合训练业务模型的有效性。

附图说明

[0035] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0036] 图1示出本说明书技术构思下的一个具体实施架构示意图;
[0037] 图2示出根据一个实施例的联合训练业务模型的方法流程图;
[0038] 图3示出本说明书技术构思下的一个具体模型架构示意图;
[0039] 图4示出根据一个实施例的局部编码模型示意图;
[0040] 图5示出根据一个实施例适用于数据方的联合训练业务模型的方法流程图;
[0041] 图6示出根据一个实施例适用于服务方的联合训练业务模型的方法流程图;
[0042] 图7示出根据一个实施例的业务处理的方法流程图;
[0043] 图8示出根据一个实施例的联合训练业务模型的系统框图;
[0044] 图9示出根据一个实施例的业务处理装置的示意性框图。

具体实施方式

[0045] 下面结合附图,对本说明书提供的方案进行描述。
[0046] 首先,结合图1示出的一个具体实施场景进行说明。如图1所示,是一个由多个数据方共同训练业务模型的具体实施场景。其中,这里的业务模型可以是用于针对给定的业务数据,进行诸如分类、打分等业务处理的机器学习模型,其例如可以包括神经网络、决策树、支持向量机等等。
[0047] 在该实施场景中,数据方1、数据方2、数据方3等各个数据方可以联合训练业务模型。数据方1、数据方2、数据方3分别可以持有各自的业务数据。这里的业务数据可以是文字、图像、语音、视频等各种类型的数据,其具体内容与具体业务场景相关。例如电子支付平台或银行机构针对业务对象用户的分析场景下,电子支付平台的业务数据可以是其维护的用户的电子支付、转账、借款记录等相关数据,银行机构的业务数据可以是其维护用户的信贷记录、收入、汇款等方面的相关数据。
[0048] 在这种实施架构下,各个数据方可以联合训练业务模型。为了联合训练业务模型,通常还可以由服务方(或可信第三方)参与,以综合各方的数据,在保护个数据方隐私的前提下,辅助处理复杂运算。常规技术中,通常使用各个数据方的本地模型和服务方维护的全局模型(或全局参数)相结合的方式,联合训练业务模型。这种方式下,各个数据方通常传递本地模型的模型参数给服务方,以确定全局模型或全局参数,从而指导各个数据方更新各自的本地模型。
[0049] 然而,在大规模数据及模型需求下,各个数据方分别可能持有海量数据,并且数据结构不一定一致,由此可能导致使用的业务模型规模较大。这样,传递的参数信息也可能会有较大数据量。在常规技术中传递模型参数等信息来更新全局模型的方式,可能无法满足数据量和效率的需求。
[0050] 为此,本说明书的技术构思提供一种局部表征学习的联合训练方式。具体地,各个数据方通过本地模型对其训练样本进行降维的编码处理,从而使用维度较少的表征向量来表示本地训练样本。各个数据方将本地模型确定的表征向量发送至服务方,由服务方进一步处理各个业务方发送的表征向量,并反向确定模型参数的梯度,进一步由各个数据方分别确定本地模型部分的模型参数的梯度,从而调整相应模型参数,实现并行训练业务模型。
[0051] 在联合训练业务模型过程中,为了确保各个数据方的数据安全,还可以采用差分隐私的方式,由各个数据方在一定隐私代价下,为自身数据添加扰动。同时,表征向量的使用,用对应元素量较少的小规模表征向量表征各个数据方的大规模数据,可以有效降低数据规模,并适应不同数据结构,实现大规模训练的可扩展性。该联合训练业务模型的方式既进一步降低数据规模,又可以保护数据隐私,从而提高多个业务方大规模业务模型训练的实用性。
[0052] 下面详细描述本说明书技术构思。
[0053] 图2示出了根据本说明书一个实施例的联合训练业务模型的流程示意图。其中,业务模型可以是各种机器学习模型,例如神经网络、支持向量机、决策树中的一种或多种的组合。在本说明书中,可以将业务模型分为两个部分:一部分是编码部分,通常设在数据方,称为局部编码模型,例如通过诸如bert、图神经网络之类的编码网络实现;另一部分可以为对编码得到的表征向量后续处理的部分,通常设在服务方,称为全局模型,例如通过卷积神经网络、支持向量机、决策树等等机器学习模型实现。如图3所示,给出了本说明书实施例的一个模型架构示意图。
[0054] 可以理解,在机器学习过程中,各个数据方可以持有类似结构的数据,也可以持有不同结构的数据。例如,各个数据方分别为不同的银行类金融机构,分别持有用户的年龄、资金流水、存款额度、贷款记录、还款记录等数据。再例如,各个数据方可以包括社交类金融平台、银行机构等等,社交类金融平台持有的数据包括用户年龄、好友关系、转账记录、常驻地理位置、信用消费额度、信用消费还款记录等等数据,银行机构可以持有用户的年龄、资金流水、存款额度、贷款记录、还款记录等等数据。各个数据方持有的数据可以通过统一格式表示,例如通过统一维度的向量,各个维度的数据按照约定的格式化规则(特征值提取规则)确定,也可以分别通过个性化的格式表示,例如各自通过自定义各个维度格式化规则的向量表示。因此,每个数据方都可以对应有至少一个局部编码模型,用来编码本地的业务数据。参考图3所示,各个数据方可以利用不同的编码模型来编码本地业务数据(例如图片业务数据)。各个业务方的编码模型可以采用不同的原理和架构,如图3所示的无监督模型、有监督模型、自监督模型、自适应模型等等。
[0055] 各个数据方可以向服务方提供能够表示本地业务数据的表征向量,服务方可以将各个数据方提供的表征向量作为输入向量,得到业务模型的输出结果。在模型训练阶段,服务方还可以结合相应的样本标签与输出结果的对比,推导全局模型的各个模型参数的梯度。
[0056] 如图2所示,在本说明书的一个实施例中,多个数据方联合训练业务模型的流程可以包括:步骤201,各个数据方分别通过相应的局部编码模型对本地的训练样本进行编码处理,针对各个本地训练样本分别得到各个预定维度的表征向量,其中,单个编码网络中的至少一层为噪声层,噪声层为当前本地训练样本的当前表达向量叠加按照预定分布生成的噪声向量;步骤202,服务方利用全局模型处理各个表征向量,得到与各个训练样本分别对应的各个业务处理结果,步骤203基于各个业务处理结果与相应样本标签的对比,反向推导全局模型的各个模型参数的梯度,以根据得到的梯度数据调整服务方持有的模型参数;步骤204,各个数据方根据服务方反向推导得到的梯度数据确定局部编码模型中,各个模型参数的梯度,以根据得到的梯度数据调整本地模型参数。
[0057] 首先,通过步骤201,各个数据方分别通过相应的局部编码模型对本地的训练样本进行编码处理,针对各个本地训练样本分别得到各个预定维度的表征向量。其中,单个编码网络中的至少一层为噪声层,噪声层为当前本地训练样本的当前表达向量叠加按照预定分布生成的噪声向量。
[0058] 可以理解,表征向量可以是用于对数据方的业务数据进行描述的向量。为了降低数据处理量,尤其是大规模数据处理过程中的数据处理量,表征向量通常可以是维数较少的向量。因此,表征向量可以通过对训练样本的编码处理得到。其中,训练样本可以包括各种类型的样本数据,这些样本数据可以以图片、文字、视频、动画等方式描述,也可以以提取特征值得到的特征向量等形式描述。
[0059] 数据方在对本地训练样本进行编码处理过程中,涉及两个方面。一方面,可以对维数较多或数据量较大的数据进行降维表征,亦即前述的用维度较小的向量表征训练样本。另一方面,是对训练样本进行扰动,以保护数据隐私。
[0060] 其中,对训练样本的表征过程例如可以通过编码网络实现。编码网络可以是现有的编码网络,例如bert,也可以是根据需要设计的其他网络,如图神经网络等。在编码网络是现有的编码网络的情况下,其可以是具有固定参数的神经网络,也可以是非固定参数(网络架构确定,参数需训练)。如果编码网络是非固定参数的神经网络,或者是根据需要设计的编码网络,其模型参数可以在联合训练业务模型过程中调整确定。
[0061] 根据一个实施方式,在单个数据方的数据表征过程中,可以采用自定义的编码网络进行。例如,第一方(任意一个数据方)采用全连接神经网络,第二方采用自适应神经网络,第三方采用自监督神经网络,第四方采用无监督神经网络,等等。
[0062] 其中,单个数据方为了进一步维护本地数据隐私,还可以在数据表征过程中,进行差分隐私处理。差分隐私(differential privacy)是密码学中的一种手段,旨在提供一种当从统计数据库查询时,最大化数据查询的准确性,同时最大限度减少识别其记录的机会。设有随机算法M,PM为M所有可能的输出构成的集合。对于任意两个邻近数据集D和D'以及PM的任何子集SM,若随机算法M满足:Pr[M(D)∈SM]<=eε×Pr[M(D')∈SM],则称算法M提供ε-差分隐私保护,其中参数ε称为隐私保护预算,用于平衡隐私保护程度和准确度。ε通常可以预先设定。ε越接近0,eε越接近1,随机算法对两个邻近数据集D和D'的处理结果越接近,隐私保护程度越强。
[0063] 单个数据方进行的差分隐私,也可以称之为本地差分隐私(Local Differential Privacy,LDP)。在编码处理过程中进行差分隐私处理,可以采用对中间向量添加扰动的方式。以多层神经网络为例,可以在某层数很静网络的正常输出向量上,叠加扰动向量。对于机器学习模型来说,对于满足差分隐私的算法,希望模型预测的期望也满足差分隐私的特性。事实上,对于满足差分隐私的算法A,在 成立的情况下,数学上可以证明,有以下关系成立:

[0064] 那么也就是说,对于预测模型来说,满足ε-δ差分隐私的算法,模型预测的期望值也满足差分隐私,输入的扰动对输出结果的影响是可控的,从而模型具有可靠的鲁棒性。
[0065] 根据这种理论,可以在本地的编码模型的至少一层上添加满足差分隐私的噪声。如图4所示,编码模型中添加噪声的层可以称为噪声层。通过噪声层,可以在当前训练样本的当前表达向量叠加按照预定分布生成的噪声向量。其中噪声向量可以通过满足差分隐私的机制生成。
[0066] 通常,差分隐私可以具有拉普拉斯机制、高斯机制、指数机制等形式,在编码网络的噪声层,可以使用满足拉普拉斯分布或高斯分布的噪声向量与编码网络当前的输出向量叠加,得到扰动的向量,并继续后续处理,得到表征向量。其中,噪声向量与当前的输出向量维度相同。例如如图4所示,可以在第一层的输出向量上叠加噪声向量。
[0067] 其中,噪声向量可以是和当前的输出向量具有相同维度(以下记为n)的向量。以高斯机制为例,作为一个具体示例中,高斯分布噪声的概率密度函数例如记为:
[0068]
[0069] 其中, 为预定方差,为预定均值。当为x经过n次随机取值时,生成符合N( , )的高斯分布的n个噪声元素。各个噪声元素可以构成噪声向量。可以理解,高斯分布中的均值可以控制噪声元素的波动所参照的数值,方差可以控制噪声元素在均值附近波动的幅度大小。如均值为0,表示各个噪声元素在0附近波动,方差为1,表示各个噪声元素的平方和不超过1,从而保证噪声足够小,而不影响准确性。可选地,高斯分布下的方差 可以由预设的隐私保护预算(也可以称为隐私因子)ε确定,例如方差为ε的平方等。
[0070] 根据另一个具体例子,在拉普拉斯机制下,噪声向量中的元素值分布还可以符合拉普拉斯分布。拉普拉斯分布噪声的表达为:
[0071]
[0072] 其中,为拉普拉斯分布的均值,在作为噪声时,均值可以取0,以确保噪声元素在0附近波动(足够小而对结果产生较小影响)。将拉普拉斯噪声的隐私因子ε、敏感度1代入,则 为取1/ε时的拉普拉斯分布。其中隐私因子ε也称为隐私保护预算,用于平衡隐私保护程度和准确度。ε通常可以预先设定(如0.1)。使用预先选定的随机算法为 生成n个随机值,在 取该n个随机值时,拉普拉斯函数 的n个取值可以构成n维的噪声向量。
[0073] 可以理解的是,噪声层可以是模型中独立的一层,例如在多层神经网络中插入的,专门用于叠加噪声向量的层(如图4中第一层之后的一层)。此时,其可以插入在局部编码模型的某个运算阶段之后,在该运算阶段得到的表达向量基础上,进行与噪声向量的向量叠加运算。在一些实施例中,噪声层也可以是融合在局部编码模型的某一阶段,如噪声层融合在第i层本身,即第i层为噪声层。此时,该阶段(噪声层)的计算逻辑中,包含对噪声向量的叠加操作。例如某层神经网络原本的计算逻辑为:Y=XW,作为噪声层,其计算逻辑可以修改为:Y=XW+Noise,其中,X为噪声层的输入向量(也可以是前一层神经网络的输出向量或前一阶段计算结果),W为参数矩阵,Noise为噪声向量。
[0074] 各个数据方分别可以经过本地的局部编码模型之后,针对各个训练样本得到对应的各个表征向量,并将各个表征向量发送至服务方(或可信第三方)。其中,在模型训练阶段,由于模型参数的调整是循序渐进的过程,各个数据方单次可以对预定数量(如1、10 等)的训练样本确定表征向量,并发送至服务方。
[0075] 之后,在步骤202中,服务方利用全局模型处理各个表征向量,得到与各个训练样本分别对应的各个业务处理结果,并通过步骤203,基于各个业务处理结果与相应样本标签的对比,反向推导全局模型的各个模型参数的梯度,以根据得到的梯度数据调整服务方持有的模型参数。
[0076] 可以理解,在本说明书的实施架构下,服务方可以将各个数据方提供的表征向量作为全局模型的输入向量(或相当于全局模型的特征向量),得到相应的输出结果。全局模型的输出结果,也就是对相应训练样本的业务数据的业务处理结果。服务方基于业务模型的输出结果与样本标签的对比,可以确定全局模型中各个模型参数的梯度,以根据得到的梯度数据调整服务方持有的模型参数。
[0077] 可以理解,业务模型相当于至少被分成了两个阶段,各个数据方的局部编码模型阶段,以及服务方的全局模型阶段。根据梯度(通常是损失函数对模型参数的偏导数,损失函数基于业务模型的输出结果与样本标签的对比结果确定)的计算原理,在确定模型参数的梯度时,可以反向推导模型参数的梯度,也就是说,先根据业务模型的输出结果与样本标签的对比,确定模型损失,利用模型损失对服务方的全局模型所涉及的模型参数的偏导数,可以确定全局模型所涉及的各个模型参数梯度。服务方还可以根据梯度调整全局模型的模型参数。调整方法例如是梯度下降法、牛顿法等等,在此不做限定。
[0078] 进一步地,各个数据方的本地模型的模型参数的梯度可以根据服务方的模型参数的梯度确定。其原理还是,对于分为两个阶段的业务模型,假设第一阶段为X2=Y1=f1(W1,X1),第二阶段为Y2=f(2 W2,X2),则模型损失由Y2确定,第二阶段的梯度基于Y2对W2的偏导数确定,而第一阶段的模型参数的梯度基于Y2对f1的偏导数,与f1对W1的偏导数的乘积确定。也就是说,各个数据方的局部编码模型的模型参数的梯度基于服务方确定的Y2对f1的偏导数(Y2对X2的梯度)确定。
[0079] 因此,在确定全局模型的模型参数的梯度后,通过步骤204,各个数据方可以根据服务方的反向推导得到的梯度数据确定局部编码模型中,各个模型参数的梯度,以根据得到的梯度数据调整本地模型参数。其中,调整本地模型参数的方法例如可以是梯度下降法、牛顿法等等,在此不作限定。服务方的反向推导得到的梯度数据如上述的业务处理结果对表征向量的梯度。
[0080] 可以理解的是,各个数据方的编码网络结构可以各不相同,模型参数的调整结果也无需再进行交互。以上过程中,仅涉及数据方和服务方的数据交互,交互数据内容包括数据方向服务方提供的表征向量,以及服务方向数据方下发的关于表征向量的梯度数据。由于表征向量的维度是可控的,例如可以为100维,从而可以在大规模模型或大规模数据下的模型训练过程中,大大减少交互数据量,提高模型效率。
[0081] 值得说明的是,参考图3所示的模型架构可知,任意一个数据方的局部编码模型和服务方的全局模型可以构成一个完整的业务模型。全局模型也可以作为一个独立的业务模型,处理任一个数据方通过训练好的局部编码模型处理业务数据得到的表征向量。
[0082] 本说明书提供的技术构思,可以适用于各个数据方具有一致目标的业务场景,例如图3所示的对于大象和山羊的分类场景等。各个数据方可以持有相同或不同结构的数据,并属于联合训练过程中水平切分(单方独立拥有单个训练样本)的情形。
[0083] 将多个业务方中的任一方称之为第一方,假设第一方对应的局部编码模型为第一编码模型,则如图5所示,联合训练业务模型的过程中,第一方执行的操作可以包括以下步骤:
[0084] 步骤501,利用第一编码网络处理本地的第一样本,得到第一表征向量,并将第一表征向量发送至服务方。其中,第一编码网络中的至少一层为噪声层,噪声层用于在第一样本的当前表达向量上叠加按照预定分布生成的噪声向量。
[0085] 噪声向量可以采用满足差分隐私的分布(例如高斯分布、拉普拉斯分布)确定,在此不再赘述。噪声向量可以从提前生成的向量集中获取,也可以在执行局部编码模型过程中实时生成,在此不做限定。由于噪声向量在每次执行中具有一定的随机性,在可选的实现中,还可以针对单个训练样本,如第一样本,进行预定的s(s为大于1的正整数)次编码处理,得到相应的s个表征向量,其中,每次编码处理对应预定分布的一个噪声向量,然后,基于这s个表征向量的平均向量,确定第一表征向量。第一表征向量例如与这s个表征向量的平均向量正相关。第一表征向量中的第一标识与第一样本相对应的表正向量。第一表征向量可以作为第一方对第一样本确定的、待发送给服务方的表征向量。
[0086] 可选地,第一方在发送第一表征向量的同时,可以将第一样本对应的第一标签一并发送给服务方。
[0087] 服务方可以利用全局模型处理第一表征向量,并得到与第一样本对应的第一业务处理结果,从而,基于第一业务处理结果与第一样本对应的第一标签的对比结果,确定全局模型的第一梯度。
[0088] 步骤502,基于服务方确定的全局模型的第一梯度,确定第一编码网络中各个模型参数的梯度,以根据得到的梯度数据调整本地模型参数。
[0089] 另一方面,对于服务方而言,其在联合训练业务模型的方法中,执行的操作可以如图6所示,包括:
[0090] 步骤601,获取各个数据方按照本地的局部编码模型处理本地训练样本得到的各个表征向量,得到各个业务处理结果。其中,单个局部编码模型中的至少一层为噪声层,噪声层用于在相应训练样本的当前表达向量上叠加按照预定分布生成的噪声向量。
[0091] 步骤602,基于各个业务处理结果分别与各个训练样本对应的样本标签的对比结果,反向推导全局模型的各个模型参数的梯度,以根据得到的梯度数据调整服务方持有的模型参数。
[0092] 步骤603,将各个训练样本分别对应的梯度数据分别发送至相应数据方,以供相应数据方根据相应梯度数据推导本地的局部编码模型中各个模型参数的梯度,从而根据得到的梯度数据调整本地模型参数。
[0093] 值得说明的是,图5、图6分别以数据方、服务方的角度对联合训练业务模型过程中的操作进行了描述,图5、图6示出的流程是图2的整体流程的一部分,因此,对于图2的相关描述,也适应于图5、图6的相应部分,在此不再赘述。
[0094] 回顾以上过程,本说明书实施例提供的联合训练业务模型的方法,在数据传递方面,仅由各个数据方传递维度较小的表征向量,以及由服务方回传表征向量对应的梯度数据,大大降低大规模模型训练过程中传递的参数量。另外,在数据方确定本地数据的表征向量过程中,一方面可以使用自定义的编码网络,充分适应数据异构的需求,另一方面,在编码模型中增加噪声层,以在预定隐私代价下,保持模型预测结果的鲁棒性,从而,可以有效保护数据隐私。总之,以上方法可以提高大规模联合训练业务模型的有效性。
[0095] 进一步地,经过图2的流程训练的业务模型可以通过测试模型检测,或者用于处理新的业务数据,得到业务处理结果。为此,本说明书实施例还提供一种业务处理的方法,利用图2、图5、图6示出的联合训练业务模型的方法中,所训练的至少一个局部编码模型和全局模型进行业务处理。
[0096] 可以理解的是,各个局部编码模型和全局模型训练完成后,可以仍然分布在各个数据方、服务方,由数据方在服务方的辅助下进行业务处理,也可以全部布局在一个设备或设备集群,供单个数据方(或业务方)使用。
[0097] 如图7所示,本说明书提供的业务处理流程包括以下步骤:
[0098] 步骤701,获取利用至少一个局部编码模型处理待处理业务数据得到的表征向量。单个局部编码模型中的至少一层为噪声层,噪声层用于在待处理业务数据的当前表达向量上叠加按照预定分布生成的噪声向量。
[0099] 在一个实施例中,待处理业务数据所对应的数据方可以是已知的,此时,可以利用该数据方相对应的局部编码模型处理待处理业务数据,得到相应的表征向量。
[0100] 在另一个实施例中,待处理业务数据所对应的数据方可能是未知的,此时,可以利用各个数据方分别对应的各个局部编码模型处理待处理业务数据,从而得到各个局部编码模型对应的各个表征向量。之后,可以将多个表征向量求平均或加权平均,得到待处理业务数据最终的表征向量。
[0101] 可选地,在利用单个局部编码模型处理待处理业务数据时,可以经过多次处理,得到多个表征向量,并将这多个表征向量的平均向量作为该单个局部编码模型针对待处理业务数据进行处理得到的表征向量。这是因为,单次处理过程所使用的噪声向量存在一定的随机性,多次平均的结果可以对单次随机性可能引起的误差进行消除。
[0102] 步骤702,将待处理业务数据的表征向量输入预先训练的全局模型,得到相应的输出结果。全局模型可以是利用图2、图4、图5及针对其所描述的任一实施例,与至少一个局部编码模型一起训练的全局模型。
[0103] 步骤703,根据全局模型的输出结果确定待处理业务数据的业务处理结果。
[0104] 根据另一方面的实施例,还提供一种联合训练业务模型的系统。其中,业务模型用于对相关业务数据进行处理,以确定相应的业务处理结果。如图8所示,系统800包括服务方82和多个数据方(图8仅示出一个数据方81)。业务模型包括至少一个对应于单个数据方(如数据方81)的局部编码模型,以及设于服务方82的全局模型,局部编码模型用于对相应的单个数据方持有的作为隐私数据的本地训练样本进行编码,得到相应的表征向量,全局模型用于处理单个数据方经由相应的局部编码模型确定的表征向量,并得到业务处理结果。系统800配置为:
[0105] 各个数据方(如数据方81等)分别通过相应的局部编码模型对本地的训练样本进行编码处理,针对各个本地训练样本分别得到各个预定维度的表征向量,其中,单个编码网络中的至少一层为噪声层,噪声层为当前本地训练样本的当前表达向量叠加按照预定分布生成的噪声向量;
[0106] 服务方82利用全局模型处理各个表征向量,得到与各个训练样本分别对应的各个业务处理结果,并基于各个业务处理结果与相应样本标签的对比,反向推导全局模型的各个模型参数的梯度,以根据得到的梯度数据调整服务方持有的模型参数;
[0107] 各个数据方(包括数据方81)根据服务方82反向推导得到的梯度数据确定局部编码模型中,各个模型参数的梯度,以根据得到的梯度数据调整本地模型参数。
[0108] 进一步地,提供一种用于联合训练业务模型的装置。假设该装置设于数据方中的第一方(如数据方81),该装置可以包括:
[0109] 编码单元811,配置为利用第一编码网络处理本地的第一样本,得到第一表征向量,并将第一表征向量发送至服务方,以供服务方利用全局模型处理第一表征向量,并得到与第一样本对应的第一业务处理结果,从而,基于第一业务处理结果与第一样本对应的第一标签的对比结果,确定全局模型的第一梯度,第一编码网络中的至少一层为噪声层,噪声层用于在第一样本的当前表达向量上叠加按照预定分布生成的噪声向量;
[0110] 梯度确定单元812,配置为基于第一梯度,确定第一编码网络中各个模型参数的梯度,以根据得到的梯度数据调整本地模型参数。
[0111] 在一个实施例中,编码单元811进一步配置为:
[0112] 利用第一编码网络对第一样本进行预定的s次编码处理,得到相应的s个表征向量,其中,单次编码处理对应预定分布的单个噪声向量;
[0113] 基于s个表征向量的平均向量,确定第一表征向量。
[0114] 根据一个实施例,预定分布为高斯分布或拉普拉斯分布中的一种。
[0115] 另一方面,设于服务方82的联合训练业务模型的装置,可以包括:
[0116] 获取单元821,配置为获取各个数据方按照本地的局部编码模型处理本地训练样本得到的各个表征向量,得到各个业务处理结果,其中,单个局部编码模型中的至少一层为噪声层,噪声层用于在相应训练样本的当前表达向量上叠加按照预定分布生成的噪声向量;
[0117] 梯度确定单元822,配置为基于各个业务处理结果分别与各个训练样本对应的样本标签的对比结果,反向推导全局模型的各个模型参数的梯度,以根据得到的梯度数据调整服务方持有的模型参数;
[0118] 梯度反馈单元823,配置为将各个训练样本分别对应的梯度数据分别发送至相应数据方,以供相应数据方根据相应梯度数据推导本地的局部编码模型中各个模型参数的梯度,从而根据得到的梯度数据调整本地模型参数。
[0119] 根据在一方面的实施例,还提供一种业务处理的装置,利用由多个数据方和服务方预先联合训练的业务模型对相关业务数据进行处理,以确定相应的业务处理结果。这里,业务模型包括至少一个对应于单个数据方的局部编码模型,以及对应于服务方的全局模型。如图9所示,装置900可以包括:
[0120] 获取单元91,配置为获取利用至少一个局部编码模型处理待处理业务数据得到的表征向量,单个局部编码模型中的至少一层为噪声层,噪声层用于在待处理业务数据的当前表达向量上叠加按照预定分布生成的噪声向量;
[0121] 预测单元92,配置为将待处理业务数据的表征向量输入预先训练的全局模型,得到相应的输出结果,全局模型是与至少一个局部编码模型一起训练的全局模型;
[0122] 结果确定单元93,配置为根据全局模型的输出结果确定待处理业务数据的业务处理结果。
[0123] 根据一个可能的设计,处理业务数据的表征向量基于相应数据方对应的局部编码模型对待处理业务数据的处理确定,或者基于各个数据方的本地编码网络对待处理业务数据的处理得到的各个表征向量的平均向量确定。
[0124] 值得说明的是,图8所示的系统800、数据方81、服务方82、图9示出的装置900,分别是与图2、图5、图6、图7示出的方法实施例相对应的产品实施例,方法实施例中的相应描述同样适用于产品实施例,在此不再赘述。
[0125] 根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2、图5、图6或图7所描述的方法。
[0126] 根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2、图5、图6或图7所描述的方法。
[0127] 本领域技术人员应该可以意识到,在上述一个或多个示例中,本说明书实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
[0128] 以上所述的具体实施方式,对本说明书的技术构思的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本说明书的技术构思的具体实施方式而已,并不用于限定本说明书的技术构思的保护范围,凡在本说明书实施例的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本说明书的技术构思的保护范围之内。