CN116719627B - 数据处理方法、装置、设备及存储介质 - Google Patents
数据处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116719627B CN116719627B CN202310993596.9A CN202310993596A CN116719627B CN 116719627 B CN116719627 B CN 116719627B CN 202310993596 A CN202310993596 A CN 202310993596A CN 116719627 B CN116719627 B CN 116719627B
- Authority
- CN
- China
- Prior art keywords
- data set
- algorithm
- data
- processed
- result
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 37
- 238000012795 verification Methods 0.000 claims abstract description 266
- 238000012545 processing Methods 0.000 claims abstract description 218
- 238000000034 method Methods 0.000 claims abstract description 113
- 230000008569 process Effects 0.000 claims abstract description 72
- 238000010200 validation analysis Methods 0.000 claims abstract description 33
- 230000003993 interaction Effects 0.000 claims description 200
- 238000004590 computer program Methods 0.000 claims description 26
- 238000012856 packing Methods 0.000 claims description 15
- 230000004044 response Effects 0.000 claims description 12
- 238000004806 packaging method and process Methods 0.000 claims description 9
- 238000012360 testing method Methods 0.000 description 28
- 238000010586 diagram Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 14
- 238000004458 analytical method Methods 0.000 description 10
- 238000013473 artificial intelligence Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 230000009286 beneficial effect Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 6
- 230000002452 interceptive effect Effects 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 230000008520 organization Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 208000033748 Device issues Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了一种数据处理方法、装置、设备及存储介质。其中方法包括:获取第一算法组件的契约实例,第一算法组件包含用于执行联邦任务的N个子逻辑,第一算法组件的契约实例包括第一验证数据集,第一验证数据集由N个子逻辑对第一待处理数据集进行处理得到,获取角色配置信息,角色配置信息用于指示M个算法组件执行联邦任务的协同方式,按照角色配置信息,调用M个算法组件对第一待处理数据集进行处理,得到第一待处理数据集的结果数据集,基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果。可见,通过对比第一验证数据集和结果数据集(如检验一致性),来确定多个算法组件间的兼容性。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种数据处理方法、一种数据处理装置、一种计算机设备及一种计算机可读存储介质。
背景技术
随着科技研究的进步,越来越多的业务从线下转移至线上。在涉及多方的线上业务处理过程中,通常需要联合多方提供的算法组件来对相关业务数据进行处理。研究发现,由于算法组件的实现方案多样(如针对同一业务各方提供的算法组件不同),且算法实现本身较为复杂(如涉及加密、跨网通信、分布式计算等),在各方未公开算法组件的情况下,如何确定各方的算法组件间的兼容性(实现算法的互联互通)成为目前研究的热门问题。
发明内容
本申请实施例提供了一种数据处理方法、装置、设备及计算机可读存储介质,能够确定多个算法组件间的兼容性。
一方面,本申请实施例提供了一种数据处理方法,包括:
获取第一算法组件的契约实例,第一算法组件包含N个子逻辑,N个子逻辑用于执行联邦任务,一个子逻辑对应联邦任务中的一个子任务;第一算法组件的契约实例包括第一算法组件对应的第一算法契约和第一验证数据集,第一算法契约包括第一待处理数据集,第一验证数据集由N个子逻辑对第一待处理数据集进行处理得到的,N为大于1的整数;
获取角色配置信息,角色配置信息用于指示M个算法组件执行联邦任务的协同方式;联邦任务的N个子任务由M个算法组件执行,M个算法组件均按照第一算法契约开发得到,M个算法组件包括第一算法组件,M为大于1且小于等于N的整数;
按照角色配置信息,调用M个算法组件对第一待处理数据集进行处理,得到第一待处理数据集的结果数据集;
基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果。
本申请实施例中,获取第一算法组件的契约实例,第一算法组件包含N个子逻辑,N个子逻辑用于执行联邦任务,第一算法组件的契约实例包括第一算法组件对应的第一算法契约和第一验证数据集,第一验证数据集由N个子逻辑对第一待处理数据集进行处理得到,获取角色配置信息,角色配置信息用于指示M个算法组件执行联邦任务的协同方式,按照角色配置信息,调用M个算法组件对第一待处理数据集进行处理,得到第一待处理数据集的结果数据集,基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果。可见,通过对比第一验证数据集和结果数据集(如检验一致性),可以确定多个算法组件间的兼容性。
一方面,本申请实施例提供了一种数据处理方法,包括:
获取第一算法组件的第一契约实例和第二算法组件的第二契约实例,第一算法组件和第二算法组件均按照目标算法契约开发得到;目标算法契约包括待处理数据集;第一契约实例包括第一验证数据集,第一验证数据集是由第一算法组件中包含的N个子逻辑对待处理数据集进行处理得到的;第二契约实例包括第二验证数据集,第二验证数据集是由第二算法组件中包含的N个子逻辑对待处理数据集进行处理得到的;
基于第一验证数据集和第二验证数据集,确定第一算法组件和第二算法组件之间的兼容性。
本申请实施例中,获取第一算法组件的第一契约实例和第二算法组件的第二契约实例,第一算法组件和第二算法组件均按照目标算法契约开发得到,第一契约实例包括第一验证数据集,第一验证数据集是由第一算法组件中包含的N个子逻辑对待处理数据集进行处理得到的,第二契约实例包括第二验证数据集,第二验证数据集是由第二算法组件中包含的N个子逻辑对待处理数据集进行处理得到的,基于第一验证数据集和第二验证数据集,确定第一算法组件和第二算法组件之间的兼容性。可见,通过对比多个算法组件的验证数据集(如检验一致性),可以确定多个算法组件间的兼容性。
一方面,本申请实施例提供了一种数据处理装置,该数据处理装置包括:
获取单元,用于获取第一算法组件的契约实例,第一算法组件包含N个子逻辑,N个子逻辑用于执行联邦任务,一个子逻辑对应联邦任务中的一个子任务;第一算法组件的契约实例包括第一算法组件对应的第一算法契约和第一验证数据集,第一算法契约包括第一待处理数据集,第一验证数据集由N个子逻辑对第一待处理数据集进行处理得到的,N为大于1的整数;
以及用于获取角色配置信息,角色配置信息用于指示M个算法组件执行联邦任务的协同方式;联邦任务的N个子任务由M个算法组件执行,M个算法组件均按照第一算法契约开发得到,M个算法组件包括第一算法组件,M为大于1且小于等于N的整数;
处理单元,用于按照角色配置信息,调用M个算法组件对第一待处理数据集进行处理,得到第一待处理数据集的结果数据集;
以及用于基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果。
在一种实施方式中,第一验证数据集包括第一待处理数据集的验证结果和N个子逻辑间的第一交互数据;结果数据集包括第一待处理数据集的处理结果,以及M个算法组件在处理第一待处理数据集的过程中得到的第二交互数据;
处理单元用于,基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果,具体用于:
若第一待处理数据集的处理结果与验证结果匹配,且第一交互数据与第二交互数据匹配,则判定M个算法组件在角色配置信息指示的协同方式下兼容;
若第一待处理数据集的处理结果与验证结果不匹配,或者第一交互数据与第二交互数据不匹配,则判定M个算法组件在角色配置信息指示的协同方式下不兼容。
在一种实施方式中,处理结果、验证结果、第一交互数据和第二交互数据均包括数据类型和数值;处理单元还用于:
若第一待处理数据集的处理结果的数据类型与验证结果的数据类型相同,且第一待处理数据集的处理结果的数值与验证结果的数值相同,则判定第一待处理数据集的处理结果与验证结果匹配;
若第一交互数据与第二交互数据的数据类型相同,且第一交互数据与第二交互数据的数值相同,则判定第一交互数据与第二交互数据匹配。
在一种实施方式中,第一验证数据集包括第一待处理数据集的验证结果;结果数据集包括第一待处理数据集的处理结果;处理单元用于,基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果,具体用于:
若第一待处理数据集的处理结果与验证结果匹配,则判定M个算法组件在角色配置信息指示的协同方式下兼容;
若第一待处理数据集的处理结果与验证结果不匹配,则判定M个算法组件在角色配置信息指示的协同方式下不兼容。
在一种实施方式中,第一验证数据集包括N个子逻辑间的第一交互数据;结果数据集包括M个算法组件在处理第一待处理数据集的过程中生成的第二交互数据;处理单元用于,基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果,具体用于:
若第一交互数据与第二交互数据匹配,则判定M个算法组件在角色配置信息指示的协同方式下兼容;
若第一交互数据与第二交互数据不匹配,则判定M个算法组件在角色配置信息指示的协同方式下不兼容。
在一种实施方式中,处理单元用于,按照角色配置信息,调用M个算法组件对第一待处理数据集进行处理,得到第一待处理数据集的结果数据集,具体用于:
向联邦任务调度器发送任务请求信息,以使联邦任务调度器基于任务请求信息调用M个算法组件对第一待处理数据集进行处理,并返回第一待处理数据集的结果数据集;
其中,任务请求信息包括第一待处理数据集,以及角色配置信息;联邦任务调度器通过调用数据交互记录模块记录M个算法组件在处理第一待处理数据集的过程中生成的第二交互数据。
在一种实施方式中,M个算法组件中的每个算法组件均包含N个子逻辑;联邦任务调度器基于任务请求信息调用M个算法组件对第一待处理数据集进行处理的过程包括:
若角色配置信息指示联邦任务中的第i个子任务由第j个算法组件执行,则调用第j个算法组件的第i个子逻辑基于第一待处理数据集执行第i个子任务,i为小于等于N的正整数,j为小于等于M的正整数。
在一种实施方式中,处理单元还用于:
响应于第二算法组件满足契约实例生成条件,获取第二算法组件对应的第二算法契约和第一描述信息,第二算法契约包括第二待处理数据集;第一描述信息用于指示第二算法组件的待处理数据集所需符合的数据规则;
若第二待处理数据集符合第一描述信息指示的数据规则,则采用第二算法组件对第二待处理数据集进行处理,得到结果信息;
若结果信息满足打包条件,则对结果信息和第二待处理数据集进行打包,得到第二算法组件的契约实例。
在一种实施方式中,结果信息包括第二待处理数据集的执行结果标识,第二待处理数据集的处理结果,以及第二算法组件在处理第二待处理数据集的过程中生成的第三交互数据;第二算法契约还包括第二描述信息,第二描述信息用于描述第二待处理数据集的样本结果和第二待处理数据集在处理过程中涉及的样本交互数据;处理单元还用于:
若第二待处理数据集的执行结果标识指示第二待处理数据集成功执行,且第二待处理数据集的处理结果与样本结果匹配,且第三交互数据与样本交互数据匹配,则判定结果信息满足打包条件。
在一种实施方式中,处理单元还用于:
对第二算法组件的契约实例进行注册处理;
响应于第二算法组件的契约实例完成注册,发布第二算法组件的契约实例。
一方面,本申请实施例提供了一种数据处理装置,该数据处理装置包括:
获取单元,用于获取第一算法组件的第一契约实例和第二算法组件的第二契约实例,第一算法组件和第二算法组件均按照目标算法契约开发得到;目标算法契约包括待处理数据集;第一契约实例包括第一验证数据集,第一验证数据集是由第一算法组件中包含的N个子逻辑对待处理数据集进行处理得到的;第二契约实例包括第二验证数据集,第二验证数据集是由第二算法组件中包含的N个子逻辑对待处理数据集进行处理得到的;
处理单元,用于基于第一验证数据集和第二验证数据集,确定第一算法组件和第二算法组件之间的兼容性。
在一种实施方式中,处理单元用于,基于第一验证数据集和第二验证数据集,确定第一算法组件和第二算法组件之间的兼容性,具体用于:
若第一验证数据集与第二验证数据集匹配,则判定第一算法组件和第二算法组件相互兼容;
若第一验证数据集与第二验证数据集不匹配,则判定第一算法组件和第二算法组件相互不兼容。
在一种实施方式中,第一验证数据集包括待处理数据集的第一验证结果和第一算法组件的各个子逻辑间的第一交互数据;第二验证数据集包括待处理数据集的第二验证结果和第二算法组件的各个子逻辑间的第二交互数据;处理单元还用于:
若第一验证结果与第二验证结果相同,且第一交互数据与第二交互数据相同,则判定第一验证数据集与第二验证数据集匹配;
若第一验证结果与第二验证结果不相同,或者第一交互数据与第二交互数据不相同,则判定第一验证数据集与第二验证数据集不匹配。
在一种实施方式中,处理单元还用于:
对第一契约实例和第二契约实例进行注册处理;
响应于第一契约实例和第二契约实例完成注册,发布第一契约实例和第二契约实例,并将第一算法组件和第二算法组件的可执行文件添加至可执行文件仓库中。
相应地,本申请提供了一种计算机设备,该计算机设备包括:
存储器,存储器中存储有计算机程序;
处理器,用于加载计算机程序实现上述数据处理方法。
相应地,本申请提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,该计算机程序适于由处理器加载并执行上述数据处理方法。
相应地,本申请提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述数据处理方法。
本申请实施例中,获取第一算法组件的契约实例,第一算法组件包含N个子逻辑,N个子逻辑用于执行联邦任务,第一算法组件的契约实例包括第一算法组件对应的第一算法契约和第一验证数据集,第一验证数据集由N个子逻辑对第一待处理数据集进行处理得到,获取角色配置信息,角色配置信息用于指示M个算法组件执行联邦任务的协同方式,按照角色配置信息,调用M个算法组件对第一待处理数据集进行处理,得到第一待处理数据集的结果数据集,基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果;或者,获取第一算法组件的第一契约实例和第二算法组件的第二契约实例,第一算法组件和第二算法组件均按照目标算法契约开发得到,第一契约实例包括第一验证数据集,第一验证数据集是由第一算法组件中包含的N个子逻辑对待处理数据集进行处理得到的,第二契约实例包括第二验证数据集,第二验证数据集是由第二算法组件中包含的N个子逻辑对待处理数据集进行处理得到的,基于第一验证数据集和第二验证数据集,确定第一算法组件和第二算法组件之间的兼容性。可见,通过算法组件的契约实例,可以确定多个算法组件间的兼容性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1 为本申请实施例提供的一种数据处理场景图;
图2为本申请实施例提供的一种数据处理方法的流程图;
图3a为本申请实施例提供的一种算法组件与算法契约的关系示意图;
图3b为本申请实施例提供的一种兼容性验证示意图;
图4为本申请实施例提供的另一种数据处理方法的流程图;
图5a为本申请实施例提供的一种契约实例打包流程示意图;
图5b为本申请实施例提供的一种算法组件发布示意图;
图5c为本申请实施例提供的一种算法组件的开发及验证架构图;
图6为本申请实施例提供的再一种数据处理方法的流程图;
图7为本申请实施例提供的一种通过第三方平台确定算法组件间的兼容性的示意图;
图8为本申请实施例提供的一种数据处理装置的结构示意图;
图9为本申请实施例提供的另一种数据处理装置的结构示意图;
图10为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请涉及与人工智能相关的技术,下面对涉及的相关技术进行简单介绍:
人工智能(Artificial Intelligence,AI):所谓AI是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。本申请实施例主要涉及通过分析模型对算法组件的契约实例和角色配置信息进行分析,得到算法组件在角色配置信息指示的协同方式下的兼容结果。
AI技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大应用程序的处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。本申请实施例主要涉及基于样本数据集对分析模型进行训练,以进一步提高分析模型的预测结果的准确率。
基于上述与人工智能相关的技术,本申请实施例提供了一种数据处理方案,可以确定多个算法组件间的兼容性。图1为本申请实施例提供的一种数据处理场景图,如图1所示,本申请提供的数据处理场景中包括计算机设备101和计算机设备102,本申请提供的数据处理方案可由计算机设备101执行,也可以由计算机设备102执行。计算机设备101和计算机设备102可以是终端设备,也可以是服务器。其中,终端设备可以包括但不限于:智能手机(如Android手机、IOS手机等)、平板电脑、便携式个人计算机、移动互联网设备(MobileInternet Devices,简称MID)、车载终端、智能家电、可穿戴设备等,本申请实施例对此不做限定。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器,本申请实施例对此不做限定。
需要说明的是,图1中计算机设备的数量仅用于举例,并不构成本申请的实际限定;例如,图1中还可以包括计算机设备103,计算机设备104等。计算机设备101和计算机设备102之间可以通过有线或无线的方式进行连接,本申请对此不作限制。
下面以计算机设备101执行本申请提供的数据处理方案为例,对本申请提供的数据处理方案的大致流程进行说明:
(1)计算机设备101获取第一算法组件的契约实例。第一算法组件可以用于处理联邦任务;也就是说,第一算法组件包含联邦任务的处理逻辑。在一个实施例中,第一算法组件的处理逻辑包含用于执行联邦任务的N个子任务的N个子逻辑,一个子逻辑对应联邦任务中的一个子任务;其中,对应关系可以理解为:若联邦任务中的第i个子任务由第一算法组件中的第j个子逻辑执行,则联邦任务中的第i个子任务与第一算法组件中的第j个子逻辑对应。简单来说,联邦任务包含N个子任务(各个子任务可以是顺序执行,也可以是并列执行,本申请对此不作限制),联邦任务中的N个子任务可以由第一算法组件中的N个子逻辑执行,N为大于1的整数。第一算法组件的契约实例包括第一算法组件对应的第一算法契约(即第一算法组件是按照第一算法契约开发得到)和第一验证数据集。第一算法契约包括第一待处理数据集(即测试用例),第一验证数据集是由第一算法组件(N个子逻辑)对第一待处理数据集进行处理得到的。具体来说,算法契约用于定义算法组件的开发规范,以及相关的测试用例(如用于测试算法组件的第一待处理数据集)。
在一种实施方式中,第一算法组件的契约实例可以由计算机设备102在完成契约实例注册后发布。在一个实施例中,计算机设备102获取第一算法组件对应的第一算法契约和第三描述信息,第一算法契约包括第一待处理数据集;第三描述信息用于指示第一算法组件的待处理数据集所需符合的数据规则。第三描述信息可以包括以下至少一项:输入数据和参数的类型、输入数据和参数的长度、输入数据和参数的取值范围、输入数据和参数的传输路径。若第一待处理数据集符合第三描述信息指示的数据规则,则计算机设备102采用第一算法组件对第一待处理数据集进行处理,得到结果信息。进一步地,若结果信息满足打包条件,则计算机设备102对结果信息和第一待处理数据集进行打包,得到第一算法组件的契约实例。
(2)计算机设备101获取角色配置信息,角色配置信息用于指示M个算法组件执行联邦任务的协同方式,M个算法组件均按照第一算法契约开发得到,M个算法组件包括第一算法组件,M为大于1且小于等于N的整数。也就是说,联邦任务除了可以通一个算法组件单独执行以外,还可以通过至少两个(兼容的)算法组件协同执行。
(3)计算机设备101按照角色配置信息,调用M个算法组件对第一待处理数据集进行处理,得到第一待处理数据集的结果数据集。在一种实施方式中,计算机设备101向联邦任务调度器发送任务请求信息,以使联邦任务调度器基于任务请求信息调用M个算法组件对第一待处理数据集进行处理,并返回第一待处理数据集的结果数据集;其中,任务请求信息包括第一待处理数据集,以及角色配置信息,联邦任务调度器通过调用数据交互记录模块记录M个算法组件在处理第一待处理数据集的过程中生成的第二交互数据。
(4)计算机设备101基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果。在一种实施方式中,第一验证数据集包括第一待处理数据集的验证结果和各个子逻辑间的第一交互数据,结果数据集包括第一待处理数据集的处理结果,以及在处理第一待处理数据集的过程中生成的第二交互数据。若第一待处理数据集的处理结果与验证结果匹配,且第一交互数据与第二交互数据匹配,则计算机设备101判定M个算法组件在角色配置信息指示的协同方式下兼容。相应地,若第一待处理数据集的处理结果与验证结果不匹配,或者第一交互数据与第二交互数据不匹配,则计算机设备101判定M个算法组件在角色配置信息指示的协同方式下不兼容。
本申请实施例中,获取第一算法组件的契约实例,第一算法组件包含N个子逻辑,N个子逻辑用于执行联邦任务,第一算法组件的契约实例包括第一算法组件对应的第一算法契约和第一验证数据集,第一验证数据集由N个子逻辑对第一待处理数据集进行处理得到,获取角色配置信息,角色配置信息用于指示M个算法组件执行联邦任务的协同方式,按照角色配置信息,调用M个算法组件对第一待处理数据集进行处理,得到第一待处理数据集的结果数据集,基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果。可见,通过对比第一验证数据集和结果数据集(如检验一致性),可以确定多个算法组件间的兼容性。
基于上述数据处理方案,本申请实施例提出更为详细的数据处理方法,下面将结合附图对本申请实施例提出的数据处理方法进行详细介绍。
请参阅图2,图2为本申请实施例提供的一种数据处理方法的流程图,该数据处理方法可以由计算机设备执行;例如,由图1中所示的计算机设备101,或者计算机设备102执行。如图2所示,该数据处理方法可包括如下步骤S201-S204:
S201、获取第一算法组件的契约实例。
第一算法组件可以是新开发的算法组件,也可以是对已有算法组件进行更新后得到的算法组件,本申请对此不作限制。第一算法组件是由组件发布设备发布的(如除计算机设备以外的其他计算机设备)。第一算法组件可以用于处理联邦任务;也就是说,第一算法组件包含联邦任务的处理逻辑。在一个实施例中,第一算法组件的处理逻辑包含用于执行联邦任务的N个子任务的N个子逻辑,一个子逻辑对应联邦任务中的一个子任务;其中,对应关系可以理解为:若联邦任务中的第i个子任务由第一算法组件中的第j个子逻辑执行,则联邦任务中的第i个子任务与第一算法组件中的第j个子逻辑对应。简单来说,联邦任务包含N个子任务(各个子任务可以是顺序执行,也可以是并列执行,本申请对此不作限制),联邦任务中的N个子任务可以由第一算法组件中的N个子逻辑执行,N为大于1的整数。
第一算法组件的契约实例包括第一算法组件对应的第一算法契约(即第一算法组件是按照第一算法契约开发得到)和第一验证数据集。具体来说,算法契约用于定义算法组件的开发规范,以及相关的测试用例(用于测试算法组件)。第一算法契约包括第一待处理数据集,第一验证数据集是由第一算法组件(N个子逻辑)对第一待处理数据集进行处理得到的。
图3a为本申请实施例提供的一种算法组件与算法契约的关系示意图。如图3a所示,各个平台进行算法组件实现的过程需要遵循算法契约中的规范,而开发算法组件具体采用的技术方案可根据自身情况进行灵活设计实现;例如,各平台可以采用不同的硬件加速方法,或采用不同的分布式框架等。算法契约包括元信息、版本信息、测试用例集(即待处理数据集),以及用于定义算法组件的输入数据、参数、交互数据、数据输出。具体来说,元信息可以包括但不限于安全模型假设、加密算法类型等;版本信息包括协议族和版本号,协议族用于标识算法契约适用的算法类型,如联邦逻辑回归、联邦树模型等;版本号用于指示算法契约的版本;测试用例集包括基于输入数据和参数定义的一个或多个测试用例;输入数据用于标识算法组件在运行时各子逻辑(角色)接收的输入数据,包括但不限于数据文件、模型文件的路径、类型、是否必选等;参数用于标识算法组件的输入参数、数据类型及参数是否为必选,参数可以包括但不限于算法参数、资源参数等会影响算法组件运行的参数;数据输出用于标识运行算法组件后各个子逻辑输出的数据,数据输出可以包括数据文件、模型文件的路径及类型等;交互数据用于标识算法组件在运行过程中各个子逻辑直接交换的中间数据及其类型。需要说明的是,图3a中算法组件包含的子逻辑的数量仅用于举例,并不构成本申请的实际限定;例如,算法组件中还可以包含子逻辑3等。
S202、获取角色配置信息。
角色配置信息用于指示M个算法组件执行联邦任务的协同方式(即联邦任务中包含的N个子任务分别由指定的算法组件的子逻辑执行),M个算法组件均按照第一算法契约开发得到,M个算法组件包括第一算法组件,M为大于1且小于等于N的整数。也就是说,角色配置信息用于指示多方(至少两方)在协作完成联邦任务时的分工;联邦任务除了可以通一个算法组件单独执行以外,还可以通过至少两个(兼容的)算法组件协同执行。各平台按照统一的算法契约开发算法组件,一方面可以提高算法组件互联互通(相互兼容)的概率,另一方面保留了各个平台实现算法组件的灵活性和扩展性。
在一种实施方式中,角色配置信息可以是开发人员基于实际需求配置的,也可以是计算机设备按照多个算法组件可能存在的兼容方式进行配置的;例如,计算机设备1在获取到计算机设备2提供(发布)的算法组件A的契约实例后,基于联邦任务的分工,生成角色配置信息。
可以理解的是,若多个算法组件在一种角色配置信息的指示下兼容,则可以判定这些算法组件实现了单方兼容;若多个算法组件在各种可能的角色配置信息的指示下均兼容,则可以判定这些算法组件实现了多方兼容。
S203、按照角色配置信息,调用M个算法组件对第一待处理数据集进行处理,得到第一待处理数据集的结果数据集。
第一待处理数据集可以包括M个算法组件执行联邦任务时所需的输入数据和参数。在一种实施方式中,计算机设备向联邦任务调度器发送任务请求信息,以使联邦任务调度器基于任务请求信息(按照角色配置信息)调用M个算法组件对第一待处理数据集进行处理,并返回第一待处理数据集的结果数据集;其中,任务请求信息包括第一待处理数据集,以及角色配置信息,联邦任务调度器通过调用数据交互记录模块记录M个算法组件在处理第一待处理数据集的过程中生成的第二交互数据。在一种实现方式中,计算机设备包括通信模块(用于与除计算机设备以外的其他设备进行通信),数据交互记录模块可以是通信模块中的子模块。
在一个实施例中,每个按照第一算法契约开发的算法组件均包含N个子逻辑,联邦任务调度器基于任务请求信息(按照角色配置信息)调用M个算法组件对第一待处理数据集进行处理的过程包括:若角色配置信息指示联邦任务中的第i个子任务由第j个算法组件执行,则联邦任务调度器调用第j个算法组件的第i个子逻辑基于第一待处理数据集执行第i个子任务;其中,调用第j个算法组件的第i个子逻辑基于第一待处理数据集执行第i个子任务是指:调用第j个算法组件的第i个子逻辑执行第i个子任务,在执行第i个子任务的过程中涉及的参数是基于第一待处理数据集直接或间接得到的,i为小于等于N的正整数,j为小于等于M的正整数。
举例来说,假设联邦任务包含顺序执行的子任务1-子任务3,角色配置信息指示子任务1由算法组件1执行,子任务2由算法组件3执行,子任务3由算法组件2执行;则调用算法组件1的子逻辑1基于第一待处理数据集执行子任务1,调用算法组件3的子逻辑2基于第一待处理数据集和子任务1的交互数据(如子任务1的执行结果)执行子任务2,调用算法组件2的子逻辑3基于第一待处理数据集,以及子任务1和子任务2的交互数据(如子任务2的执行结果)执行子任务3,得到第一待处理数据集的结果数据集。
S204、基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果。
在一种实施方式中,第一验证数据集包括第一待处理数据集的验证结果和第一算法组件包含的N个子逻辑间的第一交互数据,即第一交互数据是第一算法组件包含的N个子逻辑在对第一待处理数据集进行处理的过程中得到的。结果数据集包括第一待处理数据集的处理结果,以及M个算法组件在处理第一待处理数据集的过程中得到的第二交互数据。若第一待处理数据集的处理结果与验证结果匹配,且第一交互数据与第二交互数据匹配,则计算机设备判定M个算法组件在角色配置信息指示的协同方式下兼容。相应地,若第一待处理数据集的处理结果与验证结果不匹配,或者第一交互数据与第二交互数据不匹配,则计算机设备判定M个算法组件在角色配置信息指示的协同方式下不兼容。
在一个实施例中,第一验证数据集的处理结果、第一验证数据集的验证结果、第一交互数据和第二交互数据均包括数据类型和数值。若第一待处理数据集的处理结果的数据类型与第一验证数据集的验证结果的数据类型相同,且第一待处理数据集的处理结果的数值与第一验证数据集的验证结果的数值相同,则计算机设备判定第一待处理数据集的处理结果与验证结果匹配。也就是说,第一待处理数据集的处理结果与验证结果匹配是指第一待处理数据集的处理结果中的数值和数据类型,与第一待处理数据集的验证结果中的数值和数据类型完全相同。类似地,若第一交互数据与第二交互数据的数据类型相同,且第一交互数据与第二交互数据的数值相同,则计算机设备判定第一交互数据与第二交互数据匹配。也就是说,第一交互数据与第二交互数据匹配是指第一交互数据中的数值和数据类型,与第二交互数据中的数值和数据类型完全相同。
图3b为本申请实施例提供的一种兼容性验证示意图。如图3b所示,算法组件1和算法组件2属于不同的平台(机构),契约实例可以是算法组件1的契约实例,也可以是算法组件2的契约实例。联邦任务调度器基于(计算机设备中的)算法契约验证组件发送的任务请求信息,调用算法组件1的子逻辑2和算法组件2的子逻辑1对测试用例中的输入数据和参数(即第一待处理数据集)进行处理,得到第一待处理数据集的处理结果(即实际数据输出),并通过传输层中携带的数据交互记录器记录算法组件1和算法组件2对第一待处理数据集进行处理的过程中得到的第二交互数据(即实际交互数据)。进一步地,通过比较第一交互数据(即期望交互数据)与第二交互数据(即实际交互数据),以及比较第一待处理数据集的验证结果(即期望数据输出)与第一待处理数据集的处理结果(即实际输出),即可确定算法组件1和算法组件2在当前角色配置下的兼容性。
在另一种实施方式中,第一验证数据集包括第一待处理数据集的验证结果;结果数据集包括第一待处理数据集的处理结果。若第一待处理数据集的处理结果与第一待处理数据集的验证结果匹配,则计算机设备判定M个算法组件在角色配置信息指示的协同方式下兼容。相应地,若第一待处理数据集的处理结果与第一待处理数据集的验证结果不匹配,则计算机设备判定M个算法组件在角色配置信息指示的协同方式下不兼容。
在再一种实施方式中,第一验证数据集包括N个子逻辑间的第一交互数据;结果数据集包括M个算法组件在处理第一待处理数据集的过程中生成的第二交互数据。若第一交互数据与第二交互数据匹配,则计算机设备判定M个算法组件在角色配置信息指示的协同方式下兼容。相应地,若第一交互数据与第二交互数据不匹配,则计算机设备判定M个算法组件在角色配置信息指示的协同方式下不兼容。
可以理解的是,上述基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果的实施方式也可以由联邦任务调度器执行,并在得到第一算法组件在角色配置信息指示的协同方式下的兼容结果后,向计算机设备返回第一算法组件在角色配置信息指示的协同方式下的兼容结果。
可选的,计算机设备可以调用分析模型对第一算法组件的契约实例和角色配置信息进行分析,得到M个算法组件在角色配置信息指示的协同方式下的兼容结果;其中,分析模型是基于样本数据集对基础模型进行训练得到的。具体来说,样本数据集包括输入数据和验证数据,计算机设备调用基础模型对输入数据进行分析,得到输入数据的分析结果,再基于分析结果与验证数据之间的差异,对基础模型进行优化(如调整基础模型中的参数,网络层数等),得到分析模型。
本申请实施例中,获取第一算法组件的契约实例,第一算法组件包含N个子逻辑,N个子逻辑用于执行联邦任务,第一算法组件的契约实例包括第一算法组件对应的第一算法契约和第一验证数据集,第一验证数据集由N个子逻辑对第一待处理数据集进行处理得到,获取角色配置信息,角色配置信息用于指示M个算法组件执行联邦任务的协同方式,按照角色配置信息,调用M个算法组件对第一待处理数据集进行处理,得到第一待处理数据集的结果数据集,基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果。可见,通过对比第一验证数据集和结果数据集(如检验一致性),可以确定多个算法组件间的兼容性,降低算法组件更新后兼容性测试的调试成本。此外,各平台按照统一的算法契约开发算法组件,一方面提高算法组件互联互通(相互兼容)的概率,另一方面保留了各个平台实现算法组件的灵活性和扩展性。
请参阅图4,图4为本申请实施例提供的另一种数据处理方法的流程图,该数据处理方法可以由计算机设备执行;例如,由图1中所示的计算机设备101,或者计算机设备102执行。如图4所示,该数据处理方法可包括如下步骤S401-S403:
S401、响应于第二算法组件满足契约实例生成条件,获取第二算法组件对应的第二算法契约和第一描述信息。
第二算法契约包括第二待处理数据集(如第二待处理数据集为第二算法契约中的测试用例),该第二待处理数据集包括第二算法组件的输入数据和参数。第二算法契约包括第一描述信息,第一描述信息用于指示第二算法组件的输入数据和参数所需符合的数据规则。第一描述信息可以包括以下至少一项:输入数据和参数的类型、输入数据和参数的长度、输入数据和参数的取值范围、输入数据和参数的传输路径。
S402、若第二待处理数据集符合第一描述信息指示的数据规则,则采用第二算法组件对第二待处理数据集进行处理,得到结果信息。
第二待处理数据集符合第一描述信息指示的数据规则可以理解为:第二待处理数据集中的输入数据和参数符合第二算法组件实际所需的输入数据和参数的数据规则(如第二待处理数据集中输入数据和参数的数据类型与第二算法组件实际所需的输入数据和参数的数据类型相同等)。
在一个实施例中,计算机设备基于第一描述信息对第二待处理数据集进行检测(如检测数据的类型、长度等是否符合第二算法组件的实际需求)。若第二待处理数据集通过检测(即第二待处理数据集符合第一描述信息指示的数据规则),则计算机设备调用第二算法组件对第二待处理数据集进行处理,得到结果信息。相应地,若第二待处理数据集未通过检测(即第二待处理数据集不符合第一描述信息指示的数据规则),则计算机设备输出提示信息,该提示信息用于指示第二待处理数据集不符合第一描述信息指示的数据规则。
在一种实施方式中,第二算法组件包含P个子逻辑,P为大于1的整数。计算机设备通过P个子逻辑对第二待处理数据集进行处理,得到结果信息。
S403、若结果信息满足打包条件,则对结果信息和第二待处理数据集进行打包,得到第二算法组件的契约实例。
在一种实施方式中,结果信息包括第二待处理数据集的执行结果标识,第二待处理数据集的处理结果,以及第二算法组件在处理第二待处理数据集的过程中生成的第三交互数据(第三交互数据可以通过传输层中的数据交互记录器记录得到);第二算法契约还包括第二描述信息,第二描述信息用于描述第二待处理数据集的样本结果和第二待处理数据集在处理过程中涉及的样本交互数据;其中样本结果和样本交互数据可以是开发人员基于第二待处理数据集人工配置的。若第二待处理数据集的执行结果标识指示第二待处理数据集成功执行,且第二待处理数据集的处理结果与样本结果匹配,且第三交互数据与样本交互数据匹配,则判定结果信息满足打包条件。相应地,若第二待处理数据集的执行结果标识指示第二待处理数据集未成功执行,或者第二待处理数据集的处理结果与样本结果不匹配,或者第三交互数据与样本交互数据不匹配,则判定结果信息不满足打包条件。
图5a为本申请实施例提供的一种契约实例打包流程示意图。如图5a所示,响应于算法组件满足契约实例生成条件,获取算法组件对应的算法契约和测试用例(如第二待处理数据集),并通过算法组件对应的算法契约对测试用例进行检测(如通过算法组件对应的算法契约检测测试用例是否满足相应的数据规则)。若测试用例通过检测,则调用算法组件对测试用例进行处理,得到输出数据和算法组件包含的各个子逻辑间的交互数据(即测试用例的结果信息);其中,交互数据可以通过传输层中携带的数据交互记录器记录得到;例如,若采用消息队列交互数据,则可以通过订阅topic的形式获取交互数据;若通过grpc协议或http协议交互数据,则可以通过注入代理组件获取交互数据。进一步地,计算机设备基于测试用例的结果信息判断测试用例的结果信息和测试用例是否满足契约实例打包条件(如检测算法组件是否成功对测试用例进行处理,测试用例的处理结果是否正确,交互数据是否正确等)。若测试用例的结果信息和测试用例满足打包条件,则对测试用例的结果信息和测试用例进行打包,得到算法组件的契约实例。
在得到第二算法组件的契约实例后,计算机设备还可以对第二算法组件的契约实例进行注册处理,响应于第二算法组件的契约实例完成注册,计算机设备(如通过算法契约注册及发现组件)发布第二算法组件的契约实例。可选的,计算机设备还可将第二算法组件的镜像文件添加至算法组件的可执行文件仓库(可以被联邦任务调度器调用)中。
可以理解的是,通过对契约实例进行注册和发布,可以促进各个平台间的算法组件进行互联互通,提高平台间的算法组件的兼容效率。
图5b为本申请实施例提供的一种算法组件发布示意图。如图5b所示,算法组件包括可执行文件(如镜像)和契约实例。当算法组件注册完成后,一方面,计算机设备可以通过算法契约注册及发现组件发布算法组件的契约实例;另一方面,计算机设备可以将算法组件的可执行文件添加至可执行文件仓库中,可执行文件仓库中的可执行文件可以被联邦任务调度器调用。
图5c为本申请实施例提供的一种算法组件的开发及验证架构图。如图5c所示,参与执行联邦任务的各方(机构)可以参考公开的算法协议或者已有的算法组件来确定算法契约,并将该算法契约作为异构算法组件(是指功能相同但结构不同的算法组件;如不同隐私计算厂商针对不同算法组件具有独特的设计或优化点,如针对自身技术和硬件条件,采用不同方法(如不同的硬件加速方法,或采用不同的分布式计算框架等)实现的具有相同功能的算法组件)之间的标准协议接口,算法契约包含的内容可参考图3a在此不再赘述。在确定算法契约后,各方按照算法契约开发算法组件,并通过算法契约实例生成组件生成算法组件的契约实例。接着通过算法契约注册及发现组件发布算法组件的契约实例,算法契约注册及发现组件还可以对外(针对除自身外的其他平台)提供算法组件查询服务,以声明可兼容的算法组件,其他平台可以通过算法组件查询服务查询可兼容的算法组件。算法契约验证组件用于响应其他平台发起的兼容验证请求(如任务请求信息),对(角色配置信息指示的)相关算法组件进行兼容性验证。若各平台的算法组件通过兼容性验证,则表示各平台提供的算法组件可以互联互通。可以理解的是,当一个平台提供的算法组件进行更新或者替换后,需要重新对各平台提供的算法组件进行兼容性验证。
需要说明的是,图4实施例中的步骤可以单独执行,也可以与图2实施例中的步骤结合执行,例如,图4实施例中的步骤可以在图2实施例中的步骤之前执行,也可以在图2实施例中的步骤之后执行,还可以与图2实施例中的步骤并列执行,本申请对此不作限制。
本申请实施例中,响应于第二算法组件满足契约实例生成条件,获取第二算法组件对应的第二算法契约和第一描述信息,若第二待处理数据集符合第一描述信息指示的数据规则,则采用第二算法组件对第二待处理数据集进行处理,得到结果信息,若结果信息满足打包条件,则对结果信息和第二待处理数据集进行打包,得到第二算法组件的契约实例。可见通过生成算法组件的契约实例,并对契约实例进行注册和发布,可以促进各个平台间的算法组件进行互联互通,提高平台间的算法组件的兼容效率。
请参阅图6,图6为本申请实施例提供的再一种数据处理方法的流程图,该数据处理方法可以由计算机设备执行;例如,由网络中的可信节点执行。如图6所示,该数据处理方法可包括如下步骤S601和步骤S602:
S601、获取第一算法组件的第一契约实例和第二算法组件的第二契约实例。
第一算法组件和第二算法组件均按照目标算法契约开发得到,目标算法契约包括待处理数据集(如测试用例);第一契约实例包括第一验证数据集,第一验证数据集是由第一算法组件中包含的N个子逻辑对待处理数据集进行处理得到的;第二契约实例包括第二验证数据集,第二验证数据集是由第二算法组件中包含的N个子逻辑对待处理数据集进行处理得到的。在一种实施方式中,第一算法组件和第二算法组件是不同平台按照目标算法契约开发得到的。
S602、基于第一验证数据集和第二验证数据集,确定第一算法组件和第二算法组件之间的兼容性。
在一种实施方式中,若第一验证数据集与第二验证数据集匹配,则计算机设备判定第一算法组件和第二算法组件相互兼容;相应地,若第一验证数据集与第二验证数据集不匹配,则计算机设备判定第一算法组件和第二算法组件相互不兼容。
在一个实施例中,第一验证数据集包括待处理数据集的第一验证结果和第一算法组件的各个子逻辑间的第一交互数据。第二验证数据集包括待处理数据集的第二验证结果和第二算法组件的各个子逻辑间的第二交互数据。若第一验证结果与第二验证结果相同,且第一交互数据与第二交互数据相同,则计算机设备判定第一验证数据集与第二验证数据集匹配。相应地,若第一验证结果与第二验证结果不相同,或者第一交互数据与第二交互数据不相同,则判定第一验证数据集与第二验证数据集不匹配。
图7为本申请实施例提供的一种通过第三方平台确定算法组件间的兼容性的示意图。如图7所示,第三方平台获取机构1基于算法契约开发的算法组件1的契约实例1,以及机构2基于算法契约开发的算法组件2的契约实例2;契约实例1和契约实例2中的测试用例(即待处理数据集)相同,第三方平台对契约实例1中携带的第一交互数据和契约实例2中携带的第二交互数据进行一致性验证,并对契约实例1中携带的第一验证结果和契约实例2中携带的第二验证结果进行一致性验证。若契约实例1中携带的第一交互数据和契约实例2中携带的第二交互数据一致,且契约实例1中携带的第一验证结果和契约实例2中携带的第二验证结果一致,则第三方平台判定算法组件1和算法组件2相互兼容。
进一步地,第三方平台还可以对第一契约实例和第二契约实例进行注册处理,响应于第一契约实例和第二契约实例完成注册,发布第一契约实例和第二契约实例,并将第一算法组件和第二算法组件添加至算法组件仓库中。此外,第三方平台还可以基于第一算法组件和第二算法组件之间的兼容性,维护各机构开发的算法组件间的兼容列表,并向各机构提供算法组件的注册、查询、验证服务。
本申请实施例中,获取第一算法组件的第一契约实例和第二算法组件的第二契约实例,第一算法组件和第二算法组件均按照目标算法契约开发得到,第一契约实例包括第一验证数据集,第一验证数据集是由第一算法组件中包含的N个子逻辑对待处理数据集进行处理得到的,第二契约实例包括第二验证数据集,第二验证数据集是由第二算法组件中包含的N个子逻辑对待处理数据集进行处理得到的,基于第一验证数据集和第二验证数据集,确定第一算法组件和第二算法组件之间的兼容性。可见,通过对比多个算法组件的验证数据集(如检验一致性),可以确定多个算法组件间的兼容性。通过第三方平台(如可信节点)基于契约实例验证算法组件间兼容性,可以提高各平台间异步算法组件互联互通的匹配效率。
上述详细阐述了本申请实施例的方法,为了便于更好地实施本申请实施例的上述方案,相应地,下面提供了本申请实施例的装置。
请参见图8,图8为本申请实施例提供的一种数据处理装置的结构示意图,图8所示的数据处理装置可以搭载在计算机设备中,该计算机设备具体可以是图1所示的计算机设备101,或者计算机设备102。图8所示的数据处理装置可以用于执行上述图2和图4所描述的方法实施例中的部分或全部功能。请参见图8,该数据处理装置包括:
获取单元801,用于获取第一算法组件的契约实例,第一算法组件包含N个子逻辑,N个子逻辑用于执行联邦任务,一个子逻辑对应联邦任务中的一个子任务;第一算法组件的契约实例包括第一算法组件对应的第一算法契约和第一验证数据集,第一算法契约包括第一待处理数据集,第一验证数据集由N个子逻辑对第一待处理数据集进行处理得到,N为大于1的整数;
以及用于获取角色配置信息,角色配置信息用于指示M个算法组件执行联邦任务的协同方式;联邦任务的N个子任务由M个算法组件执行,M个算法组件均按照第一算法契约开发得到,M个算法组件包括第一算法组件,M为大于1且小于等于N的整数;
处理单元802,用于按照角色配置信息,调用M个算法组件对第一待处理数据集进行处理,得到第一待处理数据集的结果数据集;
以及用于基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果。
在一种实施方式中,第一验证数据集包括第一待处理数据集的验证结果和N个子逻辑间的第一交互数据;结果数据集包括第一待处理数据集的处理结果,以及M个算法组件在处理第一待处理数据集的过程中得到的第二交互数据;
处理单元802用于,基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果,具体用于:
若第一待处理数据集的处理结果与验证结果匹配,且第一交互数据与第二交互数据匹配,则判定M个算法组件在角色配置信息指示的协同方式下兼容;
若第一待处理数据集的处理结果与验证结果不匹配,或者第一交互数据与第二交互数据不匹配,则判定M个算法组件在角色配置信息指示的协同方式下不兼容。
在一种实施方式中,处理结果、验证结果、第一交互数据和第二交互数据均包括数据类型和数值;处理单元802还用于:
若第一待处理数据集的处理结果的数据类型与验证结果的数据类型相同,且第一待处理数据集的处理结果的数值与验证结果的数值相同,则判定第一待处理数据集的处理结果与验证结果匹配;
若第一交互数据与第二交互数据的数据类型相同,且第一交互数据与第二交互数据的数值相同,则判定第一交互数据与第二交互数据匹配。
在一种实施方式中,第一验证数据集包括第一待处理数据集的验证结果;结果数据集包括第一待处理数据集的处理结果;处理单元802用于,基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果,具体用于:
若第一待处理数据集的处理结果与验证结果匹配,则判定M个算法组件在角色配置信息指示的协同方式下兼容;
若第一待处理数据集的处理结果与验证结果不匹配,则判定M个算法组件在角色配置信息指示的协同方式下不兼容。
在一种实施方式中,第一验证数据集包括N个子逻辑间的第一交互数据;结果数据集包括M个算法组件在处理第一待处理数据集的过程中生成的第二交互数据;处理单元802用于,基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果,具体用于:
若第一交互数据与第二交互数据匹配,则判定M个算法组件在角色配置信息指示的协同方式下兼容;
若第一交互数据与第二交互数据不匹配,则判定M个算法组件在角色配置信息指示的协同方式下不兼容。
在一种实施方式中,处理单元802用于,按照角色配置信息,调用M个算法组件对第一待处理数据集进行处理,得到第一待处理数据集的结果数据集,具体用于:
向联邦任务调度器发送任务请求信息,以使联邦任务调度器基于任务请求信息调用M个算法组件对第一待处理数据集进行处理,并返回第一待处理数据集的结果数据集;
其中,任务请求信息包括第一待处理数据集,以及角色配置信息;联邦任务调度器通过调用数据交互记录模块记录M个算法组件在处理第一待处理数据集的过程中生成的第二交互数据。
在一种实施方式中,M个算法组件中的每个算法组件均包含N个子逻辑;联邦任务调度器基于任务请求信息调用M个算法组件对第一待处理数据集进行处理的过程包括:
若角色配置信息指示联邦任务中的第i个子任务由第j个算法组件执行,则调用第j个算法组件的第i个子逻辑基于第一待处理数据集执行第i个子任务,i为小于等于N的正整数,j为小于等于M的正整数。
在一种实施方式中,处理单元802还用于:
响应于第二算法组件满足契约实例生成条件,获取第二算法组件对应的第二算法契约和第一描述信息,第二算法契约包括第二待处理数据集;第一描述信息用于指示第二算法组件的待处理数据集所需符合的数据规则;
若第二待处理数据集符合第一描述信息指示的数据规则,则采用第二算法组件对第二待处理数据集进行处理,得到结果信息;
若结果信息满足打包条件,则对结果信息和第二待处理数据集进行打包,得到第二算法组件的契约实例。
在一种实施方式中,结果信息包括第二待处理数据集的执行结果标识,第二待处理数据集的处理结果,以及第二算法组件在处理第二待处理数据集的过程中生成的第三交互数据;第二算法契约还包括第二描述信息,第二描述信息用于描述第二待处理数据集的样本结果和第二待处理数据集在处理过程中涉及的样本交互数据;处理单元802还用于:
若第二待处理数据集的执行结果标识指示第二待处理数据集成功执行,且第二待处理数据集的处理结果与样本结果匹配,且第三交互数据与样本交互数据匹配,则判定结果信息满足打包条件。
在一种实施方式中,处理单元802还用于:
对第二算法组件的契约实例进行注册处理;
响应于第二算法组件的契约实例完成注册,发布第二算法组件的契约实例。
根据本申请的一个实施例,图2和图4所示的数据处理方法所涉及的部分步骤可由图8所示的数据处理装置中的各个单元来执行。例如,图2中所示的步骤S201和步骤S202可由图8所示的获取单元801执行,步骤S203和步骤S204可由图8所示的处理单元802执行;图4中所示的步骤S401可由图8所示的获取单元801执行,步骤S402和步骤S403可由图8所示的处理单元802执行。图8所示的数据处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机设备的通用计算装置上运行能够执行如图2和图4中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图8中所示的数据处理装置,以及来实现本申请实施例的数据处理方法。计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算装置中,并在其中运行。
基于同一发明构思,本申请实施例中提供的数据处理装置解决问题的原理与有益效果与本申请方法实施例中数据处理方法解决问题的原理和有益效果相似,可以参见方法的实施的原理和有益效果,为简洁描述,在这里不再赘述。
请参见图9,图9为本申请实施例提供的另一种数据处理装置的结构示意图,图9所示的数据处理装置可以搭载在计算机设备中,如可信节点(第三方平台)。图9所示的数据处理装置可以用于执行上述图6 所描述的方法实施例中的部分或全部功能。请参见图9,该数据处理装置包括:
获取单元901,用于获取第一算法组件的第一契约实例和第二算法组件的第二契约实例,第一算法组件和第二算法组件均按照目标算法契约开发得到;目标算法契约包括待处理数据集;第一契约实例包括第一验证数据集,第一验证数据集是由第一算法组件中包含的N个子逻辑对待处理数据集进行处理得到的;第二契约实例包括第二验证数据集,第二验证数据集是由第二算法组件中包含的N个子逻辑对待处理数据集进行处理得到的;
处理单元902,用于基于第一验证数据集和第二验证数据集,确定第一算法组件和第二算法组件之间的兼容性。
在一种实施方式中,处理单元902用于,基于第一验证数据集和第二验证数据集,确定第一算法组件和第二算法组件之间的兼容性,具体用于:
若第一验证数据集与第二验证数据集匹配,则判定第一算法组件和第二算法组件相互兼容;
若第一验证数据集与第二验证数据集不匹配,则判定第一算法组件和第二算法组件相互不兼容。
在一种实施方式中,第一验证数据集包括待处理数据集的第一验证结果和第一算法组件的各个子逻辑间的第一交互数据;第二验证数据集包括待处理数据集的第二验证结果和第二算法组件的各个子逻辑间的第二交互数据;处理单元902还用于:
若第一验证结果与第二验证结果相同,且第一交互数据与第二交互数据相同,则判定第一验证数据集与第二验证数据集匹配;
若第一验证结果与第二验证结果不相同,或者第一交互数据与第二交互数据不相同,则判定第一验证数据集与第二验证数据集不匹配。
在一种实施方式中,处理单元902还用于:
对第一契约实例和第二契约实例进行注册处理;
响应于第一契约实例和第二契约实例完成注册,发布第一契约实例和第二契约实例,并将第一算法组件和第二算法组件的可执行文件添加至可执行文件仓库中。
根据本申请的一个实施例,图6所示的数据处理方法所涉及的部分步骤可由图9所示的数据处理装置中的各个单元来执行。例如,图6中所示的步骤S601可由图9所示的获取单元901执行,步骤S602可由图9所示的处理单元902执行。图9所示的数据处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机设备的通用计算装置上运行能够执行如图6中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图9中所示的数据处理装置,以及来实现本申请实施例的数据处理方法。计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算装置中,并在其中运行。
基于同一发明构思,本申请实施例中提供的数据处理装置解决问题的原理与有益效果与本申请方法实施例中数据处理方法解决问题的原理和有益效果相似,可以参见方法的实施的原理和有益效果,为简洁描述,在这里不再赘述。
请参阅图10,图10为本申请实施例提供的一种计算机设备的结构示意图,该计算机设备可以是图1中所示的计算机设备101,或者是计算机设备102。如图10所示,计算机设备至少包括处理器1001、通信接口1002和存储器1003。其中,处理器1001、通信接口1002和存储器1003可通过总线或其他方式连接。其中,处理器1001(或称中央处理器(CentralProcessing Unit,CPU))是计算机设备的计算核心以及控制核心,其可以解析计算机设备内的各类指令以及处理计算机设备的各类数据,例如:CPU可以用于解析对象向计算机设备所发出的开关机指令,并控制计算机设备进行开关机操作;再如:CPU可以在计算机设备内部结构之间传输各类交互数据,等等。通信接口1002可选的可以包括标准的有线接口、无线接口(如WI-FI、移动通信接口等),受处理器1001的控制可以用于收发数据;通信接口1002还可以用于计算机设备内部数据的传输以及交互。存储器1003(Memory)是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器1003既可以包括计算机设备的内置存储器,当然也可以包括计算机设备所支持的扩展存储器。存储器1003提供存储空间,该存储空间存储了计算机设备的操作系统,可包括但不限于:Android系统、iOS系统、Windows Phone系统等等,本申请对此并不作限定。
本申请实施例还提供了一种计算机可读存储介质(Memory),计算机可读存储介质是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括计算机设备中的内置存储介质,当然也可以包括计算机设备所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了计算机设备的处理系统。并且,在该存储空间中还存放了适于被处理器1001加载并执行的计算机程序。需要说明的是,此处的计算机可读存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的,还可以是至少一个位于远离前述处理器的计算机可读存储介质。
在一个实施例中,处理器1001通过运行存储器1003中的计算机程序,执行如下操作:
获取第一算法组件的契约实例,第一算法组件包含N个子逻辑,N个子逻辑用于执行联邦任务,一个子逻辑对应联邦任务中的一个子任务;第一算法组件的契约实例包括第一算法组件对应的第一算法契约和第一验证数据集,第一算法契约包括第一待处理数据集,第一验证数据集由N个子逻辑对第一待处理数据集进行处理得到,N为大于1的整数;
获取角色配置信息,角色配置信息用于指示M个算法组件执行联邦任务的协同方式;联邦任务的N个子任务由M个算法组件执行,M个算法组件均按照第一算法契约开发得到,M个算法组件包括第一算法组件,M为大于1且小于等于N的整数;
按照角色配置信息,调用M个算法组件对第一待处理数据集进行处理,得到第一待处理数据集的结果数据集;
基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果。
作为一种可选的实施例,第一验证数据集包括第一待处理数据集的验证结果和N个子逻辑间的第一交互数据;结果数据集包括第一待处理数据集的处理结果,以及M个算法组件在处理第一待处理数据集的过程中得到的第二交互数据;
处理器1001基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果的具体实施例为:
若第一待处理数据集的处理结果与验证结果匹配,且第一交互数据与第二交互数据匹配,则判定M个算法组件在角色配置信息指示的协同方式下兼容;
若第一待处理数据集的处理结果与验证结果不匹配,或者第一交互数据与第二交互数据不匹配,则判定M个算法组件在角色配置信息指示的协同方式下不兼容。
作为一种可选的实施例,处理结果、验证结果、第一交互数据和第二交互数据均包括数据类型和数值;处理器1001通过运行存储器1003中的计算机程序,还执行如下操作:
若第一待处理数据集的处理结果的数据类型与验证结果的数据类型相同,且第一待处理数据集的处理结果的数值与验证结果的数值相同,则判定第一待处理数据集的处理结果与验证结果匹配;
若第一交互数据与第二交互数据的数据类型相同,且第一交互数据与第二交互数据的数值相同,则判定第一交互数据与第二交互数据匹配。
作为一种可选的实施例,第一验证数据集包括第一待处理数据集的验证结果;结果数据集包括第一待处理数据集的处理结果;处理器1001基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果的具体实施例为:
若第一待处理数据集的处理结果与验证结果匹配,则判定M个算法组件在角色配置信息指示的协同方式下兼容;
若第一待处理数据集的处理结果与验证结果不匹配,则判定M个算法组件在角色配置信息指示的协同方式下不兼容。
作为一种可选的实施例,第一验证数据集包括N个子逻辑间的第一交互数据;结果数据集包括M个算法组件在处理第一待处理数据集的过程中生成的第二交互数据;处理器1001基于第一验证数据集和结果数据集,确定第一算法组件在角色配置信息指示的协同方式下的兼容结果的具体实施例为:
若第一交互数据与第二交互数据匹配,则判定M个算法组件在角色配置信息指示的协同方式下兼容;
若第一交互数据与第二交互数据不匹配,则判定M个算法组件在角色配置信息指示的协同方式下不兼容。
作为一种可选的实施例,处理器1001按照角色配置信息,调用M个算法组件对第一待处理数据集进行处理,得到第一待处理数据集的结果数据集的具体实施例为:
向联邦任务调度器发送任务请求信息,以使联邦任务调度器基于任务请求信息调用M个算法组件对第一待处理数据集进行处理,并返回第一待处理数据集的结果数据集;
其中,任务请求信息包括第一待处理数据集,以及角色配置信息;联邦任务调度器通过调用数据交互记录模块记录M个算法组件在处理第一待处理数据集的过程中生成的第二交互数据。
作为一种可选的实施例,M个算法组件中的每个算法组件均包含N个子逻辑;联邦任务调度器基于任务请求信息调用M个算法组件对第一待处理数据集进行处理的过程包括:
若角色配置信息指示联邦任务中的第i个子任务由第j个算法组件执行,则调用第j个算法组件的第i个子逻辑基于第一待处理数据集执行第i个子任务,i为小于等于N的正整数,j为小于等于M的正整数。
作为一种可选的实施例,处理器1001通过运行存储器1003中的计算机程序,还执行如下操作:
响应于第二算法组件满足契约实例生成条件,获取第二算法组件对应的第二算法契约和第一描述信息,第二算法契约包括第二待处理数据集;第一描述信息用于指示第二算法组件的待处理数据集所需符合的数据规则;
若第二待处理数据集符合第一描述信息指示的数据规则,则采用第二算法组件对第二待处理数据集进行处理,得到结果信息;
若结果信息满足打包条件,则对结果信息和第二待处理数据集进行打包,得到第二算法组件的契约实例。
作为一种可选的实施例,结果信息包括第二待处理数据集的执行结果标识,第二待处理数据集的处理结果,以及第二算法组件在处理第二待处理数据集的过程中生成的第三交互数据;第二算法契约还包括第二描述信息,第二描述信息用于描述第二待处理数据集的样本结果和第二待处理数据集在处理过程中涉及的样本交互数据;
处理器1001通过运行存储器1003中的计算机程序,还执行如下操作:
若第二待处理数据集的执行结果标识指示第二待处理数据集成功执行,且第二待处理数据集的处理结果与样本结果匹配,且第三交互数据与样本交互数据匹配,则判定结果信息满足打包条件。
作为一种可选的实施例,处理器1001通过运行存储器1003中的计算机程序,还执行如下操作:
对第二算法组件的契约实例进行注册处理;
响应于第二算法组件的契约实例完成注册,发布第二算法组件的契约实例。
在另一个实施例中,处理器1001通过运行存储器1003中的计算机程序,执行如下操作:
获取第一算法组件的第一契约实例和第二算法组件的第二契约实例,第一算法组件和第二算法组件均按照目标算法契约开发得到;目标算法契约包括待处理数据集;第一契约实例包括第一验证数据集,第一验证数据集是由第一算法组件中包含的N个子逻辑对待处理数据集进行处理得到的;第二契约实例包括第二验证数据集,第二验证数据集是由第二算法组件中包含的N个子逻辑对待处理数据集进行处理得到的;
基于第一验证数据集和第二验证数据集,确定第一算法组件和第二算法组件之间的兼容性。
作为一种可选的实施例,处理器1001基于第一验证数据集和第二验证数据集,确定第一算法组件和第二算法组件之间的兼容性的具体实施例为:
若第一验证数据集与第二验证数据集匹配,则判定第一算法组件和第二算法组件相互兼容;
若第一验证数据集与第二验证数据集不匹配,则判定第一算法组件和第二算法组件相互不兼容。
作为一种可选的实施例,第一验证数据集包括待处理数据集的第一验证结果和第一算法组件的各个子逻辑间的第一交互数据;第二验证数据集包括待处理数据集的第二验证结果和第二算法组件的各个子逻辑间的第二交互数据;处理器1001通过运行存储器1003中的计算机程序,执行如下操作:
若第一验证结果与第二验证结果相同,且第一交互数据与第二交互数据相同,则判定第一验证数据集与第二验证数据集匹配;
若第一验证结果与第二验证结果不相同,或者第一交互数据与第二交互数据不相同,则判定第一验证数据集与第二验证数据集不匹配。
作为一种可选的实施例,处理器1001通过运行存储器1003中的计算机程序,执行如下操作:
对第一契约实例和第二契约实例进行注册处理;
响应于第一契约实例和第二契约实例完成注册,发布第一契约实例和第二契约实例,并将第一算法组件和第二算法组件的可执行文件添加至可执行文件仓库中。
基于同一发明构思,本申请实施例中提供的计算机设备解决问题的原理与有益效果与本申请方法实施例中数据处理方法解决问题的原理和有益效果相似,可以参见方法的实施的原理和有益效果,为简洁描述,在这里不再赘述。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序适于被处理器加载并执行上述方法实施例的数据处理方法。
本申请实施例还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述的数据处理方法。
本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本申请实施例装置中的模块可以根据实际需要进行合并、划分和删减。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,可读存储介质可以包括:闪存盘、只读存储器(Read-Only Memory ,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
以上所揭露的仅为本申请一种较佳实施例而已,当然不能以此来限定本申请之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本申请权利要求所作的等同变化,仍属于申请所涵盖的范围。
Claims (18)
1.一种数据处理方法,其特征在于,所述方法包括:
获取第一算法组件的契约实例,所述第一算法组件包含N个子逻辑,所述N个子逻辑用于执行联邦任务,一个子逻辑对应所述联邦任务中的一个子任务;所述第一算法组件的契约实例包括所述第一算法组件对应的第一算法契约和第一验证数据集,所述第一算法契约包括第一待处理数据集,所述第一验证数据集由所述N个子逻辑对所述第一待处理数据集进行处理得到,N为大于1的整数;
获取角色配置信息,所述角色配置信息用于指示M个算法组件执行所述联邦任务的协同方式;所述M个算法组件均按照所述第一算法契约开发得到,所述M个算法组件包括所述第一算法组件,M为大于1且小于等于N的整数;
按照所述角色配置信息,调用所述M个算法组件对所述第一待处理数据集进行处理,得到所述第一待处理数据集的结果数据集;
基于所述第一验证数据集和所述结果数据集,确定所述第一算法组件在所述角色配置信息指示的协同方式下的兼容结果。
2.如权利要求1所述的方法,其特征在于,所述第一验证数据集包括所述第一待处理数据集的验证结果和所述N个子逻辑间的第一交互数据;所述结果数据集包括所述第一待处理数据集的处理结果,以及所述M个算法组件在处理所述第一待处理数据集的过程中得到的第二交互数据;
所述基于所述第一验证数据集和所述结果数据集,确定所述第一算法组件在所述角色配置信息指示的协同方式下的兼容结果,包括:
若所述第一待处理数据集的处理结果与所述验证结果匹配,且所述第一交互数据与所述第二交互数据匹配,则判定所述M个算法组件在所述角色配置信息指示的协同方式下兼容;
若所述第一待处理数据集的处理结果与所述验证结果不匹配,或者所述第一交互数据与所述第二交互数据不匹配,则判定所述M个算法组件在所述角色配置信息指示的协同方式下不兼容。
3.如权利要求2所述的方法,其特征在于,所述处理结果、所述验证结果、所述第一交互数据和所述第二交互数据均包括数据类型和数值,所述方法还包括:
若所述第一待处理数据集的处理结果的数据类型与所述验证结果的数据类型相同,且所述第一待处理数据集的处理结果的数值与所述验证结果的数值相同,则判定所述第一待处理数据集的处理结果与所述验证结果匹配;
若所述第一交互数据与所述第二交互数据的数据类型相同,且所述第一交互数据与所述第二交互数据的数值相同,则判定所述第一交互数据与所述第二交互数据匹配。
4.如权利要求1所述的方法,其特征在于,所述第一验证数据集包括所述第一待处理数据集的验证结果;所述结果数据集包括所述第一待处理数据集的处理结果;所述基于所述第一验证数据集和所述结果数据集,确定所述第一算法组件在所述角色配置信息指示的协同方式下的兼容结果,包括:
若所述第一待处理数据集的处理结果与所述验证结果匹配,则判定所述M个算法组件在所述角色配置信息指示的协同方式下兼容;
若所述第一待处理数据集的处理结果与所述验证结果不匹配,则判定所述M个算法组件在所述角色配置信息指示的协同方式下不兼容。
5.如权利要求1所述的方法,其特征在于,所述第一验证数据集包括所述N个子逻辑间的第一交互数据;所述结果数据集包括所述M个算法组件在处理所述第一待处理数据集的过程中生成的第二交互数据;所述基于所述第一验证数据集和所述结果数据集,确定所述第一算法组件在所述角色配置信息指示的协同方式下的兼容结果,包括:
若所述第一交互数据与所述第二交互数据匹配,则判定所述M个算法组件在所述角色配置信息指示的协同方式下兼容;
若所述第一交互数据与所述第二交互数据不匹配,则判定所述M个算法组件在所述角色配置信息指示的协同方式下不兼容。
6.如权利要求1所述的方法,其特征在于,所述按照所述角色配置信息,调用所述M个算法组件对所述第一待处理数据集进行处理,得到所述第一待处理数据集的结果数据集,包括:
向联邦任务调度器发送任务请求信息,以使所述联邦任务调度器基于所述任务请求信息调用所述M个算法组件对所述第一待处理数据集进行处理,并返回所述第一待处理数据集的结果数据集;
其中,所述任务请求信息包括所述第一待处理数据集,以及所述角色配置信息;所述联邦任务调度器包括数据交互记录模块,所述联邦任务调度器通过调用数据交互记录模块记录所述M个算法组件在处理所述第一待处理数据集的过程中生成的第二交互数据。
7.如权利要求6所述的方法,其特征在于,所述M个算法组件中的每个算法组件均包含N个子逻辑;所述联邦任务调度器基于所述任务请求信息调用所述M个算法组件对所述第一待处理数据集进行处理的过程包括:
若所述角色配置信息指示所述联邦任务中的第i个子任务由第j个算法组件执行,则调用所述第j个算法组件的第i个子逻辑基于所述第一待处理数据集执行所述第i个子任务,i为小于等于N的正整数,j为小于等于M的正整数。
8.如权利要求1所述的方法,其特征在于,所述方法还包括:
响应于第二算法组件满足契约实例生成条件,获取所述第二算法组件对应的第二算法契约和第一描述信息,所述第二算法契约包括第二待处理数据集;所述第一描述信息用于指示所述第二算法组件的待处理数据集所需符合的数据规则;
若所述第二待处理数据集符合所述第一描述信息指示的数据规则,则采用所述第二算法组件对所述第二待处理数据集进行处理,得到结果信息;
若所述结果信息满足打包条件,则对所述结果信息和所述第二待处理数据集进行打包,得到所述第二算法组件的契约实例。
9.如权利要求8所述的方法,其特征在于,所述结果信息包括所述第二待处理数据集的执行结果标识,所述第二待处理数据集的处理结果,以及所述第二算法组件在处理所述第二待处理数据集的过程中生成的第三交互数据;所述第二算法契约还包括第二描述信息,所述第二描述信息用于描述所述第二待处理数据集的样本结果和所述第二待处理数据集在处理过程中涉及的样本交互数据;所述方法还包括:
若所述第二待处理数据集的执行结果标识指示所述第二待处理数据集成功执行,且所述第二待处理数据集的处理结果与所述样本结果匹配,且所述第三交互数据与所述样本交互数据匹配,则判定所述结果信息满足打包条件。
10.如权利要求8所述的方法,其特征在于,所述方法还包括:
对所述第二算法组件的契约实例进行注册处理;
响应于所述第二算法组件的契约实例完成注册,发布所述第二算法组件的契约实例。
11.一种数据处理方法,其特征在于,所述方法包括:
获取第一算法组件的第一契约实例和第二算法组件的第二契约实例,所述第一算法组件和所述第二算法组件均按照目标算法契约开发得到;所述目标算法契约包括待处理数据集;所述第一契约实例包括第一验证数据集,所述第一验证数据集是由所述第一算法组件中包含的N个子逻辑对所述待处理数据集进行处理得到的;所述第二契约实例包括第二验证数据集,所述第二验证数据集是由所述第二算法组件中包含的N个子逻辑对所述待处理数据集进行处理得到的;
基于所述第一验证数据集和所述第二验证数据集,确定所述第一算法组件和所述第二算法组件之间的兼容性。
12.如权利要求11所述的方法,其特征在于,所述基于所述第一验证数据集和所述第二验证数据集,确定所述第一算法组件和所述第二算法组件之间的兼容性,包括:
若所述第一验证数据集与所述第二验证数据集匹配,则判定所述第一算法组件和所述第二算法组件相互兼容;
若所述第一验证数据集与所述第二验证数据集不匹配,则判定所述第一算法组件和所述第二算法组件相互不兼容。
13.如权利要求12所述的方法,其特征在于,所述第一验证数据集包括所述待处理数据集的第一验证结果和所述第一算法组件的各个子逻辑间的第一交互数据;所述第二验证数据集包括所述待处理数据集的第二验证结果和所述第二算法组件的各个子逻辑间的第二交互数据;所述方法还包括:
若所述第一验证结果与所述第二验证结果相同,且所述第一交互数据与所述第二交互数据相同,则判定所述第一验证数据集与所述第二验证数据集匹配;
若所述第一验证结果与所述第二验证结果不相同,或者所述第一交互数据与所述第二交互数据不相同,则判定所述第一验证数据集与所述第二验证数据集不匹配。
14.如权利要求11所述的方法,其特征在于,所述方法还包括:
对所述第一契约实例和所述第二契约实例进行注册处理;
响应于所述第一契约实例和所述第二契约实例完成注册,发布所述第一契约实例和所述第二契约实例,并将所述第一算法组件和所述第二算法组件的可执行文件添加至可执行文件仓库中。
15.一种数据处理装置,其特征在于,所述数据处理装置包括:
获取单元,用于获取第一算法组件的契约实例,所述第一算法组件包含N个子逻辑,所述N个子逻辑用于执行联邦任务,一个子逻辑对应所述联邦任务中的一个子任务;所述第一算法组件的契约实例包括所述第一算法组件对应的第一算法契约和第一验证数据集,所述第一算法契约包括第一待处理数据集,所述第一验证数据集由所述N个子逻辑对所述第一待处理数据集进行处理得到,N为大于1的整数;
以及用于获取角色配置信息,所述角色配置信息用于指示通过M个算法组件执行所述联邦任务的协同方式;所述联邦任务的N个子任务由M个算法组件执行,所述M个算法组件均按照所述第一算法契约开发得到,所述M个算法组件包括所述第一算法组件,M为大于1且小于等于N的整数;
处理单元,用于按照所述角色配置信息,调用所述M个算法组件对所述第一待处理数据集进行处理,得到所述第一待处理数据集的结果数据集;
以及用于基于所述第一验证数据集和所述结果数据集,确定所述第一算法组件在所述角色配置信息指示的协同方式下的兼容结果。
16.一种数据处理装置,其特征在于,所述数据处理装置包括:
获取单元,用于获取第一算法组件的第一契约实例和第二算法组件的第二契约实例,所述第一算法组件和所述第二算法组件均按照目标算法契约开发得到;所述目标算法契约包括待处理数据集;所述第一契约实例包括第一验证数据集,所述第一验证数据集是由所述第一算法组件中包含的N个子逻辑对所述待处理数据集进行处理得到的;所述第二契约实例包括第二验证数据集,所述第二验证数据集是由所述第二算法组件中包含的N个子逻辑对所述待处理数据集进行处理得到的;
处理单元,用于基于所述第一验证数据集和所述第二验证数据集,确定所述第一算法组件和所述第二算法组件之间的兼容性。
17.一种计算机设备,其特征在于,包括:
存储器,所述存储器中存储有计算机程序;
处理器,用于加载所述计算机程序实现如权利要求1-10任一项所述的数据处理方法,或用于加载所述计算机程序实现如权利要求11-14任一项所述的数据处理方法。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于被处理器加载并执行如权利要求1-10任一项所述的数据处理方法,或适于被处理器加载并执行如权利要求11-14任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310993596.9A CN116719627B (zh) | 2023-08-09 | 2023-08-09 | 数据处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310993596.9A CN116719627B (zh) | 2023-08-09 | 2023-08-09 | 数据处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116719627A CN116719627A (zh) | 2023-09-08 |
CN116719627B true CN116719627B (zh) | 2024-01-19 |
Family
ID=87871897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310993596.9A Active CN116719627B (zh) | 2023-08-09 | 2023-08-09 | 数据处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116719627B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113407327A (zh) * | 2021-07-08 | 2021-09-17 | 北京融数联智科技有限公司 | 一种建模任务和数据分析的方法、装置、电子设备及系统 |
CN115422094A (zh) * | 2022-11-04 | 2022-12-02 | 浙江大华技术股份有限公司 | 算法自动化测试方法、中心调度设备及可读存储介质 |
WO2023105046A1 (en) * | 2021-12-10 | 2023-06-15 | Fundación Tecnalia Research & Innovation | Method for training an algorithm and method for providing a service based on the trained algorithm |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10880074B2 (en) * | 2018-10-15 | 2020-12-29 | Adobe Inc. | Smart contract platform for generating and customizing smart contracts |
US20220292082A1 (en) * | 2019-08-19 | 2022-09-15 | Hangzhou Qulian Technology Co., Ltd. | Method, apparatus and device for parallel execution of smart contract, and medium |
-
2023
- 2023-08-09 CN CN202310993596.9A patent/CN116719627B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113407327A (zh) * | 2021-07-08 | 2021-09-17 | 北京融数联智科技有限公司 | 一种建模任务和数据分析的方法、装置、电子设备及系统 |
WO2023105046A1 (en) * | 2021-12-10 | 2023-06-15 | Fundación Tecnalia Research & Innovation | Method for training an algorithm and method for providing a service based on the trained algorithm |
CN115422094A (zh) * | 2022-11-04 | 2022-12-02 | 浙江大华技术股份有限公司 | 算法自动化测试方法、中心调度设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116719627A (zh) | 2023-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109086031B (zh) | 一种基于规则引擎的业务决策方法和装置 | |
US11562293B2 (en) | Adaptation of machine learning algorithms | |
EP3622447A1 (en) | Interoperation of machine learning algorithms | |
WO2018206374A1 (en) | Load balancing of machine learning algorithms | |
EP3622449A1 (en) | Autonomous logic modules | |
US11699073B2 (en) | Network off-line model processing method, artificial intelligence processing device and related products | |
EP2594050A1 (en) | Method and apparatus for processing biometric information using distributed computation | |
CN111062521B (zh) | 一种在线预测方法、系统及服务器 | |
CN116457759A (zh) | 基于分布式容器组的系统内的服务编排 | |
JP2023550607A (ja) | セキュアな環境におけるコードの継続的なインテグレーション及び開発 | |
CN116933886B (zh) | 一种量子计算执行方法、系统、电子设备及存储介质 | |
CN117389995A (zh) | 业务数据处理方法、装置及存储介质 | |
CN113010561A (zh) | 基于超级账本的数据获取方法、装置、计算机系统 | |
CN116719627B (zh) | 数据处理方法、装置、设备及存储介质 | |
US11188548B2 (en) | Profile data store automation via bots | |
US9235382B2 (en) | Input filters and filter-driven input processing | |
CN115185543B (zh) | 模型部署方法、打包方法、装置、设备及存储介质 | |
CN117056317B (zh) | 数据处理方法、装置、设备及计算机可读存储介质 | |
CN117076160B (zh) | 组件调用方法、装置、设备和存储介质 | |
Fkaier | Software framework for the development of context-aware reconfigurable systems | |
CN114168347A (zh) | 信息处理方法、装置、服务器及存储介质 | |
CN115708061A (zh) | 服务器部署模型的方法、模型处理方法和装置 | |
CN116757287A (zh) | 推理引擎调用方法、装置、计算机设备、存储介质及程序 | |
CN117234930A (zh) | 一种测试方法、装置、设备、存储介质及产品 | |
CN116700703A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |