CN114841371A - 基于特征的分箱处理方法、装置、设备及介质 - Google Patents
基于特征的分箱处理方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN114841371A CN114841371A CN202210470050.0A CN202210470050A CN114841371A CN 114841371 A CN114841371 A CN 114841371A CN 202210470050 A CN202210470050 A CN 202210470050A CN 114841371 A CN114841371 A CN 114841371A
- Authority
- CN
- China
- Prior art keywords
- binning
- participant node
- box
- value
- locally
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/2431—Multiple classes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Molecular Biology (AREA)
- Evolutionary Biology (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了一种基于特征的分箱处理方法、装置、设备及介质,涉及人工智能等技术领域,可以应用在联邦学习等分布式数据处理场景中。具体实现方案为:获取分箱处理所要参考的特征;基于联邦学习系统中各参与方节点中特征的字段以及特征对应的样本数据的分布情况,确定联邦学习的场景;基于各参与方节点上的样本数据中特征对应的特征值的分布属性或者预设的分箱需求,并参考联邦学习的场景,确定分箱类型;采用分箱类型,对联邦学习系统中的各参与方节点上的所述特征进行分箱处理。本公开,能够提供一种可以适用于多参与节点的联邦学习系统中的、基于特征的分箱方案,能够对联邦学习系统中的各参与方节点中的特征进行准确、有效地分箱处理。
Description
技术领域
本公开涉及计算机技术领域,具体涉及人工智能等技术领域,可以应用在联邦学习等分布式数据处理场景中。尤其涉及一种基于特征的分箱处理方法、装置、设备及介质。
背景技术
联邦学习(Federated Learning)是一种新兴的人工智能基础技术,其设计目的是在保障大数据交换时的信息安全、保护终端数据和个人数据隐私、保证合法合规的前提下,在多参与方或多计算节点之间开展高效率的机器学习。
目前,联邦学习已经成为当前数据科学领域的研究热点之一,为了提高联邦学习训练模型的效果和参与训练模型的准确性,通常在模型训练之前需要对数据进行预处理。分箱是数据预处理一个重要的方法,具有提升模型的稳定性与鲁棒性、防止过拟合、加速模型训练速度和处理空值和缺失值等优点。
发明内容
本公开提供了一种基于特征的分箱处理方法、装置、设备及介质。
根据本公开的一方面,提供了一种基于特征的分箱处理方法,包括:
获取分箱处理所要参考的特征;
基于联邦学习系统中各参与方节点中所述特征以及所述特征对应的样本数据的分布情况,确定联邦学习的场景;
基于各所述参与方节点上的样本数据中所述特征对应的特征值的分布属性或者预设的分箱需求,并参考所述联邦学习的场景,确定分箱类型;
采用所述分箱类型,对所述联邦学习系统中的各所述参与方节点上的所述特征进行分箱处理。
根据本公开的另一方面,提供了一种基于特征的分箱处理装置,包括:
特征获取模块,用于获取分箱处理所要参考的特征;
第一确定模块,用于基于联邦学习系统中各参与方节点中所述特征的字段以及所述特征对应的样本数据的分布情况,确定联邦学习的场景;
第二确定模块,用于基于各所述参与方节点上的样本数据中所述特征对应的特征值的分布属性或者预设的分箱需求,并参考所述联邦学习的场景,确定分箱类型;
分箱处理模块,用于采用所述分箱类型,对所述联邦学习系统中的各所述参与方节点上的所述特征进行分箱处理。
根据本公开的再一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的方面和任一可能的实现方式的方法。
根据本公开的又一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如上所述的方面和任一可能的实现方式的方法。
根据本公开的再另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如上所述的方面和任一可能的实现方式的方法。
根据本公开的技术,能够提供一种可以适用于多参与节点的联邦学习系统中的、基于特征的分箱方案,能够对联邦学习系统中的各参与方节点中的样本数据中的特征进行准确、有效地分箱处理。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开第一实施例的示意图;
图2是根据本公开第二实施例的示意图;
图3是根据本公开第三实施例的示意图;
图4是根据本公开第四实施例的示意图;
图5是根据本公开第五实施例的示意图;
图6是根据本公开第六实施例的示意图;
图7是根据本公开第七实施例的示意图;
图8是根据本公开第八实施例的示意图;
图9是用来实现本公开实施例的方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本公开保护的范围。
需要说明的是,本公开实施例中所涉及的终端设备可以包括但不限于手机、个人数字助理(Personal Digital Assistant,PDA)、无线手持设备、平板电脑(TabletComputer)等智能设备;显示设备可以包括但不限于个人电脑、电视等具有显示功能的设备。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
现有的关于联邦学习的研究,重点几乎都集中在建模算法方面。而基于联邦学习的数据预处理的研究相对较少。而且,目前关于特征分箱的研究主要集中在单参与方节点的模式下,而无法应用于多参与方节点的场景中,实现基于特征对样本数据进行有效地分箱处理。基于此,本公开提供一种可以应用在多参与方节点的联邦学习系统中,基于特征对样本进行有效分箱的技术方案。
图1是根据本公开第一实施例的示意图;如图1所示,本实施例提供一种基于特征的分箱处理方法,可以应用在联邦学习系统中,具体可以包括如下步骤:
S101、获取分箱处理所要参考的特征;
S102、基于联邦学习系统中各参与方节点中特征字段以及特征对应的样本数据的分布情况,确定联邦学习的场景;
S103、基于各参与方节点上的样本数据中特征对应的特征值的分布属性或者预设的分箱需求,并参考联邦学习的场景,确定分箱类型;
S104、采用分箱类型,对联邦学习系统中的各参与方节点上的特征进行分箱处理。
本实施例的基于特征的分箱处理方法的执行主体可以为基于特征分箱处理装置。该装置可以为电子实体,或者也可以为采用软件集成的应用。使用时,该装置可以访问联邦学习系统中的各参与节点,实现对各参与方节点上的样本数据中的要参考的特征对应的所有特征值进行分箱处理。
本实施例中,分箱处理所要参考的特征可以为样本数据包括的任一种、两种或者多种特征。具体地,可以接收外部输入的分箱处理所需要参考的特征。但是在分箱处理时,需要基于每一种特征单独进行分箱处理。
在本公开中,联邦学习系统中各参与方节点中特征字段的分布情况可以包括不同参与方节点中是否拥有相同特征标识即相同的特征字段等等。特征对应的样本数据的分布情况可以包括不同参与方节点中是否拥该特征对应的、相同的样本标识的样本数据等等。基于该各参与方节点中特征字段以及特征对应的样本数据的分布情况,可以推测出该架构中联邦学习的场景。
进一步地,在本公开实施例中,还可以根据各参与方节点上的样本数据中该要参考的特征对应的特征值的分布属性或者预设的分箱需求,同时并结合联邦学习的场景,可以一起确定本公开中基于特征对各参与方节点中的样本数据中的特征进行分箱处理的分箱类型;最后采用确定的分箱类型,对联邦学习系统中的各参与方节点上的样本数据中的特征进行分箱处理。采用本实施例的基于特征的分箱处理后,每一个分箱中包括的是该特征对应在多个样本数据中的特征值,为便于描述,分箱内的特征值也可以称为特征数据。基于该特征的各分箱内并不包括样本数据中的其他特征数据。具体地,每个分箱中的特征数据可以包括该特征的一个、两个或者多个特征值。后续在模型训练中,可以采用分箱处理后的每个分箱特征数据对模型训练,由于一个分箱内的特征数据,在该特征上具有一定的共性,采用分箱处理的特征数据对模型进行训练,能够有效地提升模型的稳定性与鲁棒性、防止过拟合;同时也能够加速模型训练速度和处理空值及缺失值等能力,得到更加稳定、更加精准地模型。
本实施例的基于特征的分箱处理方法,通过采用上述技术方案,可以在联邦学习系统中,自动地对联邦学习系统中各参与方节点的样本数据中的特征,进行分箱处理,能够有效地弥补现有技术的不足,提供一种可以适用于多参与节点的联邦学习系统中的、基于特征的分箱方案,能够对联邦学习系统中的各参与方节点中的样本数据中的特征进行准确、有效地分箱处理。进一步地,可以采用分箱处理后的特征值对模型进行训练,能够有效地提高模型的稳定性和准确性。
需要说明的是,在本公开的一个实施例中,基于联邦学习系统中各参与方节点中特征字段以及特征对应的样本数据的分布情况,确定联邦学习的场景,可以包括如下情形:
情形一、若不同参与节点中的不同标识的样本数据中包括的特征字段的重叠比例大于预设比例阈值,确定联邦学习的场景为横向联邦学习;本实施例中的预设比例阈值可以设置为80%、85%、90%、甚至95%以上的比例值,具体可以根据实际需求设置接近1的百分比。。
该情形,对应地,各参与方节点的样本数据中包括的特征字段的重叠较多。这里的特征字段具有重叠指的是特征标识如特征名称相同,而特征对应的值可以相同,也可以不同,不做限定。此时对应的联邦学习中的样本数据的分布情况可以称为横向分布,对应的联邦学习的场景可以称为横向联邦学习。
需要说明的是,在实际应用中,在情形一中确定联邦学习的场景为横向联邦学习之后,步骤104采用分箱类型,对联邦学习系统中的各参与方节点上的特征进行分箱处理之前,还需要对联邦学习系统中不同参与方节点中包括的所有样本数据进行特征对齐处理,以清洗样本数据,去除各参与方节点中未包括分箱处理所要参考的特征的样本数据,而保留各参与方节点中包括分箱处理所要参考的特征的样本数据,以便于后续进行准确地分箱处理。经过特征对齐处理后,不同参与方节点上包括的不同样本数据标识的样本数据,都包括有相同的特征标识即特征名称的特征。
情形二、若联邦学习系统中不同参与方节点中包括的样本数据的标识的重叠比例大于预设比例阈值,确定联邦学习的场景为纵向联邦学习。
与上述情形一不同的是,在该情形中,各参与方节点的样本数据重叠较多,而样本数据包括的特征字段重叠较少。存在同一样本数据的标签数据在一个参与方节点中,而样本数据中的其他特征在其他参与方节点中。此时对应的联邦学习中的样本数据的分布情况可以称为纵向分布,对应的联邦学习的场景可以称为纵向联邦学习。
需要说明的是,在实际应用中,在情形二中确定联邦学习的场景为纵向联邦学习之后,步骤104采用分箱类型,对联邦学习系统中的各参与方节点上的特征进行分箱处理之前,还需要对联邦学习系统中不同参与方节点中包括的所有样本数据进行样本对齐处理,以清洗样本数据,去除各参与方节点中任一节点未包括的样本数据标识的样本数据,同时也应去除未包括分箱处理所要参考的特征对应的样本数据。经过样本对齐处理后,不同参与方节点上包括相同样本数据标识的样本数据的不同特征,其中部分参与方节点上包括有分箱处理所要参考的特征。经过样本对齐处理后,不同参与方节点上包括的不同样本数据标识的样本数据,以便于后续进行准确地分箱处理。
通过上述方式,可以准确地确定联邦学习的场景,以便于后续选择准确、合理的分箱类型,提高分箱效率。而且针对不同的联邦学习场景,进行不同的对齐预处理,以对无关数据进行有效滤除,提高后续的分箱效率。
在本公开的一个实施例中,步骤S103基于各参与方节点上的样本数据中特征对应的特征值的分布属性或者预设的分箱需求,并参考联邦学习的场景,确定分箱类型,具体可以如下几种情况:
(1)若联邦学习的场景为横向联邦学习,联邦学习系统中各参与方节点上的样本数据中特征对应的特征值分布均匀,确定分箱类型为横向等宽分箱;
(2)若联邦学习的场景为横向联邦学习,联邦学习系统中各参与方节点上的样本数据中特征对应的特征值集中分布在预设的多个区间内,确定分箱类型为横向等频分箱;
(3)若联邦学习的场景为横向联邦学习,预先设置的分箱需求包括拟合优度和/独立性检验需求,确定分箱类型为横向卡方分箱;或者
(4)若联邦学习的场景为纵向联邦学习,预设的分箱需求包括拟合优度和/独立性检验需求,确定分箱类型为纵向卡方分箱。
不同的分箱处理可以具有不同的优缺点,也可以基于不同的需求来设置。例如,对于横向联邦学习,若特征对应的特征值的分布偏向于均匀分布,此时可以采用等宽分箱,便具有很好的分箱效果。但是等宽分箱容易导致样本数据中的特征值集中在某个区间内,导致分箱编号基本相同,丢失大量信息,此时若样本数据中特征对应的特征值集中分布在预设的多个区间内,可以采用等频分箱,以克服等宽分箱的缺陷。另外,若建模之前,确定需要进行拟合优度和独立性检验,此时可以采用卡方分箱。此时样本数据的特征对应的特征值的分布属性可以不考虑,也可以为样本数据的特征对应的特征值的分布属性和预设的分箱需求配置权重,使得当包括预设分箱需求时,预设的分箱需求的权重大于特征对应的特征值的分布属性的权重,如前者权重为0.8,后者仅为0.2,使得在包括预设的分箱需求时,分箱类型重点以预设的分箱需求的要求为准。
可选地,在本公开的一个实施例中,还可以基于各参与方节点上的样本数据中该特征对应的特征值的分布属性和/或预设的分箱需求,并参考联邦学习的场景,采用预先训练的分箱类型确定模型,确定分箱类型。采用预先训练的分箱类型确定模型来实现分箱类型的确定。
该分箱类型确定模型为一个预先训练的多分类的神经网络模型。使用时,将各参与方节点上的样本数据中特征对应的特征值的分布属性、预设的分箱需求以及联邦学习的场景一起输出至该分箱类型确定模型中,该模型可以预测并输出比较合理的分箱类型。
需要说明的是,若该分箱类型确定模型训练时,未采用预设的分箱需求或者特征对应的特征值的分布属性,对应预测时,也不需要相关信息。
实际应用中,除了上述4种情况,还可以包括如下两种情况:
若联邦学习的场景为纵向联邦学习,联邦学习系统中各参与方节点上的样本数据中特征对应的特征值分布均匀、确定分箱类型为纵向等宽分箱;
若联邦学习的场景为纵向联邦学习,联邦学习系统中各参与方节点上的样本数据中特征对应的特征值集中分布在预设的多个区间内,确定分箱类型为纵向等频分箱。
需要说明的是,上述纵向等宽分箱和纵向等频分箱,包括分箱处理所要参考的特征的样本数据均在同一个参与方节点上,不涉及同时对多个参与方节点的样本数据中的不同特征进行分箱处理,参考相关的单节点上的特征分箱处理方案,在此不再赘述。
而且,上述纵向等宽分箱和纵向等频分箱,也可以采用预先训练的分箱类型确定模型,采用上述实施例的类似方式,确定分箱类型。
通过采用上述方式,均可以有效、准确地确定分箱类型,进而便于后续基于分箱类型,对各参与节点的特征进行准确地分箱处理。
图2是根据本公开第二实施例的示意图;如图2所示,本实施例提供一种基于特征的分箱处理方法,在上述实施例的基础上,以分箱类型采用横向等宽分箱为例,采用该分箱类型,对联邦学习系统中的各参与方节点上的特征进行分箱处理,具体可以包括如下步骤:
S201、在各参与方节点本地计算特征值的最大值和最小值;
在各参与方节点本地,对所有样本数据中分箱处理要参考的每个特征对应的特征值进行分析,获取特征值的最大值和最小值。
S202、通过多方安全计算(Secure Muti-Party Computation;MPC)技术,基于各参与方本地的特征值的最大值和最小值,在各参与方节点本地获取特征值的全局最大值和全局最小值;
MPC技术用于解决一组互不信任的参与方节点之间,在保护隐私信息以及没有可信第三方的前提下,进行协同计算而提出的理论框架。基于该MPC技术,以及各参与方节点获取的本地的特征值的最大值和最小值,在各参与方节点本地可以获取到特征值的全局最大值和全局最小值。
S203、在各参与方节点本地,根据预设的分箱数目、以及特征值对应的全局最大值和全局最小值,确定各分箱的分箱点对应的特征值,得到分箱点集合;
本实施例的预设的分箱数目可以由工作人员根据实际需求设置,并从外部输入。对应地,在联邦学习系统中的各参与方节点可以获取到该预设的分箱数目。例如,某个特征值的全局最大值为max,全局最小值为min,预设的分箱数目为b,则各分箱的分箱点对应的特征值可以表示为:s=min+(max-min)/b*t,t=1,2,…,b。基于该特征的所有分箱的分箱点对应的特征值,构成该特征对应的分箱点集合。
S204、在各参与方节点本地,根据分箱点集合,对本地的特征值进行分箱处理。
在每个参与方节点本地,均可以按照上述方式,获取到特征对应的分箱点集合。具体分箱处理时,在每个参与方节点本地,可以根据获取的分箱点集合中每个分箱的分箱点,对本地的样本数据中的该特征字段对应的所有特征值进行分箱处理。按照本实施例的分箱处理方式,所有参与方节点进行分箱处理的标准是一样的,分箱结果非常合理、准确。
本实施例的基于特征的分箱处理方法的执行主体为基于特征的分箱处理装置,该装置中进行分箱处理的分箱处理模块,可以嵌入在联邦学习系统中的各个参与方节点内,实现在各参与方节点本地,基于特征对样本数据中的该特征字段对应的所有特征值进行分箱处理。
实际应用中,在对模型建模时,通常需要参考样本数据的多个特征。此时需要基于每个特征,采用本实施例的方式对样本数据中该特征对应的特征值进行分箱处理。每个特征对应的分箱结果也不同。
下面以分箱处理参考m个特征为例,描述本实施例的横向等宽分箱处理过程:
(a1)在各参与方节点Pi本地,计算各特征的最大、最小值maxij、minij;其中i=1,2,3…p,p为参与方节点的数目,j=1,2,3…m,m为特征的数目;
(b1)在各参与方节点Pi本地,通过MPC技术计算并获取各个特征的全局最大值maxij和全局最小值minij,j=1,2,3…m,m为特征的数目;
(c1)在各参与方节点Pi本地,根据预设的分箱数目bi,i=1,2,3…m和如下公式(1)计算各特征的分箱点集合S={sij|i=1,2,3…m,j=1,2,3…bi};
(d1)在各参与方节点Pi本地,根据各特征分箱点集合S和如下公式(2)进行样本划分,得到分箱结果为:
B={Bij|i=1,2,3…m,j=1,2,3…bi};
Bij={fij|sij<fik≤sij+1,i=1,2,3…m,k=1,2,3…n} (2)
其中,fij表示第i个特征的第j个分箱内特征值,也可以称为第i个特征的第j个分箱内特征数据;sij表示第i个特征的第j个分箱的分箱点的下限值,sij+1表示第i个特征的第j个分箱的分箱点的上限值,fik表示第i个特征的第k个特征数据,k=1,2,3…n,n为特征数据的数目。
本实施例的基于特征的分箱处理方法,通过采用上述方案,能够采用横向等宽分箱的方式,基于特征对各参与方节点上的该特征的所有特征值进行有效地分箱处理。该分箱处理过程中,可以通过MPC技术,实现各参与方节点中各特征值的全局最大值和全局最小值的获取,能够在保证各参与方节点数据安全的基础上,有效地保证各特征值的全局最大值和全局最小值的获取的准确性和有效性。进而可以基于各特征值的全局最大值和全局最小值,获取到对应特征的分箱点集合,并基于该特征分箱点集合,在各参与方节点本地有效地对样本数据中该特征的所有特征值进行分箱处理,能够有效地确保分箱处理的合理性和准确性,为后续的模型训练提供有效地基础。
图3是根据本公开第三实施例的示意图;如图3所示,本实施例提供一种基于特征的分箱处理方法,在上述实施例的基础上,以分箱类型采用横向等频分箱为例,采用该分箱类型,对联邦学习系统中的各参与方节点上的特征进行分箱处理,具体可以包括如下步骤:
S301、在各参与方节点本地,按照特征值的大小对本地的各特征值进行排序;并统计样本数目;
例如,可以按照特征值升序的方式对各参与方节点本地的样本数据中的特征值进行排序。当然,实际应用中,也可以按照特征值的降序方式排序,原理类似。本实施例中,排序后,还需要统计各参与方节点本地的特征数据即特征值的数目。
S302、在各参与方节点本地,基于预设的分箱数目、样本数目,按照等频分箱的方式,确定各分箱的分箱点对应的特征值,得到分箱点集合;
同理,预设的分箱数目可以由工作人员根据实际需求设置,并从外部输入。等频分箱的方式,即指的是每个分箱中包括的样本的数目占比相同,都等于分箱数目的倒数。例如,某个特征的预设的分箱数目为b,可以在各参与方节点本地,通过遍历各特征值,获取各分箱的分箱点的对应的特征值,使得满足如下公式:其中t=1,2,3…,b,|Bt|表示该特征的第t个分箱的特征数据即特征值的数量。
S303、在各参与方节点本地,通过MPC技术,基于各参与方节点的分箱点集合,更新本地的分箱点集合;
S304、在各参与方节点本地,根据更新的分箱点集合,对本地的样本数据中的特征值进行分箱处理。
也就是说,在各参与方本地,初始确定的分箱点集合,未考虑到其他参与方节点的信息,所以可能不够准确。所以,本实施例中,在各参与方节点本地,还需要通过MPC技术,在确保各参与方节点的数据安全的前提下,基于各参与方节点的分箱点集合,更新本地的分箱点集合,使得得到分箱点结合,能够参考各参与方节点的全局信息,更加准确。最后,在各参与方节点本地,可以基于更新的分箱点集合中各分箱点的特征值,对本地的样本数据中的特征值进行分箱处理。
本实施例的基于特征的分箱处理方法,通过采用上述方案,能够采用横向等频分箱的方式,基于特征对各参与方节点上的样本数据进行有效地分箱处理。该分箱处理过程中,可以通过MPC技术,基于各参与方节点的分箱点集合,更新本地的分箱点集合,能够在保证各参与方节点数据安全的基础上,有效地保证更新的分箱点集合的准确性。进而可以使得各参与方节点可以基于更新的分箱点集合,在各参与方节点本地有效地对样本数据中的特征值进行分箱处理,能够有效地确保分箱处理的合理性和准确性,为后续的模型训练提供有效地基础。
图4是根据本公开第四实施例的示意图;如图4所示,本实施例提供一种基于特征的分箱处理方法,在上述图3实施例的基础上,更加详细地介绍本公开的技术方案。如图4所示,本实施例中,仍以分箱类型采用横向等频分箱为例,采用该分箱类型,对联邦学习系统中的各参与方节点上的特征进行分箱处理,具体可以包括如下步骤:
S401、在各参与方节点本地,按照特征值的大小对本地的特征值进行排序;并统计样本数目;
S402、在各参与方节点本地,基于预设的分箱数目、样本数目,按照等频分箱的方式,确定各分箱的分箱点对应的特征值,得到分箱点集合;
S403、在各参与方节点本地,通过MPC技术,基于各参与方节点的分箱点集合中相同频率的各分箱点对应的最大特征值和最小特征值,获取对应的分箱点的参考特征值;
由于采用了等频分箱,在各参与方节点本地的分箱点集合中,分箱数目是相同的,每个分箱中包括的特征数据即特征值的数量比例是相同。但是不同参与方节点,样本数据中的特征值大小不同,造成不同参与方节点中,相同频率的分箱点的特征值并不相同。例如,假如各参与方节点的分箱分箱点按照前后顺序标识为1、2、3、…b,那么相同分箱点标识即对应相同频率的分箱点。
例如,本实施例中,可以取各分箱点的参考特征值等于该分箱点对应的最大特征值和最小特征值的平均。
S404、在各参与方节点本地,根据各分箱点的参考特征值,重新统计各分箱的特征值的数目;
各分箱的特征数据即指的是对应分箱中的特征值。各分箱的特征数据数目即指的是对应分箱中的特征值的数量。也就是说,在各参与方节点本地,以各分箱点的参考特征值作为分箱的分箱点的特征值,重新模拟对本地的样本数据中的特征值进行分箱,进而可以重新统计到各分箱的特征数据的数目。
S405、在各参与方节点本地,基于重新统计的各分箱的特征值的数目、各分箱点的参考特征值、最大特征值、最小特征值、预设的分箱数目以及样本数目,对本地的分箱点集合中各分箱点的特征值进行更新;
例如,在各参与方节点本地,可以基于重新统计的各分箱的特征值即特征数据的数目以及各参与方节点的样本数目,可以确定重新统计的分箱是否满足等频分箱,即等于预设分箱数目的倒数。若不满足,可以根据各分箱点的参考特征值、最大特征值和最小特征值,对对应分箱点的特征值进行更新。例如,对于任一参与方节点以及任一分箱,若基于重新统计的该分箱的特征值的数目与当前参与方节点的样本数目的比例,小于预设分箱数目的倒数,则可以取该分箱对应的分箱点的特征值等于最大特征值与参考特征值的平均。若基于重新统计的该分箱的特征值的数目与当前参与方节点的样本数目的比例,大于预设分箱数目的倒数,则可以取该分箱对应的分箱点的特征值等于最小特征值与参考特征值的平均。若基于重新统计的该分箱的特征值的数目与当前参与方节点的样本数目的比例,等于预设分箱数目的倒数,则可以取该分箱对应的分箱点的特征值等于参考特征值。
S406、在各参与方节点本地,检测更新后的各分箱点的特征值,相对于更新前对应的分箱点的特征值的绝对值误差是否小于预设阈值;若是,确定更新结束,执行步骤S407;否则,返回步骤S403继续进行更新;
S407、在各参与方节点本地,根据更新的分箱点集合,基于特征对本地的特征值进行分箱处理。
下面以分箱处理参考m个特征为例,描述本实施例的横向等频分箱处理过程:
(a2)在各参与方节点Pi本地,按各特征值的升序方式排序各样本数据中的特征值,统计本地的样本数目Ni;其中i=1,2,3…p,p为参与方节点的数目;
(b2)在各参与方节点Pi本地,遍历各纬度的特征值,根据分箱数目bi(i=1,2,3…m,m为特征的数目)和如下公式(2)和公式(3)计算特征的分箱点集合S={sij|i=1,2,3…m,j=1,2,3…b}。
(e2)重复上述步骤(c2)、(d2),直到前后两次相同频率处分箱点的误差绝对值小于ε,更新结束。
(f2)在各参与方节点Pi本地,根据分箱点集合S和上述公式(2)对特征值进行划分,得到分箱结果B={Bij|i=1,2,3…m,j=1,2,3…bi}。本实施例的基于特征的分箱处理方法,通过采用上述方案,采用横向等频分箱的方式,能够在各参与方节点本地,对本地的分箱点集合中各分箱点的特征值进行有效更新,确保最终更新得到的分箱点结合中各分箱点的特征值的准确性;进而可以使得各参与方节点可以基于更新的分箱点集合,在各参与方节点本地有效地对样本数据中的特征值进行分箱处理,能够有效地确保分箱处理的合理性和准确性,为后续的模型训练提供有效地基础。
图5是根据本公开第五实施例的示意图;如图5所示,本实施例提供一种基于特征的分箱处理方法,在上述实施例的基础上,以分箱类型采用横向卡方分箱为例,采用该分箱类型,对联邦学习系统中的各参与方节点上的特征进行分箱处理,具体可以包括如下步骤:
S501、通过MPC技术,基于各参与方节点本地的特征值的大小,对所有参与方节点的样本数据中的特征值进行全局排序;并统计样本数目;
首先,可以在各参与方节点本地,按照特征值的大小如升序,对样本数据中的所有特征值进行排序,并统计该参与方节点样本数目。实际应用中,也可以按照降序的方式排序。
然后,通过MPC技术,基于各参与方节点本地的排序,实现所有参与方节点的样本数据中的所有特征值进行全局排序。并统计样本数目。
S502、在各参与方节点本地,依据全局排序结果,将各特征值划分至一个分箱内;
在初始分箱时,每一个特征值划分在一个分箱内。
S503、基于MPC技术,在各参与方节点本地,计算各对相邻的分箱之间的卡方值;
S504、将卡方值最小的一对相邻的分箱合并;
例如,步骤S503在具体实现时,可以包括如下步骤:
(a3)通过MPC技术,在各参与方节点本地,统计各分箱内的特征值对应的各类标签的样本的数目以及各类标签的样本在全局样本中的比例;
例如,在每个参与方节点本地,可以包括很多条包括该特征的样本数据。这些样本数据中都包括标签。且不同的样本数据中标签可以相同,也可以不同。所有的样本数据中的标签可以归为K类。分箱内的特征数据即指的是分箱内包括的特征值。而每个特征值对应在参与方节点本地对应一条样本数据。而样本数据中有包括有标签。所以特征数据中包括的多个特征值可以对应有多类标签样本。在每个参与方节点本地,可以获取到每个分箱内的每个特征值对应的样本的标签,进而实现统计各分箱内的特征值对应的各类标签的样本的数目以及各类标签的样本在全局样本中的比例。
(b3)通过MPC技术,统计各分箱内各参与方节点的全局样本数目;
进一步地,在得知每个参与方本地各分箱内各参与方节点的全局样本数目之后,基于MPC技术,可以统计到各分箱的全局样本数目。即全局样本数目指的是,同一个分箱同时包括的所有参与方节点的所有特征样本数目。
(c3)在各参与方节点本地,基于各分箱内各类标签的样本在全局样本中的比例、各类标签的样本的数目、各参与方节点的全局样本数目以及总样本数目,计算各对相邻的分箱之间的卡方值。
进一步可选地,在本公开的一个实施例中,步骤S504之后,合并的分箱可能还不满足卡方分箱的需求。此时可以进一步包括如下步骤:
S505、继续基于MPC技术,在各参与方节点本地,计算各对相邻的分箱之间的卡方值;
S506、在各参与方节点本地,检测最小的卡方值是否超过预设指定阈值、或者分箱的数目是否小于预设指定数目;若是,确定各分箱,即得到分箱结果;否则,若不是,返回步骤S504,继续进行处理。
本实施例中的确定各分箱,即确定各分箱内的特征样本,不再发生合并变化。
下面以分箱处理参考m个特征为例,描述本实施例的横向卡方分箱处理过程:
(a4)在各参与方节点Pi本地,按升序方式排序各特征值,统计样本数目Ni,i=1,2,3…p,p为参与方节点的数目;然后采用MPC技术对参与方节点的所有同特征的特征值进行全局排序;
(b4)在各参与方节点Pi,遍历各样本数据的特征值,并把每个特征值划分到单独一个分箱bjt里;其中j=1,2,3…m为特征数目,t=1,2,3…Ni;
(c4)在各参与方节点Pi本地,采用MPC技术,计算每个分箱内的特征数据即特征值对应的第k类标签的样本数据在全部样本数据中的比例Ck(k=1,2,3…K);K为样本数据的标签的分类总数目;
(d4)在各参与方节点Pi本地,统计特征fj(j=1,2,3…m为特征数目)在分箱bt里面的样本数nijt(1≤t<<|Bij|),通过MPC技术统计样本在在分箱bjt里面的全局样本数njt;
其中,Atk是第t个分箱第k类标签的样本数目,Etk第t个分箱第k类标签的期望样本数目;Njt是第j个特征第t个分箱里面的特征值的数目。可选地,本实施例的每一对相邻的分箱区间的卡方值的计算也可以参考相关卡方值计算方式,在此不做限定。
(f4)重复步骤(d4)和(e4),直到特征fj(j=1,2,3…m为特征数目)的最小卡方值超过指定阈值e或分箱数目小于指定数目bj为止,即可得到分箱结果B={Bij|i=1,2,3…m,j=1,2,3…bi}。
本实施例的基于特征的分箱处理方法,通过采用上述方案,能够采用横向卡方分箱的方式,基于特征对各参与方节点上的特征值进行有效地分箱处理。该分箱处理过程中,可以通过MPC技术,在各参与方节点本地,计算各对相邻的分箱之间的卡方值;并将卡方值最小的一对相邻的分箱合并,能够在保证各参与方节点数据安全的基础上,有效地分箱合并,得到更加准确地分箱,为后续的模型训练提供有效地基础。
图6是根据本公开第六实施例的示意图;如图6所示,本实施例提供一种基于特征的分箱处理方法,在上述实施例的基础上,以分箱类型采用纵向卡方分箱为例,采用该分箱类型,对联邦学习系统中的各参与方节点上的特征进行分箱处理,具体可以包括如下步骤:
S601、在各第一参与方节点,按照特征值的大小对各样本数据中特征值进行排序;并统计总样本数目;
首先纵向卡方分箱处理之后,所有参与方节点的样本数据已经完成样本对齐过程。在本实施例的联邦学习系统中,其中,各参与方节点包括多个第一参与方节点和第二参与方节点,其中各第一参与方节点中的样本数据中包括有特征;而第二参与方节点中包括有标签数据。
S602、在各第一参与方节点本地,依据排序结果,将各样本数据中的特征值划分至一个分箱内;
实际应用中,每一条样本数据对应一个该特征字段,即对应一个该特征对应的特征值。在初始分箱时,每一个特征值划分在一个分箱内。
S603、在各第一参与方节点本地,参考第二参与方节点中的标签的样本标识,计算各对相邻的分箱之间的卡方值;
S604、将卡方值最小的一对相邻的分箱合并;
由于相邻分箱是特征值最相近的,若相邻分箱的卡方值最小,则表示相邻分箱其具有很强的共性,所以可以将其合并至一个分箱内,可以实现有效地特征样本合并,提高分箱效率。
例如,该步骤S603在各第一参与方节点本地,参考第二参与方节点中的标签的样本标识,计算各对相邻的分箱之间的卡方值,具体可以包括如下步骤:
(a5)在各第一参与方节点本地,取各分箱内的特征值对应的样本数据的标识与第二参与方节点中的标签的样本标识的交集,得到交集样本标识;
例如,本实施例中,可以基于GBF-隐私保护集合求交(Private SetIntersection;PSI)算法求各分箱内的特征值对应的样本数据的标识与第二参与方节点中的标签的样本标识的交集,相关的GBF-PSI算法可以参考相关现有技术,在此不再赘述。
(b5)在第二参与方节点本地,根据交集样本标识,统计各分箱内各类标签的样本的数目以及各类标签的样本在全局样本中的比例;
(c5)在第二参与方节点本地,向各第一参与方节点发送各分箱内各类标签的样本的数目以及各类标签的样本在全局样本中的比例;
(d5)在各第一参与方节点本地,基于各分箱内各类标签的样本在全局样本中的比例、各类标签的样本的数目、各第一参与方节点本地的样本数目以及总样本数目,计算各对相邻的分箱之间的卡方值。
进一步可选地,在本公开的一个实施例中,步骤S604之后,合并的分箱可能还不满足卡方分箱的需求。此时可以进一步包括如下步骤:
S605、继续在各第一参与方节点本地,参考第二参与方节点中的标签的样本标识,计算合并后的各对相邻的分箱之间的卡方值;
例如,具体地计算过程,可以参考上述步骤(a5)-(d5)。
S606、在各第一参与方节点本地,检测最小的卡方值是否超过预设指定阈值、或者分箱的数目是否小于预设指定数目;若是,确定各分箱;即得到分箱结果;结束。若不是,返回步骤S604,继续进行处理。
下面以分箱处理参考m个特征,以第一参与方节点Pi(i=1,2…s),拥有特征值Xi;s为第一参与方节点的数目,第二参与方节点P0拥有标签数据Y为例,描述本实施例的横向卡方分箱处理过程:
(a6)在各第一参与方节点Pi(i=1,2,3…s)本地,按特征值升序方式排序各特征值,统计特征值数目N,亦即对应的样本数目N;
(b6)在各第一参与方节点Pi本地,遍历各样本数据中的特征值,并把每个样本数据中的特征值划分到单独一个分箱bjt里;其中,j=1,2,3…m为特征数目,t=1,2,3…N;
(c6)在各第一参与方节点Pi本地,根据分箱bjt里面的特征值对应的样本标识idx和标签数据Y对应的样本标识idy通过GBF-PSI算法求交,得到交集样本标识idjoin;
(d6)在第二参与方节点P0本地,根据交集样本标识idjoin统计分箱bjt里面特征值对应的样本在各个标签类别k上的分布情况,计算第k类标签的样本在全部样本数目N中的比例Ck(k=1,2,3…K);K为样本数据的标签的分类总数目;
(e6)在第二参与方节点P0本地,把分箱bjt的样本分布信息发送给其他参与方Pi(i=1,2,3…s);
例如分箱bjt的样本分布信息,可以包括分箱bjt内各类标签的样本的数目以及各类标签的样本在全局样本中的比例。
(g6)重复步骤(c6)~(f6),直到特征fj(j=1,2,3…m为特征数目)的最小卡方值超过指定阈值e或分箱数目小于指定数目bj为止,即可得到分箱结果B={Bij|i=1,2,3…m,j=1,2,3…bi}。
本实施例的基于特征的分箱处理方法,通过采用上述方案,能够采用纵向卡方分箱的方式,基于GBF-PSI算法,获取计算相邻的分箱之间的卡方值所需的参数信息,进而可以基于最小卡方值对相邻分箱进行合并,能够在保证各参与方节点数据安全的基础上,有效地分箱合并,得到更加准确地分箱,为后续的模型训练提供有效地基础。
图7是根据本公开第七实施例的示意图;如图7所示,本实施例提供一种基于特征的分箱处理装置700,包括:
特征获取模块701,用于获取分箱处理所要参考的特征;
第一确定模块702,用于基于联邦学习系统中各参与方节点中特征字段以及特征对应的样本数据的分布情况,确定联邦学习的场景;
第二确定模块703,用于基于各参与方节点上的样本数据中特征对应的特征值的分布属性或者预设的分箱需求,并参考联邦学习的场景,确定分箱类型;
分箱处理模块704,用于采用分箱类型,对联邦学习系统中的各参与方节点上的所述特征进行分箱处理。
本实施例的基于特征的分箱处理装置700,通过采用上述模块实现基于特征的分箱处理的实现原理,与上述相关方法实施例的实现相同,详细可以参考上述相关实施例的记载,在此不再赘述。
图8是根据本公开第八实施例的示意图;如图8所示,本实施例提供一种基于特征的分箱处理装置800,包括:上述图7的同名同功能模块,特征获取模块801、第一确定模块802、第二确定模块803以及分箱处理模块804。
在本实施例中,第一确定模块802,用于:
不同参与节点中的不同标识的样本数据中包括的特征字段的重叠比例大于预设比例阈值,确定联邦学习的场景为横向联邦学习;或者
若联邦学习系统中不同参与方节点中包括的样本数据的标识重叠比例大于预设比例阈值,确定联邦学习的场景为纵向联邦学习。
如图8所示,在本公开的一个实施例中,基于特征的分箱处理装置800,还包括:
对齐处理模块805,用于对联邦学习系统中不同参与方节点中包括的所有样本数据进行特征对齐处理;或
对联邦学习系统中不同参与方节点中包括的所有样本数据进行样本对齐处理。
在本公开的一个实施例中,第二确定模块803,用于:
若联邦学习的场景为横向联邦学习,联邦学习系统中各参与方节点上的样本数据中特征对应的特征值分布均匀,确定分箱类型为横向等宽分箱;
若联邦学习的场景为横向联邦学习,联邦学习系统中各参与方节点上的样本数据中特征对应的特征值集中分布在预设的多个区间内,确定分箱类型为横向等频分箱;
若联邦学习的场景为横向联邦学习,预先设置的分箱需求包括拟合优度和/独立性检验需求,确定分箱类型为横向卡方分箱;或者
若联邦学习的场景为纵向联邦学习,预设的分箱需求包括拟合优度和/独立性检验需求,确定分箱类型为纵向卡方分箱。
在本公开的一个实施例中,第二确定模块803,用于:
基于各参与方节点上的样本数据中特征对应的特征值的分布属性和/或预设的分箱需求,并参考联邦学习的场景,采用预先训练的分箱类型确定模型,确定分箱类型。
在本公开的一个实施例中,分箱处理模块804可以在如下四种不同场景中实现不同的功能。
场景一、若分箱类型为横向等宽分箱时,分箱处理模块804用于:
在各参与方节点本地计算特征值的最大值和最小值;
通过多方安全计算技术,基于各参与方本地的特征值的最大值和最小值,在各参与方节点本地获取特征的全局最大值和全局最小值;
在各参与方节点本地,根据预设的分箱数目、以及特征对应的全局最大值和全局最小值,确定各分箱的分箱点对应的特征值,得到分箱点集合;
在各参与方节点本地,根据分箱点集合,基于特征对本地的所述特征值进行分箱处理。
场景二、若分箱类型为横向等频分箱时,进一步地,分箱处理模块804,用于:
在各参与方节点本地按照特征对应的特征值的大小对本地的各特征值进行排序;并统计样本数目;
在各参与方节点本地,基于预设的分箱数目、样本数目,按照等频分箱的方式,确定各分箱的分箱点对应的特征值,得到本地的分箱点集合;
在各参与方节点本地,通过多方安全计算技术,基于各参与方节点的分箱点集合,更新本地的分箱点集合;
在各参与方节点本地,根据更新的分箱点集合,基于特征对本地的特征值进行分箱处理。
进一步地,分箱处理模块804,用于:
在各参与方节点本地,通过多方安全计算技术,基于各参与方节点的分箱点集合中相同频率的各分箱点对应的最大特征值和最小特征值,获取对应的分箱点的参考特征值;
在各参与方节点本地,根据各分箱点的参考特征值,重新统计各分箱的特征值的数目;
在各参与方节点本地,基于重新统计的各分箱的特征值的数目、各分箱点的全局特征值、最大特征值、最小特征值、预设的分箱数目以及样本数目,对本地的分箱点集合中各分箱点的特征值进行更新。
进一步地,分箱处理模块,还用于:
检测并确定更新后的分箱点集合中各分箱点的特征值,相对于更新前的分箱点的特征值的绝对值误差小于预设阈值。
进一步地,分箱处理模块,还用于:
若更新后的分箱点集合中各分箱点的特征值,相对于更新前的对应的分箱点的特征值的绝对值误差不小于预设阈值,继续在各参与方节点本地,通过多方安全计算技术,基于各参与方节点的分箱点集合,更新本地的分箱点集合。
场景三、若分箱类型为横向卡方分箱时,分箱处理模块804,用于:
通过多方安全计算技术,基于各参与方节点本地的特征对应的特征值的大小,对所有参与方的特征值进行全局排序;并统计样本数目;
在各参与方节点本地,依据全局排序结果,将各特征值划分至一个分箱内;
基于多方安全计算技术,在各参与方节点本地,计算各分箱的卡方值;
将卡方值之差最小的一对相邻的分箱合并。
进一步地,分箱处理模块804,还用于:
将卡方值最小的一对相邻的分箱合并之后,继续基于多方安全计算技术,在各参与方节点本地,计算各对相邻的分箱之间的卡方值;
检测最小的卡方值是否超过预设指定阈值、或者分箱的数目是否小于预设指定数目;
若是,确定各分箱;
若不是,将卡方值最小的一对相邻的分箱合并。
进一步地,分箱处理模块804,用于:
通过多方安全计算技术,在各参与方节点本地,统计各分箱内的所述特征值对应的各类标签的样本的数目以及各类标签的样本在全局样本中的比例;
通过多方安全计算技术,统计各分箱内的所述特征值对应在各参与方节点的全局样本数目;
在各参与方节点本地,基于各分箱内的所述特征值对应的各类标签的样本在全局样本中的比例、各类标签的样本的数目、在各参与方节点的全局样本数目以及总样本数目,计算各对相邻的分箱之间的卡方值。
场景四,若分箱类型为纵向卡方分箱时,此时各参与方节点包括多个第一参与方节点和第二参与方节点,各第一参与方节点中的样本数据中包括有特征;第二参与方节点中包括有标签数据;分箱处理模块804,用于:
在各第一参与方节点,按照特征对应的特征值的大小对特征值进行排序;并统计总样本数目;每个特征值即对应一个样本;
在各第一参与方节点本地,依据排序结果,将特征对应的各样本数据中的特征值划分至一个分箱内;
在各第一参与方节点本地,参考第二参与方节点中的标签的样本标识,计算各分箱的卡方值;
将卡方值最小的一对相邻的分箱合并。
进一步地,分箱处理模块804,还用于:
将卡方值最小的一对相邻的分箱合并之后,继续在各第一参与方节点本地,参考第二参与方节点中的标签的样本标识,计算合并后各对相邻的分箱之间的卡方值;
检测最小的卡方值是否超过预设指定阈值、或者分箱的数目是否小于预设指定数目;
若是,确定各分箱;
若不是,将卡方值最小的一对相邻的分箱合并。
进一步地,分箱处理模块804,用于:
在各第一参与方节点本地,取各分箱内的样本数据的标识与第二参与方节点中的标签的样本标识的交集,得到交集样本标识;
在第二参与方节点本地,根据交集样本标识,统计各分箱内的所述特征值对应的各类标签的样本数目以及各类标签的样本在全局样本中的比例;
在第二参与方节点本地,向各第一参与方节点发送各分箱内的所述特征值对应的各类标签的样本数目以及各类标签的样本在全局样本中的比例;
在各第一参与方节点本地,基于各分箱内的所述特征值对应的各类标签样本在全局样本中的比例、各类标签的样本的数目、各第一参与方节点本地的样本数目以及总样本数目,计算各对相邻的分箱之间的卡方值。
本实施例的分箱处理模块804,可移植入在联邦学习系统的各参与方节点中,以实现在各参与方节点上基于特征对样本数据中的特征进行有效地分箱处理。
本实施例的基于特征的分箱处理装置800,通过采用上述模块实现基于特征的分箱处理的实现原理,与上述相关方法实施例的实现相同,详细可以参考上述相关实施例的记载,在此不再赘述。
本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图9示出了可以用来实施本公开的实施例的示例电子设备900的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图9所示,设备900包括计算单元901,其可以根据存储在只读存储器(ROM)902中的计算机程序或者从存储单元908加载到随机访问存储器(RAM)903中的计算机程序,来执行各种适当的动作和处理。在RAM 903中,还可存储设备900操作所需的各种程序和数据。计算单元901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
设备900中的多个部件连接至I/O接口905,包括:输入单元906,例如键盘、鼠标等;输出单元907,例如各种类型的显示器、扬声器等;存储单元908,例如磁盘、光盘等;以及通信单元909,例如网卡、调制解调器、无线通信收发机等。通信单元909允许设备900通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元901可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元901的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元901执行上文所描述的各个方法和处理,例如本公开的上述方法。例如,在一些实施例中,本公开的上述方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元908。在一些实施例中,计算机程序的部分或者全部可以经由ROM 902和/或通信单元909而被载入和/或安装到设备900上。当计算机程序加载到RAM 903并由计算单元901执行时,可以执行上文描述的本公开的上述方法的一个或多个步骤。备选地,在其他实施例中,计算单元901可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行本公开的上述方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (35)
1.一种基于特征的分箱处理方法,包括:
获取分箱处理所要参考的特征;
基于联邦学习系统中各参与方节点中所述特征的字段以及所述特征对应的样本数据的分布情况,确定联邦学习的场景;
基于各所述参与方节点上的样本数据中所述特征对应的特征值的分布属性或者预设的分箱需求,并参考所述联邦学习的场景,确定分箱类型;
采用所述分箱类型,对所述联邦学习系统中的各所述参与方节点上的所述特征进行分箱处理。
2.根据权利要求1所述的方法,其中,基于联邦学习系统中各参与方节点中所述特征的字段以及所述特征对应的样本数据的分布情况,确定联邦学习的场景,包括:
若不同所述参与节点中的不同标识的所述样本数据中包括的特征字段的重叠比例大于预设比例阈值,确定所述联邦学习的场景为横向联邦学习;或者
若所述联邦学习系统中不同所述参与方节点中包括的样本数据的标识重叠比例大于所述预设比例阈值,确定所述联邦学习的场景为纵向联邦学习。
3.根据权利要求2所述的方法,其中,确定所述联邦学习的场景为横向联邦学习之后,采用所述分箱类型,对所述联邦学习系统中的各所述参与方节点上的所述特征进行分箱处理之前,所述方法包括:
对所述联邦学习系统中不同所述参与方节点中包括的所有样本数据进行特征对齐处理;或
确定所述联邦学习的场景为纵向联邦学习之后,采用所述分箱类型,基于所述特征对所述联邦学习系统中的各所述参与方节点上的特征值进行分箱处理之前,所述方法包括:
对所述联邦学习系统中不同所述参与方节点中包括的所有样本数据进行样本对齐处理。
4.根据权利要求3所述的方法,其中,基于各所述参与方节点上的样本数据中所述特征对应的特征值的分布属性或者预设的分箱需求,并参考所述联邦学习的场景,确定分箱类型,包括:
若所述联邦学习的场景为横向联邦学习,所述联邦学习系统中各所述参与方节点上的样本数据中所述特征对应的特征值分布均匀,确定所述分箱类型为横向等宽分箱;
若所述联邦学习的场景为横向联邦学习,所述联邦学习系统中各所述参与方节点上的样本数据中所述特征对应的特征值集中分布在预设的多个区间内,确定所述分箱类型为横向等频分箱;
若所述联邦学习的场景为横向联邦学习,预先设置的分箱需求包括拟合优度和/独立性检验需求,确定所述分箱类型为横向卡方分箱;或者
若所述联邦学习的场景为纵向联邦学习,预设的分箱需求包括拟合优度和/独立性检验需求,确定所述分箱类型为纵向卡方分箱。
5.根据权利要求3所述的方法,其中,基于各所述参与方节点上的样本数据中所述特征对应的特征值的分布属性或者预设的分箱需求,并参考所述联邦学习的场景,确定分箱类型,包括:
基于各所述参与方节点上的样本数据中所述特征对应的特征值的分布属性和/或预设的分箱需求,并参考所述联邦学习的场景,采用预先训练的分箱类型确定模型,确定所述分箱类型。
6.根据权利要求4或5所述的方法,其中,采用所述分箱类型,对所述联邦学习系统中的各所述参与方节点上的所述特征进行分箱处理,包括:
若所述分箱类型为横向等宽分箱时,在各所述参与方节点本地计算所述特征对应的所述特征值的最大值和最小值;
通过多方安全计算技术,基于各所述参与方本地的所述特征值的最大值和最小值,在各所述参与方节点本地获取所述特征值的全局最大值和全局最小值;
在各所述参与方节点本地,根据预设的分箱数目、以及所述特征值的全局最大值和全局最小值,确定各所述分箱的分箱点对应的特征值,得到分箱点集合;
在各所述参与方节点本地,根据所述分箱点集合,对本地的所述特征值进行分箱处理。
7.根据权利要求4或5所述的方法,其中,采用所述分箱类型,对所述联邦学习系统中的各所述参与方节点上的所述特征进行分箱处理,包括:
若所述分箱类型为横向等频分箱时,在各所述参与方节点本地按照所述特征对应的特征值的大小对本地的各所述特征值进行排序;并统计样本数目;
在各所述参与方节点本地,基于预设的分箱数目、所述样本数目,按照等频分箱的方式,确定各所述分箱的分箱点对应的所述特征值,得到本地的分箱点集合;
在各所述参与方节点本地,通过多方安全计算技术,基于各参与方节点的所述分箱点集合,更新本地的所述分箱点集合;
在各所述参与方节点本地,根据更新的所述分箱点集合,对本地的所述特征值进行分箱处理。
8.根据权利要求7所述的方法,其中,在各所述参与方节点本地,通过多方安全计算技术,基于各参与方节点的所述分箱点集合,更新本地的所述分箱点集合包括:
在各所述参与方节点本地,通过多方安全计算技术,基于各参与方节点的所述分箱点集合中相同频率的各分箱点对应的最大特征值和最小特征值,获取对应的分箱点的参考特征值;
在各所述参与方节点本地,根据各所述分箱点的参考特征值,重新统计各所述分箱的特征值的数目;
在各所述参与方节点本地,基于重新统计的各所述分箱的特征值的数目、各所述分箱点的全局特征值、所述最大特征值、所述最小特征值、所述预设的分箱数目以及所述样本数目,对本地的所述分箱点集合中各所述分箱点对应的特征值进行更新。
9.根据权利要求8所述的方法,其中,在各所述参与方节点本地,通过多方安全计算技术,基于各参与方节点的所述分箱点集合,更新本地的所述分箱点集合之后,在各所述参与方节点本地,根据更新的所述分箱点集合,基于所述特征对本地的所述特征值进行分箱处理之前,所述方法还包括:
检测并确定更新后的所述分箱点集合中各所述分箱点对应的特征值,相对于更新前的所述分箱点的特征值的绝对值误差小于预设阈值。
10.根据权利要求8所述的方法,其中,所述方法还包括:
若更新后的所述分箱点集合中各所述分箱点的特征值,相对于更新前的对应的所述分箱点的特征值的绝对值误差不小于所述预设阈值,继续在各所述参与方节点本地,通过多方安全计算技术,基于各参与方节点的所述分箱点集合,更新本地的所述分箱点集合。
11.根据权利要求4或5所述的方法,其中,采用所述分箱类型,对所述联邦学习系统中的各所述参与方节点上的所述特征进行分箱处理,包括:
若所述分箱类型为横向卡方分箱时,通过多方安全计算技术,基于各所述参与方节点本地的所述特征对应的特征值的大小,对所有参与方的所述特征值进行全局排序;并统计样本数目;
在各所述参与方节点本地,依据所述全局排序结果,将各所述特征值划分至一个分箱内;
基于多方安全计算技术,在各所述参与方节点本地,计算各对相邻的所述分箱之间的卡方值;
将所述卡方值最小的一对相邻的所述分箱合并。
12.根据权利要求11所述的方法,其中,将所述卡方值最小的一对相邻的所述分箱合并之后,所述方法还包括:
继续基于多方安全计算技术,在各所述参与方节点本地,计算各对相邻的所述分箱之间的卡方值;
检测最小的所述卡方值是否超过预设指定阈值、或者所述分箱的数目是否小于预设指定数目;
若是,确定各所述分箱;
若不是,将所述卡方值最小的一对相邻的所述分箱合并。
13.根据权利要求11所述的方法,其中,基于多方安全计算技术,在各所述参与方节点本地,计算各对相邻的所述分箱之间的卡方值,包括:
通过多方安全计算技术,在各所述参与方节点本地,统计各所述分箱内的所述特征值对应的各类标签的样本的数目以及各类标签的样本在全局样本中的比例;
通过多方安全计算技术,统计各所述分箱内的所述特征值对应在各所述参与方节点的全局样本数目;
在各所述参与方节点本地,基于各所述分箱内的所述特征值对应的各类标签的样本在全局样本中的比例、各类标签的样本的数目、在各所述参与方节点的全局样本数目以及所述总样本数目,计算各对相邻的所述分箱之间的卡方值。
14.根据权利要求4或5所述的方法,其中,各所述参与方节点包括多个第一参与方节点和第二参与方节点,各所述第一参与方节点中的样本数据中包括有所述特征;所述第二参与方节点中包括有标签数据;采用所述分箱类型,对所述联邦学习系统中的各所述参与方节点上的所述特征进行分箱处理,包括:
若所述分箱类型为纵向卡方分箱时,在各所述第一参与方节点,按照所述特征对应的特征值的大小对所述特征值进行排序;并统计总样本数目;
在各所述第一参与方节点本地,依据排序结果,将所述特征对应的各所述样本数据中的特征值划分至一个分箱内;
在各所述第一参与方节点本地,参考所述第二参与方节点中的标签的样本标识,计算各对相邻的所述分箱之间的卡方值;
将所述卡方值最小的一对相邻的所述分箱合并。
15.根据权利要求14所述的方法,其中,将所述卡方值最小的一对相邻的所述分箱合并之后,所述方法还包括:
继续在各所述第一参与方节点本地,参考所述第二参与方节点中的标签的样本标识,计算合并后各对相邻的所述分箱之间的卡方值;
检测最小的所述卡方值是否超过预设指定阈值、或者所述分箱的数目是否小于预设指定数目;
若是,确定各所述分箱;
若不是,将所述卡方值最小的一对相邻的所述分箱合并。
16.根据权利要求14所述的方法,其中,在各所述第一参与方节点本地,参考所述第二参与方节点中的标签的样本标识,计算各对相邻的所述分箱之间的卡方值,包括:
在各所述第一参与方节点本地,取各所述分箱内的所述特征值对应的所述样本数据的标识与所述第二参与方节点中的标签的样本标识的交集,得到交集样本标识;
在所述第二参与方节点本地,根据所述交集样本标识,统计各所述分箱内的所述特征值对应的各类标签的样本数目以及各类标签的样本在全局样本中的比例;
在所述第二参与方节点本地,向各所述第一参与方节点发送各所述分箱内的所述特征值对应的各类标签的样本数目以及各类标签的样本在全局样本中的比例;
在各所述第一参与方节点本地,基于各所述分箱内的所述特征值对应的各类标签的样本在全局样本中的比例、各类标签的样本数目、各所述第一参与方节点本地的样本数目以及所述总样本数目,计算各对相邻的所述分箱之间的卡方值。
17.一种基于特征的分箱处理装置,包括:
特征获取模块,用于获取分箱处理所要参考的特征;
第一确定模块,用于基于联邦学习系统中各参与方节点中所述特征的字段以及所述特征对应的样本数据的分布情况,确定联邦学习的场景;
第二确定模块,用于基于各所述参与方节点上的样本数据中所述特征对应的特征值的分布属性或者预设的分箱需求,并参考所述联邦学习的场景,确定分箱类型;
分箱处理模块,用于采用所述分箱类型,对所述联邦学习系统中的各所述参与方节点上的所述特征进行分箱处理。
18.根据权利要求17所述的装置,其中,所述第一确定模块,用于:
若不同所述参与节点中的不同标识的所述样本数据中包括的特征字段的重叠比例大于预设比例阈值,确定所述联邦学习的场景为横向联邦学习;或者
若所述联邦学习系统中不同所述参与方节点中包括的样本数据的标识重叠比例大于所述预设比例阈值,确定所述联邦学习的场景为纵向联邦学习。
19.根据权利要求18所述的装置,其中,所述装置还包括:
对齐处理模块,用于对所述联邦学习系统中不同所述参与方节点中包括的所有样本数据进行特征对齐处理;或
对所述联邦学习系统中不同所述参与方节点中包括的所有样本数据进行样本对齐处理。
20.根据权利要求19所述的装置,其中,所述第二确定模块,用于:
若所述联邦学习的场景为横向联邦学习,所述联邦学习系统中各所述参与方节点上的样本数据中所述特征对应的特征值分布均匀,确定所述分箱类型为横向等宽分箱;
若所述联邦学习的场景为横向联邦学习,所述联邦学习系统中各所述参与方节点上的样本数据中所述特征对应的特征值集中分布在预设的多个区间内,确定所述分箱类型为横向等频分箱;
若所述联邦学习的场景为横向联邦学习,预先设置的分箱需求包括拟合优度和/独立性检验需求,确定所述分箱类型为横向卡方分箱;或者
若所述联邦学习的场景为纵向联邦学习,预设的分箱需求包括拟合优度和/独立性检验需求,确定所述分箱类型为纵向卡方分箱。
21.根据权利要求19所述的装置,其中,所述第二确定模块,用于:
基于各所述参与方节点上的样本数据中所述特征对应的特征值的分布属性和/或预设的分箱需求,并参考所述联邦学习的场景,采用预先训练的分箱类型确定模型,确定所述分箱类型。
22.根据权利要求20或21所述的装置,其中,所述分箱处理模块,用于:
若所述分箱类型为横向等宽分箱时,在各所述参与方节点本地计算所述特征对应的所述特征值的最大值和最小值;
通过多方安全计算技术,基于各所述参与方本地的所述特征值的最大值和最小值,在各所述参与方节点本地获取所述特征值的全局最大值和全局最小值;
在各所述参与方节点本地,根据预设的分箱数目、以及所述特征对应的全局最大值和全局最小值,确定各所述分箱的分箱点对应的特征值,得到分箱点集合;
在各所述参与方节点本地,根据所述分箱点集合,基于所述特征对本地的所述特征值进行分箱处理。
23.根据权利要求29或21所述的装置,其中,所述分箱处理模块,用于:
若所述分箱类型为横向等频分箱时,在各所述参与方节点本地按照所述特征对应的特征值的大小对本地的各所述特征值进行排序;并统计样本数目;
在各所述参与方节点本地,基于预设的分箱数目、所述样本数目,按照等频分箱的方式,确定各所述分箱的分箱点对应的所述特征值,得到本地的分箱点集合;
在各所述参与方节点本地,通过多方安全计算技术,基于各参与方节点的所述分箱点集合,更新本地的所述分箱点集合;
在各所述参与方节点本地,根据更新的所述分箱点集合,基于所述特征对本地的所述特征值进行分箱处理。
24.根据权利要求23所述的装置,其中,所述分箱处理模块,用于:
在各所述参与方节点本地,通过多方安全计算技术,基于各参与方节点的所述分箱点集合中相同频率的各分箱点对应的最大特征值和最小特征值,获取对应的分箱点的参考特征值;
在各所述参与方节点本地,根据各所述分箱点的参考特征值,重新统计各所述分箱的特征值的数目;
在各所述参与方节点本地,基于重新统计的各所述分箱的特征值的数目、各所述分箱点的全局特征值、所述最大特征值、所述最小特征值、所述预设的分箱数目以及所述样本数目,对本地的所述分箱点集合中各所述分箱点对应的特征值进行更新。
25.根据权利要求24所述的装置,其中,所述分箱处理模块,还用于:
检测并确定更新后的所述分箱点集合中各所述分箱点对应的特征值,相对于更新前的所述分箱点的特征值的绝对值误差小于预设阈值。
26.根据权利要求24所述的装置,其中,所述分箱处理模块,还用于:
若更新后的所述分箱点集合中各所述分箱点的特征值,相对于更新前的对应的所述分箱点的特征值的绝对值误差不小于所述预设阈值,继续在各所述参与方节点本地,通过多方安全计算技术,基于各参与方节点的所述分箱点集合,更新本地的所述分箱点集合。
27.根据权利要求20或21所述的装置,其中,所述分箱处理模块,用于:
若所述分箱类型为横向卡方分箱时,通过多方安全计算技术,基于各所述参与方节点本地的所述特征对应的特征值的大小,对所有参与方的所述特征值进行全局排序;并统计样本数目;
在各所述参与方节点本地,依据所述全局排序结果,将各所述特征值划分至一个分箱内;
基于多方安全计算技术,在各所述参与方节点本地,计算各对相邻的所述分箱之间的卡方值;
将所述卡方值最小的一对相邻的所述分箱合并。
28.根据权利要求27所述的装置,其中,所述分箱处理模块,还用于:
将所述卡方值最小的一对相邻的所述分箱合并之后,继续基于多方安全计算技术,在各所述参与方节点本地,计算各对相邻的所述分箱之间的卡方值;
检测最小的所述卡方值是否超过预设指定阈值、或者所述分箱的数目是否小于预设指定数目;
若是,确定各所述分箱;
若不是,将所述卡方值最小的一对相邻的所述分箱合并。
29.根据权利要求27所述的装置,其中,所述分箱处理模块,用于:
通过多方安全计算技术,在各所述参与方节点本地,统计各所述分箱内的所述特征值对应的各类标签的样本的数目以及各类标签的样本在全局样本中的比例;
通过多方安全计算技术,统计各所述分箱内的的所述特征值对应在各所述参与方节点的全局样本数目;
在各所述参与方节点本地,基于各所述分箱内的所述特征值对应的各类标签的样本在全局样本中的比例、在各类标签的样本的数目、各所述参与方节点的全局样本数目以及所述总样本数目,计算各对相邻的所述分箱之间的卡方值。
30.根据权利要求20或21所述的装置,其中,各所述参与方节点包括多个第一参与方节点和第二参与方节点,各所述第一参与方节点中的样本数据中包括有所述特征;所述第二参与方节点中包括有标签数据;所述分箱处理模块,用于:
若所述分箱类型为纵向卡方分箱时,在各所述第一参与方节点,按照所述特征对应的特征值的大小对所述特征值进行排序;并统计总样本数目;
在各所述第一参与方节点本地,依据排序结果,将所述特征对应的各所述样本数据中的特征值划分至一个分箱内;
在各所述第一参与方节点本地,参考所述第二参与方节点中的标签的样本标识,计算各对相邻的所述分箱之间的卡方值;
将所述卡方值最小的一对相邻的所述分箱合并。
31.根据权利要求30所述的装置,其中,所述分箱处理模块,还用于:
将所述卡方值最小的一对相邻的所述分箱合并之后,继续在各所述第一参与方节点本地,参考所述第二参与方节点中的标签的样本标识,计算各对相邻的所述分箱之间的卡方值;
检测最小的所述卡方值是否超过预设指定阈值、或者所述分箱的数目是否小于预设指定数目;
若是,确定各所述分箱;
若不是,将所述卡方值最小的一对相邻的所述分箱合并。
32.根据权利要求30所述的装置,其中,所述分箱处理模块,用于:
在各所述第一参与方节点本地,取各所述分箱内的所述特征值对应的所述样本数据的标识与所述第二参与方节点中的标签的样本标识的交集,得到交集样本标识;
在所述第二参与方节点本地,根据所述交集样本标识,统计各所述分箱内的所述特征值对应的各类标签的样本数目以及各类标签的样本在全局样本中的比例;
在所述第二参与方节点本地,向各所述第一参与方节点发送各所述分箱内的所述特征值对应的各类标签的样本数目以及各类标签的样本在全局样本中的比例;
在各所述第一参与方节点本地,基于各所述分箱内的所述特征值对应的各类标签的样本在全局样本中的比例、各类标签的样本数目、各所述第一参与方节点本地的样本数目以及所述总样本数目,计算各对相邻的所述分箱之间的卡方值。
33.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-16中任一项所述的方法。
34.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-16中任一项所述的方法。
35.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-16中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210470050.0A CN114841371A (zh) | 2022-04-28 | 2022-04-28 | 基于特征的分箱处理方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210470050.0A CN114841371A (zh) | 2022-04-28 | 2022-04-28 | 基于特征的分箱处理方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114841371A true CN114841371A (zh) | 2022-08-02 |
Family
ID=82567524
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210470050.0A Pending CN114841371A (zh) | 2022-04-28 | 2022-04-28 | 基于特征的分箱处理方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114841371A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115344894A (zh) * | 2022-10-18 | 2022-11-15 | 翼方健数(北京)信息科技有限公司 | 一种特征工程iv值隐私计算方法及装置 |
CN116521493A (zh) * | 2022-12-02 | 2023-08-01 | 北京小米移动软件有限公司 | 故障检测方法、装置及存储介质 |
-
2022
- 2022-04-28 CN CN202210470050.0A patent/CN114841371A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115344894A (zh) * | 2022-10-18 | 2022-11-15 | 翼方健数(北京)信息科技有限公司 | 一种特征工程iv值隐私计算方法及装置 |
CN116521493A (zh) * | 2022-12-02 | 2023-08-01 | 北京小米移动软件有限公司 | 故障检测方法、装置及存储介质 |
CN116521493B (zh) * | 2022-12-02 | 2024-02-13 | 北京小米移动软件有限公司 | 故障检测方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114841371A (zh) | 基于特征的分箱处理方法、装置、设备及介质 | |
CN113343803A (zh) | 模型训练方法、装置、设备和存储介质 | |
CN114648676B (zh) | 点云处理模型的训练和点云实例分割方法及装置 | |
CN113362314B (zh) | 医学图像识别方法、识别模型训练方法及装置 | |
CN112052960A (zh) | 纵向联邦建模方法、装置、设备及计算机可读存储介质 | |
CN109858282A (zh) | 一种社交网络关系数据隐私保护方法及系统 | |
CN113627536A (zh) | 模型训练、视频分类方法,装置,设备以及存储介质 | |
CN113705362A (zh) | 图像检测模型的训练方法、装置、电子设备及存储介质 | |
CN115829058A (zh) | 训练样本处理方法、跨模态匹配方法、装置、设备和介质 | |
CN112990583A (zh) | 一种数据预测模型的入模特征确定方法及设备 | |
CN113033408B (zh) | 数据队列动态更新方法、装置、电子设备及存储介质 | |
CN110288026A (zh) | 一种基于度量关系图学习的图像分割方法及装置 | |
CN109118122A (zh) | 基于混合PSO-Adam神经网络的外协供应商评价方法 | |
CN114139052B (zh) | 用于智能推荐的排序模型训练方法、智能推荐方法及装置 | |
CN114494782B (zh) | 图像处理方法、模型训练方法、相关装置及电子设备 | |
CN113139483B (zh) | 人体行为识别方法、装置、设备、存储介质以及程序产品 | |
CN116401372A (zh) | 知识图谱表示学习方法、装置、电子设备及可读存储介质 | |
CN112070487B (zh) | 基于ai的rpa流程的生成方法、装置、设备及介质 | |
CN104391887B (zh) | 一种基于网络结构优化的节点属性划分朋友圈的方法 | |
CN114970495A (zh) | 人名消歧方法、装置、电子设备及存储介质 | |
CN108287817A (zh) | 一种信息处理方法及设备 | |
CN109584047B (zh) | 一种授信方法、系统、计算机设备及介质 | |
CN114844889B (zh) | 视频处理模型的更新方法、装置、电子设备及存储介质 | |
CN115730681B (zh) | 模型训练方法、装置、设备以及存储介质 | |
CN114971878B (zh) | 风险评估方法、风险评估装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |