一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

联邦学习数据处理方法、装置及设备与流程

2022-08-30 22:42:45 来源:中国专利 TAG:


1.本技术涉及人工智能技术领域,尤其涉及一种联邦学习数据处理方法、装置及设备。


背景技术:

2.在对深度神经网络进行训练时,需要将连续统计特征进行分桶,以增强特征的非线性表达能力,进而提高对深度神经网络的训练效果。
3.目前,在对连续统计特征进行分桶时,可以通过人工经验,进行等频、等距等分桶方法。例如,用户年龄特征的连续区间为1岁-100岁,通过人工经验将用户年龄特征平均分为两个桶,得到离散的用户年龄特征区间:1岁-50岁和51岁-100岁。但是,根据等距、等频的人工经验分桶方法并不能准确的对连续统计特征进行分桶,导致特征数据分桶的准确度较低,深度神经网络的训练效果较差。


技术实现要素:

4.本技术实施例提供一种联邦学习数据处理方法、装置及设备,用于解决现有技术中特征数据分桶的准确度较低,深度神经网络的训练效果较差的技术问题。
5.第一方面,本技术实施例提供一种联邦学习数据处理方法,应用于联邦学习系统,所述联邦学习系统包括第一设备和第二设备,所述第一设备中包括多个对象的至少一个第一特征,所述第二设备中包括所述多个对象的至少一个第二特征,所述方法包括:
6.所述第一设备获取第i次迭代处理对应的分类模型的模型参数,所述分类模型包括多个分类节点,每个分类节点对应一个对象分类条件;
7.所述第一设备根据所述模型参数获取每个第一特征对应的多个第一区间的梯度信息、以及每个第二特征对应的多个第二区间的梯度信息;
8.所述第一设备根据所述每个第一特征对应的多个第一区间的梯度信息和每个第二特征对应的多个第二区间的梯度信息,更新所述分类模型中每个分类节点对应的对象分类条件;
9.依次递增迭代处理次数,直至所述分类模型收敛时,所述第一设备根据收敛的分类模型确定每个第一特征和每个第二特征对应的至少一个分类区间。
10.在一种可能的实施方式中,针对所述多个分类节点中的任意一个分类节点;根据所述每个第一特征对应的多个区间的梯度信息和每个第二特征对应的多个区间的梯度信息,更新所述分类模型中所述分类节点对应的对象分类条件,包括:
11.所述第一设备根据每个第一特征对应的多个第一区间和每个第二特征对应的多个第二区间,确定多个待选分类条件;
12.所述第一设备确定每个待选分类条件对应的分类损失值;
13.所述第一设备将所述分类节点对应的对象分类条件更新为分类损失值最小的待选分类条件。
14.在一种可能的实施方式中,针对所述多个待选分类条件中的任意一个待选分类条件;所述第一设备确定所述待选分类条件对应的分类损失值,包括:
15.确定所述分类节点对应的第一对象集合,所述第一对象集合中包括至少两个对象,所述多个对象包括所述第一对象集合;
16.按照所述待选分类条件对所述第一对象集合进行分类,得到第一子对象集合和第二子对象集合;
17.根据所述第一子对象集合中各对象的梯度信息、所述第二子对象集合中各对象的梯度信息和所述第一对象集合中各对象的梯度信息,确定所述待选分类条件对应的分类损失值。
18.在一种可能的实施方式中,梯度信息包括第一梯度和第二梯度;根据所述第一子对象集合中各对象的梯度信息、所述第二子对象集合中各对象的梯度信息和所述第一对象集合中各对象的梯度信息,确定所述待选分类条件对应的分类损失值,包括:
19.根据如下公式一,确定所述待选分类条件对应的分类损失值:
[0020][0021]
其中,所述l
split
为所述分类损失值,所述i
l
为所述第一子对象集合,所述ir为所述第二子对象集合,所述i为所述第一对象集合,所述gi为第i个对象的第一梯度,所述hi为第i个对象的第二梯度,所述λ为第一预设参数,所述γ为第二预设参数。
[0022]
在一种可能的实施方式中,所述第一设备根据所述每个第一特征对应的多个第一区间的梯度信息和每个第二特征对应的多个第二区间的梯度信息,更新所述分类模型中每个分类节点对应的对象分类条件,包括:
[0023]
所述第一设备根据所述分类节点在所述分类模型中的位置,确定所述多个分类节点的更新顺序;
[0024]
所述第一设备按照所述更新顺序,根据所述每个第一特征对应的多个第一区间的梯度信息和每个第二特征对应的多个第二区间的梯度信息,更新所述分类模型中每个分类节点对应的对象分类条件。
[0025]
在一种可能的实施方式中,所述第一设备根据每个第一特征对应的多个区间和每个第二特征对应的多个区间,确定多个待选分类条件,包括:
[0026]
所述第一设备确定每个区间对应的端点值和每个区间对应的特征;
[0027]
所述第一设备根据每个区间对应的端点值和每个区间对应的特征,确定所述多个待选分类条件。
[0028]
在一种可能的实施方式中,所述第一设备根据所述模型参数获取每个第一特征对应的多个第一区间的梯度信息,包括:
[0029]
第一设备根据所述模型参数和所述多个对象的至少一个第一特征,确定每个对象的梯度信息;
[0030]
所述第一设备确定每个第一特征对应的多个第一区间;
[0031]
所述第一设备根据每个对象的梯度信息确定每个第一特征对应的多个第一区间的梯度信息。
[0032]
在一种可能的实施方式中,针对所述至少一个第一特征中的任意一个第一特征;
所述第一设备根据每个对象的梯度信息确定所述第一特征对应的多个第一区间的梯度信息,包括:
[0033]
针对所述多个第一区间中的任意一个第一区间,所述第一设备根据所述多个对象的第一特征,在所述至少一个对象中确定所述第一区间对应的目标对象,所述目标对象的第一特征位于所述第一区间内;
[0034]
将所述目标对象的梯度信息之和确定为所述第一区间的梯度信息。
[0035]
在一种可能的实施方式中,所述第一设备获取每个第二特征对应的多个第二区间的梯度信息,包括:
[0036]
所述第一设备向第二设备发送每个对象的梯度信息;
[0037]
所述第一设备从所述第二设备接收每个第二特征对应的多个第二区间的梯度信息,每个第二特征对应的多个第二区间的梯度信息为所述第二设备根据每个对象的梯度信息确定得到的。
[0038]
在一种可能的实施方式中,针对至少一个第一特征和所述至少一个第二特征中的任意一个待处理特征;所述第一设备根据收敛的分类模型确定所述待处理特征对应的分类区间,包括:
[0039]
所述第一设备确定所述分类模型中各分类节点对应的分类特征,所述分类节点对应的对象分类条件为按照所述分类特征进行分类的条件;
[0040]
所述第一设备根据各分类节点对应的分类特征,在所述多个分类节点中确定至少一个目标分类节点,所述目标分类节点对应的分类特征为所述待处理特征;
[0041]
所述第一设备根据所述目标分类节点对应的对象分类条件中的阈值,确定所述至少一个分类区间。
[0042]
在一种可能的实施方式中,所述第一设备根据收敛的分类模型确定每个第一特征和每个第二特征对应的至少一个分类区间之后,还包括:
[0043]
获取待分类数据,所述待分类数据中包括多个特征,所述多个特征中包括所述至少一个第一特征和所述至少一个第二特征中的部分或全部;
[0044]
根据所述每个第一特征和每个第二特征对应的至少一个分类区间,对所述待分类数据进行分类处理。
[0045]
第二方面,本技术提供一种联邦学习数据处理装置,应用于联邦学习系统,所述联邦学习系统包括第一设备和第二设备,所述第一设备中包括多个对象的至少一个第一特征,所述第二设备中包括所述多个对象的至少一个第二特征,所述联邦学习数据处理装置包括第一获取模块、第二获取模块、更新模块和确定模块,其中:
[0046]
所述第一获取模块用于,所述第一设备获取第i次迭代处理对应的分类模型的模型参数,所述分类模型包括多个分类节点,每个分类节点对应一个对象分类条件;
[0047]
所述第二获取模块用于,所述第一设备根据所述模型参数获取每个第一特征对应的多个第一区间的梯度信息、以及每个第二特征对应的多个第二区间的梯度信息;
[0048]
所述更新模块用于,所述第一设备根据所述每个第一特征对应的多个第一区间的梯度信息和每个第二特征对应的多个第二区间的梯度信息,更新所述分类模型中每个分类节点对应的对象分类条件;
[0049]
依次递增迭代处理次数,直至所述分类模型收敛时,所述第一设备根据收敛的分
类模型确定每个第一特征和每个第二特征对应的至少一个分类区间。
[0050]
在一种可能的实施方式中,所述更新模块具体用于:
[0051]
所述第一设备根据每个第一特征对应的多个第一区间和每个第二特征对应的多个第二区间,确定多个待选分类条件;
[0052]
所述第一设备确定每个待选分类条件对应的分类损失值;
[0053]
所述第一设备将所述分类节点对应的对象分类条件更新为分类损失值最小的待选分类条件。
[0054]
在一种可能的实施方式中,所述更新模块具体用于:
[0055]
确定所述分类节点对应的第一对象集合,所述第一对象集合中包括至少两个对象,所述多个对象包括所述第一对象集合;
[0056]
按照所述待选分类条件对所述第一对象集合进行分类,得到第一子对象集合和第二子对象集合;
[0057]
根据所述第一子对象集合中各对象的梯度信息、所述第二子对象集合中各对象的梯度信息和所述第一对象集合中各对象的梯度信息,确定所述待选分类条件对应的分类损失值。
[0058]
在一种可能的实施方式中,所述更新模块具体用于:
[0059]
根据如下公式一,确定所述待选分类条件对应的分类损失值:
[0060][0061]
其中,所述l
split
为所述分类损失值,所述i
l
为所述第一子对象集合,所述ir为所述第二子对象集合,所述i为所述第一对象集合,所述gi为第i个对象的第一梯度,所述hi为第i个对象的第二梯度,所述λ为第一预设参数,所述γ为第二预设参数。
[0062]
在一种可能的实施方式中,所述更新模块具体用于:
[0063]
所述第一设备根据所述分类节点在所述分类模型中的位置,确定所述多个分类节点的更新顺序;
[0064]
所述第一设备按照所述更新顺序,根据所述每个第一特征对应的多个第一区间的梯度信息和每个第二特征对应的多个第二区间的梯度信息,更新所述分类模型中每个分类节点对应的对象分类条件。
[0065]
在一种可能的实施方式中,所述更新模块具体用于:
[0066]
所述第一设备确定每个区间对应的端点值和每个区间对应的特征;
[0067]
所述第一设备根据每个区间对应的端点值和每个区间对应的特征,确定所述多个待选分类条件。
[0068]
在一种可能的实施方式中,所述第二获取模块具体用于:
[0069]
第一设备根据所述模型参数和所述多个对象的至少一个第一特征,确定每个对象的梯度信息;
[0070]
所述第一设备确定每个第一特征对应的多个第一区间;
[0071]
所述第一设备根据每个对象的梯度信息确定每个第一特征对应的多个第一区间的梯度信息。
[0072]
在一种可能的实施方式中,所述第二获取模块具体用于:
[0073]
针对所述多个第一区间中的任意一个第一区间,所述第一设备根据所述多个对象的第一特征,在所述至少一个对象中确定所述第一区间对应的目标对象,所述目标对象的第一特征位于所述第一区间内;
[0074]
将所述目标对象的梯度信息之和确定为所述第一区间的梯度信息。
[0075]
在一种可能的实施方式中,所述第二获取模块具体用于:
[0076]
所述第一设备向第二设备发送每个对象的梯度信息;
[0077]
所述第一设备从所述第二设备接收每个第二特征对应的多个第二区间的梯度信息,每个第二特征对应的多个第二区间的梯度信息为所述第二设备根据每个对象的梯度信息确定得到的。
[0078]
在一种可能的实施方式中,所述确定模块具体用于:
[0079]
所述第一设备确定所述分类模型中各分类节点对应的分类特征,所述分类节点对应的对象分类条件为按照所述分类特征进行分类的条件;
[0080]
所述第一设备根据各分类节点对应的分类特征,在所述多个分类节点中确定至少一个目标分类节点,所述目标分类节点对应的分类特征为所述待处理特征;
[0081]
所述第一设备根据所述目标分类节点对应的对象分类条件中的阈值,确定所述至少一个分类区间。
[0082]
在一种可能的实施方式中,所述装置还包括第三获取模块,所述第三获取模块用于:
[0083]
获取待分类数据,所述待分类数据中包括多个特征,所述多个特征中包括所述至少一个第一特征和所述至少一个第二特征中的部分或全部;
[0084]
根据所述每个第一特征和每个第二特征对应的至少一个分类区间,对所述待分类数据进行分类处理。
[0085]
第三方面,本技术实施例提供一种联邦学习数据处理设备,包括处理器和存储器;
[0086]
所述存储器存储计算机执行指令;
[0087]
所述处理器执行所述存储器存储的计算机执行指令,使得所述处理器执行如第一方面所述的联邦学习数据处理方法。
[0088]
第四方面,本技术实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当所述计算机执行指令被处理器执行时用于实现第一方面所述的联邦学习数据处理方法。
[0089]
第五方面,本技术实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面所述的联邦学习数据处理方法。
[0090]
本技术实施例提供一种联邦学习数据处理方法、装置及设备,应用于联邦学习系统,联邦学习系统包括第一设备和第二设备,第一设备中包括多个对象的至少一个第一特征,第二设备中包括多个对象的至少一个第二特征,第一设备获取第i次迭代处理对应的分类模型的模型参数,分类模型包括多个分类节点,每个分类节点对应一个对象分类条件,第一设备根据模型参数虎丘每个第一特征对应的多个第一区间的梯度信息、以及每个第二特征对应的多个第二区间的梯度信息,第一设备根据每个第一特征对应的多个区间的梯度信息和每个第二特征对应的多个区间的梯度信息,更新分类模型中每个分类节点对应的对象分类条件,依次递增迭代处理次数,直至分类模型收敛时,第一设备根据收敛的分类模型确
定每个第一特征和每个第二特征对应的至少一个分类区间。在上述方法中,分类模型根据多个第一特征对应的第一区间的梯度信息和多个第二特征对应的第二区间的梯度信息,更新分类模型中每个分类节点对应的对象分类条件,由于对象分类条件是分类模型根据多个第一特征的第一区间和多个第二特征的第二区间的梯度信息确定得到的,因此,通过对象分类条件可以准确的对多个第一特征和多个第二特征进行分桶,进而提高连续特征分桶时的准确率,提高深度神经网络的训练效果。
附图说明
[0091]
图1为本技术实施例提供的一种联邦学习系统的应用场景示意图;
[0092]
图2为本技术实施例提供的一种联邦学习数据处理方法的流程示意图;
[0093]
图3为本技术实施例提供的一种分类模型的示意图;
[0094]
图4为本技术实施例提供的另一种联邦学习数据处理方法的流程示意图;
[0095]
图5为本技术实施例提供的一种确定多个待选分类条件的过程示意图;
[0096]
图6为本技术实施例提供的一种确定分类区间的过程示意图;
[0097]
图7为本技术实施例提供的一种联邦学习数据处理方法的过程示意图;
[0098]
图8为本技术实施例提供的一种联邦学习数据处理装置的结构示意图;
[0099]
图9为本技术实施例提供的另一种联邦学习数据处理装置的结构示意图;
[0100]
图10为本技术提供的联邦学习数据处理设备的硬件结构示意图。
具体实施方式
[0101]
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
[0102]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0103]
在相关技术中,在对连续统计特征进行分桶时,可以通过人工经验进行等频、等距等分桶方法。例如,用户的年龄特征为连续特征,年龄特征的区间为1岁-80岁,可以根据人工经验将连续的年龄特征平均分为4个离散的特征,每个离散特征的区间范围长度是相同的,即,将连续的年龄特征分为1岁-20岁、21岁-40岁、41岁-60岁和61岁-80岁这4个区间段。但是,根据等距、等频的人工经验分桶方法并不能准确的对连续统计特征进行分桶,例如,等距分成的两个区间段中的用户数量差异较大,进而导致特征数据分桶的准确度较低。
[0104]
为了解决相关技术中特征数据分桶的准确度较低的技术问题,本技术实施例提供一种联邦学习数据处理方法,应用于联邦学习系统,联邦学习系统包括第一设备和第二设备,第一设备中包括多个对象的至少一个第一特征,第二设备中包括多个对象的至少一个第二特征,第一设备获取第i次迭代处理对应的分类模型的模型参数,并根据模型参数获取
每个第一特征对应的多个第一区间的梯度信息、以及每个第二特征对应的多个第二区间的梯度信息,第一设备根据每个第一特征对应的多个区间和每个第二特征对应的多个区间,确定多个待选分类条件,并确定每个待选分类条件对应的分类损失值,第一设备将分类节点对应的对象分类条件更新为分类损失值最小的待选分类条件。在上述方法中,由于对象分类条件是分类模型根据多个第一特征的第一区间和多个第二特征的第二区间的梯度信息确定得到的,且对象分类条件的分类损失值最小,因此,通过对象分类条件可以准确的对多个第一特征和多个第二特征进行分桶,进而提高连续特征分桶时的准确率。
[0105]
下面,结合图1,对本技术涉及的联邦学习系统的应用场景进行说明。
[0106]
图1为本技术实施例提供的一种联邦学习系统的应用场景示意图。请参见图1,包括联邦学习系统和服务器。其中,联邦学习系统中包括第一设备和第二设备,第一设备中包括用户a的特征a和特征b,以及用户b的特征c和特征d,第二设备中包括用户a的特征e和特征f,以及用户b的特征g和特征h。服务器和第一设备、第二设备可以参与联邦学习过程。
[0107]
请参见图1,在联邦学习过程中,服务器向第一设备和第二设备下发全局模型,第一设备和第二设备根据本地的用户的特征数据对服务器下发的全局模型进行训练,得到训练后的本地模型上传至服务器,服务器对第一设备和第二设备上传的本地模型进行聚合,得到更新后的全局模型,依次重复上述过程,直至聚合后的全局模型收敛为止。这样,第一设备和第二设备具有自己的训练样本,利用本地训练样本对本地模型进行训练,可以在保证数据不出本地的情况下完成模型的训练。
[0108]
下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
[0109]
图2为本技术实施例提供的一种联邦学习数据处理方法的流程示意图。请参见图2,该方法可以包括:
[0110]
s201、第一设备获取第i次迭代处理对应的分类模型的模型参数。
[0111]
本技术实施例的执行主体可以为联邦学习系统中的第一设备,也可以为设置在第一设备中的联邦学习数据处理装置,联邦学习数据处理装置可以通过软件实现,也可以通过软件和硬件的结合实现。
[0112]
联邦机器学习(federated machine learning),又称联邦学习(federated learning),能够在数据不出本地的前提下,联合各方进行数据使用和协同建模,逐渐成为隐私保护计算中的一种常用方法。
[0113]
在联邦学习的过程中,可以通过加密机制下的参数交换方式保护参与方的隐私数据,数据本身不会进行传输,参与方不需要向其它参与方暴露自己所拥有的数据,也不能反推其它参与方的数据,因而联邦学习可以很好的保护用户隐私和保障数据安全,并可以解决数据孤岛问题。
[0114]
联邦学习系统中包括第一设备和第二设备。其中,第一设备中包括多个对象的至少一个第一特征,第二设备中包括多个对象的至少一个第二特征。可选的,第一设备可以为联邦学习中有标签特征的一方,第二设备可以为联邦学习中没有标签特征的一方。例如,在联邦学习模型的训练任务为:根据用户特征预测用户是否会逾期贷款时,第一设备可以为银行侧的客户端设备,在银行侧的客户端设备中,可以存储用户的多个特征,以及该用户是
否逾期贷款的标签特征,第二设备可以为电商侧的客户端设备,在电商侧的客户端设备宏可以存储用户的多个特征,如,用户购买习惯,用户每周的消费水平等,但是电商侧的客户端设备中不包括用户是否逾期贷款的标签特征。
[0115]
可选的,第一设备和第二设备中包括的多个对象可以为用户。例如,银行的客户端设备可以存储多个用户的特征,电商的客户端设备也可以存储多个用户的特征。可选的,在联邦学习的实际应用场景中,首先需要对第一设备和第二设备的用户特征做样本对齐处理,得到对齐样本。例如,银行的客户端包括用户a、用户b和用户c的特征,电商的客户端包括用户a和用户b的特征,则对齐样本中包括用户a和用户b的特征。例如,第一设备中包括用户a和用户b的特征,第二设备中包括用户a和用户b的特征。
[0116]
可选的,第一设备中的对象的第一特征与第二设备中的对象的第二特征可以相同,也可以不同。例如,银行客户端设备中包括用户a的第一特征为:年龄特征、身高特征、职业特征和收入特征,电商客户端设备中包括用户a的第二特征为:年龄特征、职业特征,这样,银行客户端设备和电商客户端设备之间共同的特征为用户a的年龄特征和职业特征,但是,电商客户端设备中不包括用户a的身高特征和收入特征。值得说明的是,本技术实施例中上下文所应用的特征数据可以是由用户授权使用的特征数据,也可以是法律法规所允许使用的特征数据。
[0117]
分类模型可以为决策树模型。决策树模型就是由决策点、策略点(事件点)及结果构成的树形图,一般应用于序列决策中,通常以最大收益期望值或最低期望成本作为决策准则,通过图解方式求解在不同条件下各类方案的效益值,然后通过比较,做出决策。
[0118]
可选的,分类模型中包括多个分类节点,每个分类节点对应一个对象分类条件。例如,分类模型可以通过分类节点对多个对象进行分类,每次将对象进行分类时,分类模型可以根据对象分类条件进行分类。例如,对象分类条件可以为年龄大于20岁的对象,通过该对象分类条件,可以将多个对象分类成年龄大于20岁的对象和年龄小于或等于20岁的对象。可选的,在分类模型每次分裂时,分类节点都会对应一个对象分类条件。
[0119]
分类模型的模型参数可以为底层分类节点对应的数值。例如,在决策树模型中,决策树的底层的每个叶子节点对应一个数值,该数值为分类模型的模型参数。例如,决策树模型在初始节点进行一次分裂之后结束,该决策树模型中包括2个叶子节点,每个叶子节点的数值为决策树模型的模型参数。可选的,确定决策树模型中的叶子节点的值为现有技术公开的技术手段,本技术实施例在此不再进行赘述。
[0120]
可选的,在第一设备得到多个对象的分类模型时,第一设备可以获取分类模型的模型参数。依次递增迭代处理次数,直至分类模型收敛。例如,i可以依次取1、2、
……
,直至分类模型收敛。可选的,在i为1时,分类模型中的起始节点为叶子节点,所有的对象都在该起始节点中,此时该节点对应的值可以为预先设置的默认值。
[0121]
可选的,可以根据如下可行的实现方式,确定分类模型收敛:当i大于第一预设阈值时,确定分类模型收敛。例如,若预设阈值为3,则在分类模型迭代3次时,确定分类模型收敛。
[0122]
可选的,可与根据分类模型的预测结果确定模型是否收敛。例如,若相邻两次或者多次迭代得到的模型的准确率相差小于第二预设阈值,则确定分类模型收敛。
[0123]
下面,结合图3,对分类模型中的模型参数进行详细说明。
[0124]
图3为本技术实施例提供的一种分类模型的示意图。请参见图3,包括分类模型。其中,分类模型中包括分类节点a、分类节点b和分类节点c。分类节点a对应的对象分类条件为年龄是否大于20岁,分类节点b对应的对象分类条件为年龄是否小于30岁,分类节点c对应的对象分类条件为体重是否小于30kg。
[0125]
请参见图3,在分类节点a对应的节点中包括所有的对象。分类节点a将所有对象分类为年龄大于20岁的对象和年龄小于或等于20岁的对象。分类节点b将年龄大于20岁的对象分类为年龄大于20岁,且年龄小于30岁的对象和年龄大于或等于30岁的对象。分类节点c将年龄小于或等于20岁的对象分类为年龄小于或等于20岁,且体重小于30kg的对象和年龄小于或等于20岁,且体重大于或等于30kg的对象。
[0126]
请参见图3,在3个分类节点对所有的对象进行分类之后,得到叶子节点a1、a2、a3和a4,其中,a1对应的数值为x1,a2对应的数值为x2,a3对应的数值为x3,a4对应的数值为x4,因此,该分类模型的模型参数为x1、x2、x3和x4。
[0127]
s202、第一设备根据模型参数获取每个第一特征对应的多个第一区间的梯度信息、以及每个第二特征对应的多个第二区间的梯度信息。
[0128]
第一特征为第一设备中的用户对应的特征,第二特征为第二设备中的用户对应的特征。例如,若第一设备中的用户a的特征为特征a和特征b,第二设备中的用户a的特征为特征c,则用户a的第一特征为特征a和特征b,用户a的第二特征为特征c。
[0129]
第一区间可以为对第一特征分段得到的区间。例如,若第一特征为年龄,年龄的连续特征区间为1-80岁,则对年龄进行分段得到2个第一区间,一个第一区间为1-40岁,另一个第一区间为41-80岁。
[0130]
第二区间可以为对第二特征分段得到的区间。例如,若第二特征为身高,身高的连续特征区间为100cm-200cm,则对身高进行分段得到2个第二区间,一个第二区间为100cm-150cm,另一个第二区间为151cm-200cm。
[0131]
梯度信息包括第一梯度和第二梯度。其中,第一梯度为区间的一阶梯度,在区间的一阶梯度的表达式的基础上再求一次梯度得到第二梯度。可选的,可以根据如下可行的实现方式,根据模型参数获取每个第一特征对应的多个第一区间的梯度信息:第一设备根据模型参数和多个对象的至少一个第一特征,确定每个对象的梯度信息。例如,分类模型包括叶子节点a1和a2,叶子节点a1的值为x1,叶子节点a2的值为x2,若根据多个对象的至少一个第一特征,将对象a、对象b和对象c分在分类模型的a1节点,将对象d、对象e和对象f分在分类模型的a2节点,则对象a、对象b和对象c的第一梯度为x1的一阶梯度,在x1一阶梯度的基础上,再计算一次梯度得到对象a、对象b和对象c的第二梯度,对象d、对象e和对象f的第一梯度为x2的一阶梯度,在x2的一阶梯度的基础上,再计算一次梯度得到对象d、对象e和对象f的第二梯度。
[0132]
第一设备确定每个第一特征对应的多个第一区间。可选的,可以根据等距、等频等分桶方式,确定第一特征对应的多个第一区间。例如,若第一特征为年龄特征,年龄特征的范围为1岁-80岁,则可以将第一特征分为4个第一区间:1岁-20岁、21岁-40岁、41岁-60岁和61岁-80岁。
[0133]
第一设备根据每个对象的梯度信息,确定每个第一特征对应的多个第一区间的梯度信息。可选的,针对至少一个第一特征中的任意一个第一特征,可以根据如下可行的实现
方式确定第一特征对应的多个第一区间的梯度信息:针对多个第一区间中的任意一个第一区间,第一设备根据多个对象的第一特征,在至少一个对象中确定第一区间对应的目标对象。其中,目标对象的第一特征位于第一区间内。例如,年龄特征对应的第一区间为:1岁-40岁和41岁-80岁,若用户a的年龄特征为23岁、用户b的年龄特征为18岁、用户c的年龄特征为35岁、用户d的年龄特征为66岁,则1岁-40岁的第一区间对应的目标对象为用户a、用户b和用户c,41岁-80岁的第一区间对应的目标对应为用户d。
[0134]
将目标对象的梯度信息之和确定为第一区间的梯度信息。例如,将目标对象的第一梯度之和确定为第一区间的第一梯度,将目标对象的第二梯度之和确定为第一区间的第二梯度。例如,若第一区间对应的目标对象为用户a和用户b,用户a的梯度信息为:第一梯度a和第二梯度a,用户b的梯度信息为:第一梯度b和第二梯度b,则第一区间的第一梯度为:第一梯度a和第一梯度b的和,第一区间的第二梯度为:第二梯度a和第二梯度b的和。
[0135]
可选的,第一设备可以根据如下可行的实现方式获取每个第二特征对应的多个第二区间的梯度信息:第一设备向第二设备发送每个对象的梯度信息。例如,第一设备根据分类模型的参数得到每个对象的梯度信息之后,可以向第二设备发送每个对象的梯度信息。
[0136]
可选的,在第一设备向第二设备发送每个对象的梯度信息之前,第一设备可以对每个对象的梯度信息进行同态加密,第二设备可以从第一设备获取同态加密的对象的梯度信息。例如,可以使用paillier加密算法对每个对象的梯度信息进行加密处理,paillier加密算法为一种加法同态的加密算法,加密后进行加法运算解密得到的结果与原始直接相加得到的结果相同。
[0137]
第一设备从第二设备接收每个第二特征对应的多个第二区间的梯度信息。其中,每个第二特征对应的多个第二区间的梯度信息为第二设备根据每个对象的梯度信息确定得到的。例如,针对于体重特征,若体重特征为用户的第二特征,则根据等距分桶的方法,将体重特征分为两个第二区间:10kg-20kg和21kg-30kg,若用户a的体重为23kg,用户b的体重为29kg,则第二设备可以确定本地的用户a和用户b对应的第二区间为:21kg-30kg,由于第二设备已经从第一设备获取到用户a和用户b的梯度信息,因此,第二设备根据用户a和用户b的梯度信息,可以得到体重特征对应的21kg-30kg的第二区间的梯度信息。可选的,由于第二设备获取的对象的梯度信息为同态加密的梯度信息,因此,第一设备从第二设备棘手的每个第二特征对应的多个第二区间的梯度信息也为同态加密的梯度信息。
[0138]
s203、第一设备根据每个第一特征对应的多个第一区间的梯度信息和每个第二特征对应的多个第二区间的梯度信息,更新分类模型中每个分类节点对应的对象分类条件。
[0139]
可选的,可以根据如下可行的实现方式更新分类模型中分类节点对应的对象分类条件:第一设备根据每个第一特征对应的多个第一区间和每个第二特征对应的多个第二区间,确定多个待选分类条件。第一设备确定每个待选分类条件对应的分类损失值,并将分类节点对应的对象分类条件更新为分类损失值最小的待选分类条件。例如,第一设备根据每个第一特征对应的多个第一区间和每个第二特征对应的多个第二区间,确定的待选分类条件为:分类条件a和分类条件b,若分类条件a对应的分类损失值小于分类条件b对应的分类损失值,则将分类节点对应的对象分类条件更新为分类条件a。
[0140]
可选的,在更新分类模型时,由于第一设备中包括标签数据,因此,在第一设备中进行分类模型的更新。
[0141]
s204、在分类模型收敛时,第一设备根据收敛的分类模型确定每个第一特征和每个第二特征对应的至少一个分类区间。
[0142]
可选的,针对至少一个第一特征和至少一个第二特征中的任意一个待处理特征,可以根据如下可行的实现方式,确定待处理特征对应的分类区间:第一设备确定分类模型中各分类节点对应的分类特征。其中,分类节点对应的独享分类条件为按照分类特征进行分类的条件。第一设备根据各分类节点对应的分类特征,在多个分类节点中确定至少一个目标分类节点。其中,目标分类节点对应的分类特征为待处理特征。第一设备根据目标分类节点对应的对象分类条件中的阈值,确定至少一个分类区间。
[0143]
可选的,在联邦学习的应用场景中,由于梯度信息都进行同态加密,并且第二设备再向第一设备发送多个第二特征的多个第二区间时,第二设备也会对第二特征和第二区间进行编码加密,这样,第一设备并不知道第二设备的加密后的具体特征,但是,由于同态加密,因此,依然可以确定每个分类条件对应的分类损失值,若最后得到的收敛的分类模型中的分类节点的分类条件对应的分类特征为第二设备中的第二特征,则第一设备通过分类模型无法得到第二特征对应的分类区间,而只能获取第一特征对应的分类区间,但是第一设备可以获取编码的第二特征以及编码的分类区间,第一设备向第二设备发送编码的第二特征和编码的分类区间,第二设备对编码进行解析,进而得到第二设备中的第二特征对应的分类区间。这样,可以在数据保密的前提下,准确的得到多个特征对应的分类区间,不仅提高联邦学习模型使用的安全性,还可以提高特征数据分类的准确性。
[0144]
第二设备可以向第一设备发送编码的第二特征对应
[0145]
本技术实施例提供一种联邦学习数据处理方法,应用于联邦学习系统,联邦学习系统包括第一设备和第二设备,第一设备中包括多个对象的至少一个第一特征,第二设备中包括多个对象的至少一个第二特征,第一设备获取第i次迭代处理对应的分类模型的模型参数,分类模型包括多个分类节点,每个分类节点对应一个对象分类条件,第一设备根据模型参数获取每个第一特征对应的多个第一区间的梯度信息、以及每个第二特征对应的多个第二区间的梯度信息,第一设备根据第一特征对应的多个第一区间的梯度信息和每个第二特征对应的多个第二区间的梯度信息,更新分类模型中每个分类节点对应的对象分类条件,在分类模型收敛时,第一设备根据收敛的分类模型确定每个第一特征和每个第二特征对应的至少一个分类区间。由于对象分类条件是分类模型根据多个第一特征的第一区间和多个第二特征的第二区间的梯度信息确定得到的,且对象分类条件的分类损失值最小,因此,通过对象分类条件可以准确的对多个第一特征和多个第二特征进行分桶,进而提高连续特征分桶时的准确率,提高深度神经网络的训练效果。
[0146]
在图2所示的实施例的基础上,下面,结合图4,对上述联邦学习数据处理方法进行详细的说明。
[0147]
图4为本技术实施例提供的另一种联邦学习数据处理方法的流程示意图。请参见图4,该方法流程包括:
[0148]
s401、第一设备获取第i次迭代处理对应的分类模型的模型参数,分类模型包括多个分类节点,每个分类节点对应一个对象分类条件。
[0149]
需要说明的是,步骤s401的执行过程可以参照步骤s201的执行过程,本技术实施例在此不再进行赘述。
[0150]
s402、第一设备根据模型参数获取每个第一特征对应的多个第一区间的梯度信息、以及每个第二特征对应的多个第二区间的梯度信息。
[0151]
需要说明的是,步骤s402的执行过程可以参照步骤s202的执行过程,本技术实施例对此不再进行赘述。
[0152]
s403、第一设备根据每个第一特征对应的多个第一区间和每个第二特征对应的多个第二区间,确定多个待选分类条件。
[0153]
可选的,可以根据如下可行的实现方式,确定多个待选分类条件:第一设备确定每个区间对应的端点值和每个区间对应的特征。例如,若第一区间为年龄特征,且第一区间的范围为1岁-20岁,则第一区间对应的端点值为1岁和20岁,第一区间对应的特征为年龄。
[0154]
第一设备根据每个区间对应的端点值和每个区间对应的特征,确定多个待选分类条件。例如,多个用户的特征为年龄特征和身高特征,若年龄特征对应的多个区间为1岁-20岁、20岁-40岁,身高特征对应的多个区间为100cm-150cm、150cm-200cm,则待选分类条件包括:年龄分类:是否大于1岁、是否大于20岁和是否大于40岁;身高分类:是否大于100cm、是否大于150cm和是否大于200cm。
[0155]
下面,结合图5,对确定多个待选分类条件的过程进行说明。
[0156]
图5为本技术实施例提供的一种确定多个待选分类条件的过程示意图。请参见图5,包括特征区间集合。其中,特征区间集合中包括年龄对应的区间、身高对应的区间和体重对应的区间。年龄对应的区间为[1,20]、[20,40]、[40,60],身高对应的区间为[90,120]、[120,150]、[150,180],体重对应的区间为[30,50]、[50,70]、[70,90]。
[0157]
请参见图5,根据特征区间集合,遍历所有的特征区间集合的端点,得到特征端点集合。其中,特征端点结合中包括年龄特征的端点、身高特征的端点和体重特征的端点。年龄特征的端点为:1、20、40、60;身高特征的端点为:90、120、150、180;体重特征的端点为:30、50、70、90。
[0158]
请参见图5,根据特征端点集合,确定待选分类条件集合。其中,待选分类条件集合中包括12个待选条件,分别为:年龄是否大于1岁、年龄是否大于20岁、年龄是否大于40岁、年龄是否大于60岁、身高是否大于90cm、身高是否大于120cm、身高是否大于150cm、身高是否大于180cm、体重是否大于30kg、体重是否大于50kg、体重是否大于70kg和体重是否大于90kg。
[0159]
s404、第一设备确定每个待选分类条件对应的分类损失值。
[0160]
分类损失值为分类模型根据分类条件分类之后的损失函数与分类之前的损失函数的差值。例如,若分类模型根据年龄是否大于20岁的分类条件,对多个用户分类之前的损失函数值为y1,根据年龄是否大于20岁的分类条件,对多个用户分类之后的损失函数值为y2,则分类损失值为y1-y2。
[0161]
可选的,针对多个待选分类条件中的任意一个待选分类条件,可以根据如下可行的实现方式确定待选分类条件对应的分类损失值:确定分类节点对应的第一对象集合。其中,第一对象集合中包括至少两个对象,多个对象包括第一对象集合。例如,分类模型的起始节点对应的第一对象集合中包括所有的待分类对象。
[0162]
按照待选分类条件对第一对象集合进行分类,得到第一子对象集合和第二子对象集合。例如,若待选分类条件为年龄是否大于20岁,则第一子对象集合为年龄小于20岁的对
象集合,第二子对象集合为年龄大于或等于20岁的对象集合。
[0163]
根据第一子对象集合中各对象的梯度信息、第二子对象集合中各对象的梯度信息和第一对象集合中各对象的梯度信息,确定待选分类条件对应的分类损失值。可选的,梯度信息包括第一梯度和第二梯度,可以根据如下可行的实现方式,确定待选分类条件对应的分类损失值:根据如下公式一,确定待选分类条件对应的分类损失值:
[0164][0165]
其中,l
split
为分类损失值,i
l
为第一子对象集合,ir为第二子对象集合,i为第一对象集合,gi为第i个对象的第一梯度,hi为第i个对象的第二梯度,λ为第一预设参数,γ为第二预设参数。在i∈i
l
时,gi为第一子对象集合中的第i个对象的第一梯度,hi为第一子对象集合中的第i个对象的第二梯度;在i∈ir时,gi为第二子对象集合中的第i个对象的第一梯度,hi为第二子对象集合中的第i个对象的第二梯度;在i∈i时,gi为第一对象集合中的第i个对象的第一梯度,hi为第一对象集合中的第i个对象的第二梯度。
[0166]
由于第一设备可以获取各对象的梯度信息,因此,第一设备可以根据公式一得到每个待选分类条件对应的分类损失值。例如,若待选分类条件为年龄是否大于20岁,则第一设备确定年龄小于20岁的所有用户的第一梯度之和与第二梯度之和,年龄大于或等于20岁的所有用户的第一梯度之和与第二梯度之和,以及根据年龄是否大于20岁进行分类之前所有的用户的第一梯度之和与第二梯度之和,进而根据公式一得到待选分类条件为年龄是否大于20岁的分类损失值。
[0167]
s405、第一设备将分类节点对应的对象分类条件更新为分类损失值最小的待选分类条件。
[0168]
可选的,在分类模型进行下一次分类时,分类模型将分类节点的对象分类条件更新为分类损失值最小的待选分类条件。例如,待选分类条件为分类条件a和分类条件b,若分类条件a的分类损失值小于分类条件b的分类损失值,则分类模型下一次分类时,根据分类条件a对多个对象进行分类。
[0169]
可选的,可以根据如下可行的实现方式更新每个分类节点对应的对象分类条件:第一设备根据分类节点在分类模型中的位置,确定多个分类节点的更新顺序。例如,请参见图3,多个分类节点的更新顺序为:分类节点a、分类节点b和分类节点c,其中分类节点b和分类节点c位于同一决策树层,因此,分类节点b和分类节点c可以同时更新。
[0170]
第一设备按照更新顺序,根据每个第一特征对应的多个第一区间的梯度信息和每个第二特征对应的多个第二区间的梯度信息,更新分类模型中每个分类节点对应的对象分类条件。例如,若多个分类节点的更新顺序为:分类节点a、分类节点b和分类节点c,则第一设备先更新分类节点a对应的对象分类条件,再更新分类节点b对应的对象分类条件,最后更新分类节点c对应的对象分类条件。
[0171]
s406、第一设备确定分类模型中各分类节点对应的分类特征。
[0172]
分类节点对应的对象分类条件为按照分类特征进行分类的条件。例如,若对象分类条件为年龄是否大于20岁,则分类特征为年龄;若对象分类条件为身高是否大于100cm,则分类特征为身高。
[0173]
可选的,在分类模型收敛时,第一设备可以获取分类模型每个分类节点对应的对
象分类条件,进而根据每个对象分类条件确定各分类节点对应的分类特征。
[0174]
s407、第一设备根据各分类节点对应的分类特征,在多个分类节点中确定至少一个目标分类节点。
[0175]
可选的,以至少一个第一特征和至少一个第二特征中的任意一个待处理特征为例,目标分类节点对应的分类特征为待处理特征。例如,若第一设备确定对象的年龄特征对应的分类区间,则目标分类节点对应的分类特征为年龄特征。
[0176]
可选的,在实际应用过程中,分类模型在每次进行分裂时,可能会使用相同的分类特征进行分类,也可能使用不同的分类特征进行分类,目标分类节点为按照待处理特征进行分类的节点。
[0177]
s408、第一设备根据目标分类节点对应的对象分类条件中的阈值,确定至少一个分类区间。
[0178]
可选的,第一设备根据目标分类节点对应对象分类条件中的阈值,确定至少一个分类区间。例如,若对象分类条件为:年龄是否大于20岁,则分类区间为:年龄小于20岁、年龄大于或等于20岁。
[0179]
下面,结合图6,对确定分类区间的过程进行说明。
[0180]
图6为本技术实施例提供的一种确定分类区间的过程示意图。请参见图6,包括收敛的分类模型。其中,分类模型中包括分类节点a、分类节点b、分类节点c和分类节点d。分类节点a对应的对象分类条件为年龄是否大于20岁,分类节点b对应的对象分类条件为年龄是否小于30岁,分类节点c对应的对象分类条件为体重是否小于30kg,分类节点d对应的对象分类条件为身高是否小于180cm。a1、a2、a3、a4、a5为分类模型的叶子节点。
[0181]
请参见图6,在分类模型中,分类节点a对应的分类特征为年龄,分类节点b对应的分类特征为年龄,分类节点c对应的分类特征为体重,分类节点d对应的分类特征为身高。因此,年龄特征对应的目标分类节点为:分类节点a和分类节点b,体重特征对应的目标分类节点为分类节点c,身高特征对应的目标分类节点为分类节点d。
[0182]
请参见图6,年龄对应的分类区间为:年龄小于或等于20岁、年龄大于20岁且小于30岁、年龄大于或等于30岁;体重对应的分类区间为:体重小于30kg、体重大于或等于30kg;身高对应的分类区间为:身高小于180cm、身高大于或等于180cm。
[0183]
s409、获取待分类数据,待分类数据中包括多个特征,多个特征中包括至少一个第一特征和至少一个第二特征中的部分或全部。
[0184]
可选的,待分类数据可以为标记的待分类对象。例如,若多个对象对应的第一特征和第二特征为:年龄、身高、体重、职业、收入,则待分类数据包括的特征可以为:年龄、身高,待分类数据包括的特征也可以为:年龄、身高、体重、职业、收入。
[0185]
s410、根据每个第一特征和每个第二特征对应的至少一个分类区间,对待分类数据进行分类处理。
[0186]
可选的,根据至少一个分类区间,对待分类数据进行分类处理。例如,若待分类数据为年龄23岁、身高175cm、体重70kg,则第一设备可以根据年龄特征的分类区间、身高特征的分类区间和体重特征的分类区间,对待分类数据进行分类。
[0187]
可选的,在第一设备获取收敛的分类模型之后,可以根据分类模型获取叶子节点的用户的组合特征。例如,请参见图6,若对多个用户进行分类之后,用户a位于叶子节点a2
中,则用户a对应的组合特征为:年龄大于或等于30岁,身高大于或等于180cm,若用户a位于叶子节点a5中,则用户a对应的组合特征为:年龄小于或等于20岁,体重大于或等于30kg。
[0188]
本技术实施例提供一种联邦学习数据处理方法,第一设备获取第i次迭代处理对应的分类模型的模型参数,第一设备根据模型参数获取每个第一特征对应的多个第一区间的梯度信息、以及每个第二特征对应的多个第二区间的梯度信息,第一设备根据每个第一特征对应的多个第一区间和每个第二特征对应的多个第二区间,确定多个待选分类条件,并确定每个待选分类条件对应的分类损失值,第一设备将分类节点对应的对象分类条件更新为分类损失值最小的待选分类条件,以及确定分类模型中各分类节点对应的分类特征,并根据各分类节点对应的分类特征,在多个分类节点中确定至少一个目标分类节点,第一设备根据目标分类节点对应的对象分类条件中的阈值,确定至少一个分类区间,并获取待分类数据,根据每个第一特征和每个第二特征对应的至少一个分类区间,对待分类数据进行分类处理。在上述方法中,在分类模型收敛时,第一设备根据收敛的分类模型确定每个第一特征和每个第二特征对应的至少一个分类区间。由于对象分类条件是分类模型根据多个第一特征的第一区间和多个第二特征的第二区间的梯度信息确定得到的,且对象分类条件的分类损失值最小,因此,通过在分类模型中遍历分类特征对应的目标分类节点对应的分类区间,可以准确的对多个第一特征和多个第二特征进行分类,进而提高连续特征分类时的准确率,提高深度神经网络的训练效果。
[0189]
在上述任意一个实施例的基础上,下面,结合图7,对上述联邦学习数据处理方法的过程进行详细的说明。
[0190]
图7为本技术实施例提供的一种联邦学习数据处理方法的过程示意图。请参见图7,包括i=1的分类模型。由于i=1,分类模型还未开始迭代,因此无法得到其它的决策树,分类模型为一个初始节点。确定特征区间集合。其中,特征区间集合中包括年龄对应的区间、身高对应的区间和体重对应的区间。年龄对应的区间为[1,20]、[20,40]、[40,60],身高对应的区间为[90,120]、[120,150]、[150,180],体重对应的区间为[30,50]、[50,70]、[70,90]。
[0191]
请参见图7,根据i=1的模型参数,确定每个区间的梯度信息,并根据每个区间的梯度信息更新分类模型。根据上述步骤对分类模型迭代n次,以使分类模型收敛,得到收敛的分类模型。其中,收敛的分类模型包括分类节点a、分类节点b和分类节点c,收敛的分类模型还包括叶子节点a1、a2、a3和a4。
[0192]
请参见图7,分类节点a对应的分类条件为年龄是否大于20岁,分类节点b对应的分类条件为年龄是否小于40岁,分类节点c对应的分类条件为体重是否小于30kg。确定每个分类节点对应的分类特征。其中,分类节点a对应的分类特征为年龄,分类节点b对应的分类特征为年龄,分类节点c对应的分类特征为体重。
[0193]
请参见图7,年龄特征对应的目标分类节点为:分类节点a和分类节点b,体重特征对应的目标分类节点为分类节点c。根据分类节点a、分类节点b和分类节点c的阈值,得到年龄特征对应的分类区间和体重特征对应的分类区间集合。其中,分类区间集合中年龄特征的分类区间为:小于或等于20岁,大于20岁且小于40岁和大于或等于40岁,体重特征的分类区间为:小于30kg,大于或等于30kg。这样,可以通过每个区间的梯度信息,对分类模型进行迭代更新,由于,梯度信息确定的对象分类条件的分类损失值最小,因此,分类模型可以准
确的根据特征对多个对象进行分类,进而提高连续特征分类时的准确率。
[0194]
图8为本技术实施例提供的一种联邦学习数据处理装置的结构示意图。请参见图8,该联邦学习数据处理装置10包括第一获取模块11、第二获取模块12、更新模块13和确定模块14,其中:
[0195]
所述第一获取模块11用于,所述第一设备获取第i次迭代处理对应的分类模型的模型参数,所述分类模型包括多个分类节点,每个分类节点对应一个对象分类条件;
[0196]
所述第二获取模块12用于,所述第一设备根据所述模型参数获取每个第一特征对应的多个第一区间的梯度信息、以及每个第二特征对应的多个第二区间的梯度信息;
[0197]
所述更新模块13用于,所述第一设备根据所述每个第一特征对应的多个第一区间的梯度信息和每个第二特征对应的多个第二区间的梯度信息,更新所述分类模型中每个分类节点对应的对象分类条件;
[0198]
所述确定模块14用于,依次递增迭代处理次数,直至所述分类模型收敛时,所述第一设备根据收敛的分类模型确定每个第一特征和每个第二特征对应的至少一个分类区间。
[0199]
在一种可能的实施方式中,所述更新模块13具体用于:
[0200]
所述第一设备根据每个第一特征对应的多个第一区间和每个第二特征对应的多个第二区间,确定多个待选分类条件;
[0201]
所述第一设备确定每个待选分类条件对应的分类损失值;
[0202]
所述第一设备将所述分类节点对应的对象分类条件更新为分类损失值最小的待选分类条件。
[0203]
在一种可能的实施方式中,所述更新模块13具体用于:
[0204]
确定所述分类节点对应的第一对象集合,所述第一对象集合中包括至少两个对象,所述多个对象包括所述第一对象集合;
[0205]
按照所述待选分类条件对所述第一对象集合进行分类,得到第一子对象集合和第二子对象集合;
[0206]
根据所述第一子对象集合中各对象的梯度信息、所述第二子对象集合中各对象的梯度信息和所述第一对象集合中各对象的梯度信息,确定所述待选分类条件对应的分类损失值。
[0207]
在一种可能的实施方式中,所述更新模块13具体用于:
[0208]
根据如下公式一,确定所述待选分类条件对应的分类损失值:
[0209][0210]
其中,所述l
split
为所述分类损失值,所述i
l
为所述第一子对象集合,所述ir为所述第二子对象集合,所述i为所述第一对象集合,所述gi为第i个对象的第一梯度,所述hi为第i个对象的第二梯度,所述λ为第一预设参数,所述γ为第二预设参数。
[0211]
在一种可能的实施方式中,所述更新模块13具体用于:
[0212]
所述第一设备根据所述分类节点在所述分类模型中的位置,确定所述多个分类节点的更新顺序;
[0213]
所述第一设备按照所述更新顺序,根据所述每个第一特征对应的多个第一区间的梯度信息和每个第二特征对应的多个第二区间的梯度信息,更新所述分类模型中每个分类
节点对应的对象分类条件。
[0214]
在一种可能的实施方式中,所述更新模块13具体用于:
[0215]
所述第一设备确定每个区间对应的端点值和每个区间对应的特征;
[0216]
所述第一设备根据每个区间对应的端点值和每个区间对应的特征,确定所述多个待选分类条件。
[0217]
在一种可能的实施方式中,所述第二获取模块12具体用于:
[0218]
第一设备根据所述模型参数和所述多个对象的至少一个第一特征,确定每个对象的梯度信息;
[0219]
所述第一设备确定每个第一特征对应的多个第一区间;
[0220]
所述第一设备根据每个对象的梯度信息确定每个第一特征对应的多个第一区间的梯度信息。
[0221]
在一种可能的实施方式中,所述第二获取模块12具体用于:
[0222]
针对所述多个第一区间中的任意一个第一区间,所述第一设备根据所述多个对象的第一特征,在所述至少一个对象中确定所述第一区间对应的目标对象,所述目标对象的第一特征位于所述第一区间内;
[0223]
将所述目标对象的梯度信息之和确定为所述第一区间的梯度信息。
[0224]
在一种可能的实施方式中,所述第二获取模块12具体用于:
[0225]
所述第一设备向第二设备发送每个对象的梯度信息;
[0226]
所述第一设备从所述第二设备接收每个第二特征对应的多个第二区间的梯度信息,每个第二特征对应的多个第二区间的梯度信息为所述第二设备根据每个对象的梯度信息确定得到的。
[0227]
在一种可能的实施方式中,所述确定模块14具体用于:
[0228]
所述第一设备确定所述分类模型中各分类节点对应的分类特征,所述分类节点对应的对象分类条件为按照所述分类特征进行分类的条件;
[0229]
所述第一设备根据各分类节点对应的分类特征,在所述多个分类节点中确定至少一个目标分类节点,所述目标分类节点对应的分类特征为所述待处理特征;
[0230]
所述第一设备根据所述目标分类节点对应的对象分类条件中的阈值,确定所述至少一个分类区间。
[0231]
本技术实施例提供的联邦学习数据处理装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
[0232]
本技术实施例所示的联邦学习数据处理装置可以为芯片、硬件模组、处理器等。当然,联邦学习数据处理装置可以为其它形态,本技术实施例对此不作具体限定。
[0233]
图9为本技术实施例提供的另一种联邦学习数据处理装置的结构示意图。在图8所示的实施例的基础上,请参见图9,该联邦学习数据处理装置10还包括第三获取模块15,所述第三获取模块15用于:
[0234]
获取待分类数据,所述待分类数据中包括多个特征,所述多个特征中包括所述至少一个第一特征和所述至少一个第二特征中的部分或全部;
[0235]
根据所述每个第一特征和每个第二特征对应的至少一个分类区间,对所述待分类数据进行分类处理。
[0236]
本技术实施例提供的联邦学习数据处理装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
[0237]
本技术实施例所示的联邦学习数据处理装置可以为芯片、硬件模组、处理器等。当然,联邦数据处理装置可以为其它形态,本技术实施例对此不作具体限定。
[0238]
图10为本技术提供的联邦学习数据处理设备的硬件结构示意图。请参见图10,该联邦学习数据处理设备20可以包括:处理器21和存储器22,其中,处理器21和存储器22可以通信;示例性的,处理器21和存储器22通过通信总线23通信,所述存储器22用于存储程序指令,所述处理器21用于调用存储器中的程序指令执行上述任意方法实施例所示的联邦学习数据处理方法。
[0239]
可选的,联邦学习数据处理设备20还可以包括通信接口,通信接口可以包括发送器和/或接收器。
[0240]
可选的,上述处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0241]
本技术提供一种可读存储介质,所述可读存储介质上存储有计算机程序;所述计算机程序用于实现如上述任意实施例所述的联邦学习数据处理方法。
[0242]
本技术实施例提供一种计算机程序产品,所述计算机程序产品包括指令,当所述指令被执行时,使得计算机执行上述联邦学习数据处理方法。
[0243]
实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一可读取存储器中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储器(存储介质)包括:只读存储器(英文:read-only memory,缩写:rom)、ram、快闪存储器、硬盘、固态硬盘、磁带(英文:magnetic tape)、软盘(英文:floppy disk)、光盘(英文:optical disc)及其任意组合。
[0244]
本技术实施例是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程终端设备的处理单元以产生一个机器,使得通过计算机或其他可编程终端设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0245]
这些计算机程序指令也可存储在能引导计算机或其他可编程终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0246]
这些计算机程序指令也可装载到计算机或其他可编程终端设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方
框或多个方框中指定的功能的步骤。
[0247]
显然,本领域的技术人员可以对本技术实施例进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术实施例的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
[0248]
在本技术中,术语“包括”及其变形可以指非限制性的包括;术语“或”及其变形可以指“和/或”。本技术中术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。本技术中,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献