本发明涉及数据处理
技术领域:
,尤其涉及基于联邦数据及联邦服务的数据共享方法及装置。
背景技术:
:本部分旨在为权利要求书中陈述的本发明实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。人工智能(以下简称ai)技术及应用已经在多领域场景取得突破性进展,正迅速改变经济及生活方式。在深度学习的范式下,人工智能对数据的需求非常巨大。但是目前数据共享、交易与开放等程度严重不足,正成为制约产业创新发展的瓶颈。大部分数据拥有方不愿意将自己的数据开放出来,造成了一个个数据孤岛,除了数据拥有方缺乏积极性外,其中一个很重要的原因是来自于数据的隐私保护。未来的趋势是:数据隐私保护的法律会越来越严格,人工智能对于数据的使用必须更加规范。因此对人工智能技术而言,一方面需要数据流通,但安全要求又严重限制了数据流通。这种情况下,传统的数据分析机制就无法满足法规要求,其本质是要改变数据集中式的分析技术为数据分布式的分析技术。技术实现要素:本发明实施例提供一种基于联邦数据及联邦服务的数据共享方法,该方法包括:接收数据使用方提交的模型运算需求,基于联邦节点能力数据库,根据所述模型运算需求匹配生成最优决策结果;基于最优决策结果选择计算模型,将公钥和计算模型发送至最优决策结果中的相应联邦节点;接收相应联邦节点返回的计算结果,将所述计算结果进行解密,返回给数据使用方,其中,计算结果为联邦节点根据自身的联邦数据基于计算模型联合计算得出并通过公钥加密后的结果;计算参与计算的每个联邦节点的数据收益,将所述数据收益提供给数据提供方;将模型运算需求计算过程数据存储在区块链的记账节点上;其中,数据提供方作为联邦节点。本发明实施例还提供一种基于联邦数据及联邦服务的数据共享装置,该装置包括:决策生成模块,用于接收数据使用方提交的模型运算需求,基于联邦节点能力数据库,根据所述模型运算需求匹配生成最优决策结果;联合计算模块,用于基于最优决策结果选择计算模型,将公钥和计算模型发送至最优决策结果中的相应联邦节点;接收相应联邦节点返回的计算结果,将所述计算结果进行解密,返回给数据使用方,其中,计算结果为联邦节点根据自身的联邦数据基于计算模型联合计算得出并通过公钥加密后的结果;计费激励模块,用于计算参与计算的每个联邦节点的数据收益,将所述数据收益提供给数据提供方;交易记账模块,用于将模型运算需求计算过程数据存储在区块链的记账节点上;其中,数据提供方作为联邦节点。本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于联邦数据及联邦服务的数据共享方法。本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述所述基于联邦数据及联邦服务的数据共享方法的步骤。本发明实施例中,通过接收数据使用方提交的模型运算需求;基于联邦节点能力数据库,根据所述模型运算需求匹配生成最优决策结果;基于最优决策结果选择计算模型,将公钥和计算模型发送至最优决策结果中的相应联邦节点;接收相应联邦节点返回的计算结果,其中,计算结果为联邦节点根据自身的联邦数据基于计算模型联合计算得出并通过公钥加密后的结果;将所述计算结果进行解密,返回给数据使用方;计算参与计算的每个联邦节点的数据收益,将所述数据收益提供给数据提供方;将模型运算需求计算过程数据存储在区块链的记账节点上;其中,数据提供方作为联邦节点。本发明提出了一个完整的联邦数据共享框架,使用联邦学习算法进行分布式模型计算,使用区块链技术解决信任问题,发明了联邦服务机制来实现对各个数据使用方需求的决策生成,进而实现服务的联邦化。发明了联邦数据机制来实现对各个数据提供方的接入审核和访问调度,进而实现数据的联邦化。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:图1为本发明实施例中联邦控制中心框架图;图2为本发明实施例中基于联邦数据及联邦服务的数据共享方法流程图一;图3为本发明实施例中基于联邦数据及联邦服务的数据共享方法流程图二;图4为本发明实施例中基于联邦数据及联邦服务的数据共享方法流程图三;图5为本发明实施例中基于联邦数据及联邦服务的数据共享方法流程图四;图6为本发明实施例中语音数据存储格式示意图;图7为本发明实施例中基于联邦数据及联邦服务的数据共享方法流程图五;图8为本发明实施例中基于联邦数据及联邦服务的数据共享装置结构框图一;图9为本发明实施例中基于联邦数据及联邦服务的数据共享装置结构框图二;图10为本发明实施例中基于联邦数据及联邦服务的数据共享装置结构框图三;图11为本发明实施例中基于联邦数据及联邦服务的数据共享装置结构框图四;图12为本发明实施例中基于联邦数据及联邦服务的数据共享装置结构框图五。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。相关术语解释联邦学习:本质上是一种分布式机器学习技术,目标是在保证数据隐私安全及合法合规的基础上,实现共同建模,提升人工智能模型的效果。联邦服务:实现对各个数据使用方需求的决策生成,进而实现服务的联邦化。联邦管理是实现联邦服务的主要模块,通过结合系统实际情况,将服务的目标转换成执行的规划,制定系统运行的规则和蓝图,来满足联邦服务所提出的要求。联邦数据:基于联邦控制模块实现对各个数据提供方的接入审核和访问调度,进而实现数据的联邦化。联邦学习、联邦服务、联邦数据之间的关系:联邦服务是联邦生态的决策者,决策如何满足数据使用者的需求;联邦数据是联邦生态的执行者,由一系列联邦节点构成,并将联邦服务的决策进行代码化,控制各个节点协作完成任务;联邦学习是分布式学习算法,不同的计算任务会用到不同的联邦学习算法,联邦服务的决策里包含使用哪个联邦学习算法,联邦数据在执行联合计算时会运行相应的联邦学习算法。区块链:本质上是一个共享数据库,存储于其中的数据或信息具有:不可伪造、全程留痕、可以追溯、公开透明、集体维护等特征。基于这些特征,区块链技术奠定了坚实的信任基础,创造了可靠的合作机制。联邦节点:数据拥有方注册加入联邦后,成为共享的联邦节点之一,可以被数据使用方访问并从中获益。基于现有技术中存在的问题,本发明提出了一种新的数据共享方法,可以实现“数据可用不可见”的数据分析训练,利用区块链机制,在区块链共识、安全、合约、激励等机制的基础上,吸引各个数据拥有方形成一个联邦,数据和算力都在数据拥有方,可以实现在不共享数据的基础上完成联合建模,从技术上打破数据孤岛,满足各种领域下的模型训练。图1为本发明实施例中联邦控制中心框架图,如图1所示,主要包括联邦服务和联邦数据两个层次。联邦服务实现对各个数据使用方需求的决策生成,进而实现服务的联邦化。联邦管理是实现联邦服务的主要模块,通过结合系统实际情况,将服务的目标转换成执行的规划,制定系统运行的规则和蓝图,来满足联邦服务所提出的要求。联邦管理需综合考虑政策、法律、效益等社会性性因素,还要考虑计算、质量、通信等工程性因素,在保证系统安全稳定的运行的前提下,最大化联邦收益。联邦管理的输出是一组由自然语言定义的商业逻辑和运行规则,它规定了联邦中节点的选择和激励策略以及每个节点的角色和动作,同时对节点协作方式进行了规范,以期实现联邦服务的目标。联邦数据基于联邦控制模块实现对各个数据提供方的接入审核和访问调度,进而实现数据的联邦化。联邦数据是联邦生态运行的物质基础,它是由一系列联邦节点构成,并通过节点数据进行信息交流和协作的一个分布式网络。联邦控制负责落实联邦管理的决策,通过将联邦管理产生的自然语言规则集转换为机器语言,对联邦数据进行调控,分离数据所有权和使用权,完成对节点的动态选择、节点状态更新以及数据的读写访问等操作。如果说联邦管理是联邦生态的决策者,那么联邦控制就是执行者,通过将各种指令和规则代码化,建立一套面向联邦数据的控制系统。上述流程均在区块链机制下的联邦共识、联邦安全、联邦合约、联邦激励四项联邦安全共享协议的支持与约束下进行,保证整个联邦生态的安全与稳定。基于图1所述的架构,本发明提出一种基于联邦数据及联邦服务的数据共享方法,如图2所示,该方法包括:步骤201:接收数据使用方提交的模型运算需求,基于联邦节点能力数据库,根据所述模型运算需求匹配生成最优决策结果;步骤202:基于最优决策结果选择计算模型,将公钥和计算模型发送至最优决策结果中的相应联邦节点;步骤203:接收相应联邦节点返回的计算结果,将所述计算结果进行解密,返回给数据使用方,其中,计算结果为联邦节点根据自身的联邦数据基于计算模型联合计算得出并通过公钥加密后的结果;步骤204:计算参与计算的每个联邦节点的数据收益,将所述数据收益提供给数据提供方;步骤205:将模型运算需求计算过程数据存储在区块链的记账节点上;其中,数据提供方作为联邦节点。在本发明实施例中,所述模型运算需求包括联邦学习算法、需求数据类型和数据量;所述联邦节点能力数据库包括联邦节点、联邦节点提供的数据类型、联邦节点的可处理数据量和联邦节点的处理质量;步骤201基于联邦节点能力数据库,根据所述模型运算需求匹配生成最优决策结果,包括:将需求数据类型与联邦节点提供的数据类型进行匹配,且将数据量和联邦节点的可处理数据量进行匹配,获得多条匹配结果;基于联邦节点的处理质量,从多条匹配结果中选择最优的匹配结果形成最优决策结果。具体的,数据使用者提出模型运算需求后,步骤201的决策生成步骤将运算需求转化为一组可执行的商业逻辑和运行规则,它规定了联邦节点的选择以及每个节点的角色和动作,同时对节点协作方式进行了规范,以期实现联邦服务的目标。决策生成需综合考虑节点的能力匹配度、数据质量、数据定价、计算能力等因素,来生成一个最优的决策结果。在本发明实施例中,步骤202基于最优决策结果选择计算模型,包括:基于最优决策结果从联邦学习算法池获得相应的计算模型;或,将最优决策结果返回至数据使用方,接收数据使用方提交的联邦学习算法对应的计算模型。具体的,数据使用者可以根据自己的模型运算需求,自己上传联邦学习算法,或者从联邦学习算法池里选择适合的联邦学习算法。支持从外部接入各种联邦学习算法,形成联邦学习算法池,以适用于各类联邦服务需求。例如:语音识别联邦学习算法、人脸识别联邦学习算法、ocr图文识别联邦学习算法、疾病风险预测联邦学习算法、精准营销推荐联邦学习算法等。这些算法可被数据使用者自主选择从而用于模型运算。联邦学习算法可以是数据使用者上传的,也可以是系统管理员上传,或第三方上传。下面示出了决策生成的一种实施例,基于数据类型、数据量和数据质量来实施:1)数据使用者提交模型的数据需求,包括:联邦学习算法、需求数据类型、数据量。例如:“语音识别联邦学习算法:{普通话文本,30g};{普通话朗读语音,1000小时};{普通话发音词典,50万词}”。2)查找节点能力数据库,通过匹配模型需求和各节点的能力,自动生成最优的决策结果,包括候选节点的数据类型、质量等描述信息。具体匹配规则例如:数据类型必须满足,数据量不足的前提下提供多个同数据类型的节点,优先选用质量好的节点。例如从表1联邦节点能力数据库的例子,可生成决策结果:“语音识别联邦学习算法:{节点1,30g};{节点3,500小时};{节点4,500小时};{节点5,50万词}。表1联邦节点能力数据库的例子节点数据类型数据量质量分数节点1普通话文本50g85分节点2普通话文本100g60分节点3普通话朗读语音500小时92分节点4普通话朗读语音500小时89分节点5普通话发音词典50万词96分3)数据使用方确认上述决策结果,若不满意也可重新提交模型的数据需求。4)数据使用方确认决策结果后,给出计算模型(步骤202),包括协调决策结果中每个节点在自己数据基础上计算的模型以及各节点之间协作计算的模型。在本发明实施例中,如图3所示,还包括:步骤301:在接收到联邦节点上传的联邦数据时,确定联邦数据的类型,将同类型的联邦数据的接入模式设置为同构数据,采用一致的数据存储结构进行存储;将不同类型的联邦数据的接入模式设置为异构数据,采用不一致的数据存储结构进行存储。步骤203中,若最优决策结果中存在同构数据对应的联邦节点,则同构数据对应的联邦节点在内部计算时会和其他同构的联邦节点之间交换计算结果;若最优决策结果中存在异构数据对应的联邦节点,则异构数据对应的联邦节点在内部计算时不需要和其他异构的联邦节点之间交换计算结果。具体的,支持同态以及不同态的接入模式设置。设置后可在步骤203里采取更有针对性的计算策略。1)同态的多个节点之间为同构数据,需采用一致的数据存储结构。另外机器算力也一样。同态模式适合用于机器学习场景,例如语音识别模型训练时,多个节点之间适合采用同态模式。2)非同态的多个节点之间为异构数据,数据存储结构不需要一致,机器算力也可以不同。非同态模式适合用于结构化数据的统计分析场景,例如疾病风险预测模型训练时,有的节点存放患者个人信息,有的节点存放疾病诊断信息,因为不同构,适合采用非同态模式。进一步地,步骤203中的计算结果为联邦节点收到计算模型后在自己内部进行计算,需要其他联邦节点协作计算时,多个联邦节点之间将用于计算的中间结果通过公钥加密后进行数据交换,即为联合计算。联合计算可以根据步骤301中节点的接入设置方式进行针对性的计算,从而提高计算效率。对同态的多个节点,在每个节点内部计算时,通常要和其他节点进行协作,需要基于公钥加密的数据交换。对非同态的多个节点,在每个节点内部计算时,通常不需要和其他节点进行协作,此时不需要去轮询其他节点,而是将各节点的计算结果汇总到联邦控制中心后,在联邦控制中心进行统一合并计算。下面示出了联合计算的一种实施例。根据决策生成步骤的输出结果,调度其中的联邦节点来联合计算。具体地,基于区块链的安全机制,进行高安全的联合计算,确保数据不出门。联邦节点之间采用同态加密机制进行参数交换。数据和模型本身不会被传输,也不会被对方的数据猜中。1)联邦控制中心为本次联合计算自动生成一个新的公钥。公钥在区块链上安全存储。2)联邦控制中心把公钥和决策生成步骤输出的计算模型分发给决策生成步骤输出结果里的相应节点。在表1的例子中,数据使用方的需求是完成一个语音识别模型的训练,联邦控制中心发给节点1语言模型训练计算模型、发给节点3声学模型训练模型计算模型,发给节点4声学模型训练模型计算模型,发给节点5发音词典计算模型。3)收到计算模型的各个节点在自己内部进行计算,需要其他节点协作计算时,多个节点之间将用于计算的中间结果通过公钥加密后进行数据交换。在表1的例子中,节点3和节点4会交换声学模型训练的中间结果后进行合并,节点1、节点3和4、节点5通过联合计算,完成一个语音识别模型的训练。4)多个节点向联邦控制中心发送通过公钥加密后的计算结果。5)联邦控制中心将计算结果进行解密,然后反馈给数据使用者。在本发明实施例中,步骤204计算参与计算的每个联邦节点的数据收益,包括:计算参与计算的每个联邦节点的基础收益,所述基础收益为每个联邦节点的联邦数据使用量×联邦数据单位定价;计算参与计算的每个联邦节点的额外收益,所述额外收益为数据质量分数和数据使用方对计算效果评价分数的加权计算;将所述基础收益和所述额外收益加和。具体的,除了数据不出门外,必须让数据提供方从中受益,才有动力源源不断的提供数据、更新数据、提升数据。联邦控制功能基于区块链来设计有效的激励机制。1)数据定价每套数据集都会基于数据质量评估分数来评估价格,数据提供单位也可在平台评估价值的基础上调整单位定价(语音数据为每小时单价,图像数据为每张单价,视频数据为每小时单价,文本数据为每条单价)。2)收益计算方式数据使用者每完成一次联合计算后,自动计算各个节点的收益。收益可以包括基础收益和额外收益。基础收益:自己数据被使用的数据量×单位定价;额外收益:数据质量分数和数据使用者对计算效果评价分数的加权计算。3)收益形式数据提供方的收益方式可以灵活配置,可以是虚拟电子货币,也可以是真实货币,并建立虚拟电子货币和真实货币之间的换算关系。数据提供方可以将虚拟电子货币兑换为真实货币并提现。在本发明实施例中,步骤205是基于区块链的共识机制,解决记账问题。每一次数据使用都在区块链的多个记账节点上同时进行记帐,确保一致性和正确性,从而解决信任问题。记账内容包括每个节点的每次计算过程记录,包括:什么时间,哪个数据使用者,使用了哪些数据,每套数据使用了多少数据量,返回了什么计算结果、收益多少、数据提供方的提现情况,等等。在本发明实施例中,如图4所示,还包括:步骤401:在联邦节点接入时,自动读取联邦节点的计算能力参数,基于所述计算能力参数确定联邦节点的计算能力,将所述联邦节点的计算能力记录到区块链。具体的,不同节点的计算能力可能有差异,节点接入时,可自动读取节点机器的cpu、gpu、内存等各项计算能力参数,并记录到区块链里保存。在本发明实施例中,如图5所示,还包括:步骤501:基于区块链合约里的数据标准化规范,对联邦节点上传的联邦数据进行数据标准化。具体的,步骤501包括:对元数据进行数据标准化和对数据存储结构进行标准化;其中,对元数据进行数据标准化,包括:为每套数据集打上标准化的标签;对数据存储结构进行标准化,包括:对每套数据集进行标准化的目录结构和文件名命名,并对每种类型文件里的存储内容进行标准化的格式统一。具体的,不同数据提供方的数据格式各异,为了方便算法使用数据,联邦控制功能定义了统一的数据标准化规范并写到区块链合约里,要求接入联邦平台的数据需符合规范要求。合约是一套以数字形式定义的承诺,包括合约参与方可以在上面执行这些承诺的协议。1)元数据的标准化元数据管理是对每套数据集打上标准化的标签,对数据集进行主题分类和管理,建立标准和规范,记录每个数据集的各种标签信息。每套数据集的元数据包括表2所示字段,每个字段都定义统一的书写规范。例如产品编码格式为:数据集提供单位编码 年 月 日 从001开始的数据集编号。表2元数据字段要求序号字段序号字段序号字段1产品编码7数据量13数据存放位置2产品名称8语种14样例存放位置3数据类型9国家15数据来源4产品描述10采集方式16数据分类5产品说明书11质量指标17关键词6数据大小12标注内容18入库时间2)数据存储结构的标准化当用户通过标准化的元数据信息找到自己需要的数据集后,为了方便用户研发的程序算法使用不同的数据集,数据集存储结构也应当标准化,针对语音数据、图像数据、视频数据、文本数据,分别建立数据存储结构的标准。例如:语音数据的存储格式统一如图6所示。在本发明实施例中,如图7所示,还包括:步骤701:基于区块链合约里的数据质量评估标准,对联邦节点上传的联邦数据进行质量评估。具体的,不同数据提供方的数据质量各异,质量差的数据会影响算法的效果。联邦控制功能定义了数据质量评估标准(包括6个数据评价指标:数据量、数据完整性、数据质量受损率、数据分布多样性、已标注数据比例和标注准确率)并写到区块链合约里,定期对接入联邦平台的数据进行质量评估,计算出每套数据集的质量评分,可以将评分小于预设值的数据去掉。一套数据集的数据质量分数计算方法见表3:表3数据质量分数计算方法评估指标解释评分数据量数据集的总条数、存储容量。语音数据的单位是小时数,图像数据的单位是张数,视频数据的单位是小时数,文本数据的单位是条数满分20分数据完整性数据集里应被赋值的数据元素的赋值程度满分10分数据质量受损率数据集里已受损数据量占总数据量的比例满分15分数据分布多样性数据集覆盖的采集方式、数据来源、数据对象、数据种类等方面的多样化程度满分15分已标注数据比例数据集里已标注的数据量占总数据量的比例满分20分标注准确率标注正确的数据量占已标注数据量的比例满分20分本发明实施例中还提供了一种基于联邦数据及联邦服务的数据共享装置,如下面的实施例所述。由于该装置解决问题的原理与基于联邦数据及联邦服务的数据共享方法相似,因此该装置的实施可以参见基于联邦数据及联邦服务的数据共享方法的实施,重复之处不再赘述。图8为本发明实施例中基于联邦数据及联邦服务的数据共享装置(即联邦控制中心)结构框图一,如图8所示,该装置包括:联邦管理模块和联邦控制模块;联邦管理模块包括决策生成单元,联邦控制模块包括联合计算单元、计费激励单元和交易记账单元;决策生成单元02,用于接收数据使用方提交的模型运算需求,基于联邦节点能力数据库,根据所述模型运算需求匹配生成最优决策结果;联合计算单元04,用于基于最优决策结果选择计算模型,将公钥和计算模型发送至最优决策结果中的相应联邦节点;接收相应联邦节点返回的计算结果,其中,计算结果为联邦节点根据自身的联邦数据基于计算模型计算得出并通过公钥加密后的结果;将所述计算结果进行解密,返回给数据使用方;计费激励单元06,用于计算参与计算的每个联邦节点的数据收益,将所述数据收益提供给数据提供方;交易记账单元08,用于将模型运算需求计算过程数据存储在区块链的记账节点上;其中,数据提供方作为联邦节点。在本发明实施例中,所述模型运算需求包括联邦学习算法、需求数据类型和数据量;所述联邦节点能力数据库包括联邦节点、联邦节点提供的数据类型、联邦节点的可处理数据量和联邦节点的处理质量;决策生成单元02具体用于:将需求数据类型与联邦节点提供的数据类型进行匹配,且将数据量和联邦节点的可处理数据量进行匹配,获得多条匹配结果;基于联邦节点的处理质量,从多条匹配结果中选择最优的匹配结果形成最优决策结果。在本发明实施例中,联合计算单元04具体用于:基于最优决策结果从联邦学习算法池获得相应的计算模型;或,将最优决策结果返回至数据使用方,接收数据使用方提交的联邦学习算法对应的计算模型。在本发明实施例中,计算结果为联邦节点收到计算模型后在自己内部进行计算,需要其他联邦节点协作计算时,多个联邦节点之间将用于计算的中间结果通过公钥加密后进行数据交换。在本发明实施例中,计费激励单元06具体用于:计算参与计算的每个联邦节点的基础收益,所述基础收益为每个联邦节点的联邦数据使用量×联邦数据单位定价;计算参与计算的每个联邦节点的额外收益,所述额外收益为数据质量分数和数据使用方对计算效果评价分数的加权计算;将所述基础收益和所述额外收益加和。在本发明实施例中,如图9所示,该联邦控制模块还包括:算力注册单元10,用于在联邦节点接入时,自动读取联邦节点的计算能力参数,基于所述计算能力参数确定联邦节点的计算能力,将所述联邦节点的计算能力记录到区块链。在本发明实施例中,如图10所示,该联邦控制模块还包括:接入模式设置单元12,用于在接收到联邦节点上传的联邦数据时,确定联邦数据的类型,将同类型的联邦数据的接入模式设置为同构数据,采用一致的数据存储结构进行存储;将不同类型的联邦数据的接入模式设置为异构数据,采用不一致的数据存储结构进行存储;若最优决策结果中存在同构数据对应的联邦节点,则同构数据对应的联邦节点在内部计算时会和其他同构的联邦节点之间交换计算结果;若最优决策结果中存在异构数据对应的联邦节点,则异构数据对应的联邦节点在内部计算时不需要和其他异构的联邦节点之间交换计算结果。在本发明实施例中,如图11所示,该联邦控制模块还包括:数据标准化单元14,用于基于区块链合约里的数据标准化规范,对联邦节点上传的联邦数据进行数据标准化。在本发明实施例中,数据标准化单元14具体用于:对元数据进行数据标准化和对数据存储结构进行标准化;其中,对元数据进行数据标准化,包括:为每套数据集打上标准化的标签;对数据存储结构进行标准化,包括:对每套数据集进行标准化的目录结构和文件名命名,并对每种类型文件里的存储内容进行标准化的格式统一。在本发明实施例中,如图12所示,该联邦控制模块还包括:数据质量评估单元16,用于基于区块链合约里的数据质量评估标准,对联邦节点上传的联邦数据进行质量评估。在本发明实施例中,数据质量评估标准包括6个数据评价指标:数据量、数据完整性、数据质量受损率、数据分布多样性、已标注数据比例和标注准确率。本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于联邦数据及联邦服务的数据共享方法。本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述所述基于联邦数据及联邦服务的数据共享方法的步骤。本发明实施例中,通过接收数据使用方提交的模型运算需求;基于联邦节点能力数据库,根据所述模型运算需求匹配生成最优决策结果;基于最优决策结果选择计算模型,将公钥和计算模型发送至最优决策结果中的相应联邦节点;接收相应联邦节点返回的计算结果,其中,计算结果为联邦节点根据自身的联邦数据基于计算模型计算得出并通过公钥加密后的结果;将所述计算结果进行解密,返回给数据使用方;计算参与计算的每个联邦节点的数据收益,将所述数据收益提供给数据提供方;将模型运算需求计算过程数据存储在区块链的记账节点上;其中,数据提供方作为联邦节点。本发明提出了一个完整的联邦数据共享框架,使用联邦学习算法进行分布式模型计算,使用区块链技术解决信任问题,发明了联邦服务机制来实现对各个数据使用方需求的决策生成,进而实现服务的联邦化。发明了联邦数据机制来实现对各个数据提供方的接入审核和访问调度,进而实现数据的联邦化。本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页1 2 3 
技术特征:1.一种基于联邦数据及联邦服务的数据共享方法,其特征在于,包括:
接收数据使用方提交的模型运算需求,基于联邦节点能力数据库,根据所述模型运算需求匹配生成最优决策结果;
基于最优决策结果选择计算模型,将公钥和计算模型发送至最优决策结果中的相应联邦节点;
接收相应联邦节点返回的计算结果,将所述计算结果进行解密,返回给数据使用方,其中,计算结果为联邦节点根据自身的联邦数据基于计算模型联合计算得出并通过公钥加密后的结果;
计算参与计算的每个联邦节点的数据收益,将所述数据收益提供给数据提供方;
将模型运算需求计算过程数据存储在区块链的记账节点上;
其中,数据提供方作为联邦节点。
2.如权利要求1所述的基于联邦数据及联邦服务的数据共享方法,其特征在于,所述模型运算需求包括联邦学习算法、需求数据类型和数据量;
所述联邦节点能力数据库包括联邦节点、联邦节点提供的数据类型、联邦节点的可处理数据量和联邦节点的处理质量;
基于联邦节点能力数据库,根据所述模型运算需求匹配生成最优决策结果,包括:
将需求数据类型与联邦节点提供的数据类型进行匹配,且将数据量和联邦节点的可处理数据量进行匹配,获得多条匹配结果;
基于联邦节点的处理质量,从多条匹配结果中选择最优的匹配结果形成最优决策结果。
3.如权利要求1所述的基于联邦数据及联邦服务的数据共享方法,其特征在于,基于最优决策结果选择计算模型,包括:
基于最优决策结果从联邦学习算法池获得相应的计算模型;
或,将最优决策结果返回至数据使用方,接收数据使用方提交的联邦学习算法对应的计算模型。
4.如权利要求1所述的基于联邦数据及联邦服务的数据共享方法,其特征在于,计算结果为联邦节点收到计算模型后在自己内部进行计算,需要其他联邦节点协作计算时,多个联邦节点之间将用于计算的中间结果通过公钥加密后进行数据交换。
5.如权利要求1所述的基于联邦数据及联邦服务的数据共享方法,其特征在于,计算参与计算的每个联邦节点的数据收益,包括:
计算参与计算的每个联邦节点的基础收益,所述基础收益为每个联邦节点的联邦数据使用量×联邦数据单位定价;
计算参与计算的每个联邦节点的额外收益,所述额外收益为数据质量分数和数据使用方对计算效果评价分数的加权计算;
将所述基础收益和所述额外收益加和。
6.如权利要求1所述的基于联邦数据及联邦服务的数据共享方法,其特征在于,还包括:
在联邦节点接入时,自动读取联邦节点的计算能力参数,基于所述计算能力参数确定联邦节点的计算能力,将所述联邦节点的计算能力记录到区块链。
7.如权利要求1所述的基于联邦数据及联邦服务的数据共享方法,其特征在于,还包括:
在接收到联邦节点上传的联邦数据时,确定联邦数据的类型,将同类型的联邦数据的接入模式设置为同构数据,采用一致的数据存储结构进行存储;将不同类型的联邦数据的接入模式设置为异构数据,采用不一致的数据存储结构进行存储;
若最优决策结果中存在同构数据对应的联邦节点,则同构数据对应的联邦节点在内部计算时会和其他同构的联邦节点之间交换计算结果;若最优决策结果中存在异构数据对应的联邦节点,则异构数据对应的联邦节点在内部计算时不需要和其他异构的联邦节点之间交换计算结果。
8.如权利要求1所述的基于联邦数据及联邦服务的数据共享方法,其特征在于,还包括:
基于区块链合约里的数据标准化规范,对联邦节点上传的联邦数据进行数据标准化,包括:
对元数据进行数据标准化和对数据存储结构进行标准化;
其中,对元数据进行数据标准化,包括:
为每套数据集打上标准化的标签;
对数据存储结构进行标准化,包括:
对每套数据集进行标准化的目录结构和文件名命名,并对每种类型文件里的存储内容进行标准化的格式统一。
9.如权利要求1所述的基于联邦数据及联邦服务的数据共享方法,其特征在于,还包括:
基于区块链合约里的数据质量评估标准,对联邦节点上传的联邦数据进行质量评估。
10.一种基于联邦数据及联邦服务的数据共享装置,其特征在于,包括:联邦管理模块和联邦控制模块;联邦管理模块包括决策生成单元,联邦控制模块包括联合计算单元、计费激励单元和交易记账单元;
其中,决策生成单元,用于接收数据使用方提交的模型运算需求,基于联邦节点能力数据库,根据所述模型运算需求匹配生成最优决策结果;
联合计算单元,用于基于最优决策结果选择计算模型,将公钥和计算模型发送至最优决策结果中的相应联邦节点;接收相应联邦节点返回的计算结果,将所述计算结果进行解密,返回给数据使用方,其中,计算结果为联邦节点根据自身的联邦数据基于计算模型联合计算得出并通过公钥加密后的结果;
计费激励单元,用于计算参与计算的每个联邦节点的数据收益,将所述数据收益提供给数据提供方;
交易记账单元,用于将模型运算需求计算过程数据存储在区块链的记账节点上;
其中,数据提供方作为联邦节点。
技术总结本发明公开了一种基于联邦数据及联邦服务的数据共享方法及装置,该方法包括:接收数据使用方提交的模型运算需求;基于联邦节点能力数据库,根据模型运算需求匹配生成最优决策结果;基于最优决策结果选择计算模型,将公钥和计算模型发送至相应联邦节点;接收相应联邦节点返回的计算结果,其中,计算结果为联邦节点根据自身的联邦数据基于计算模型计算得出并通过公钥加密后的结果;将结果进行解密返回给数据使用方;计算参与计算的每个联邦节点的数据收益,提供给数据提供方;将计算过程数据存储在区块链的记账节点上;数据提供方作为联邦节点。本发明通过联邦服务机制来实现对各个数据使用方需求的决策生成,进而实现服务的联邦化。
技术研发人员:丰强泽;齐红威;何鸿凌;肖永红
受保护的技术使用者:数据堂(北京)科技股份有限公司
技术研发日:2021.07.07
技术公布日:2021.08.03