一种基于联盟链的联邦学习的数据处理方法与系统转让专利

申请号 : CN202110224615.2

文献号 : CN112597240B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 邵俊万友平李骏琪

申请人 : 索信达(北京)数据技术有限公司深圳索信达数据技术有限公司

摘要 :

本发明公开了一种基于联盟链的联邦学习的数据处理方法与系统,其中所述方法包括:发起方建立智能合约;将联盟链上各个节点的模型初始参数写入智能合约中;各节点将样本数据量发送到智能合约上,根据各个样本数据量大小分别分配相应数量的通证;每一轮模型训练中,各节点将训练获得的梯度值发送至所述智能合约,根据各个节点的梯度值和样本数据量,计算各节点的偏离指数;根据所述偏离指数识别可疑节点;其他节点基于PBFT机制对可疑节点进行投票,根据投票结果对可疑节点进行验证;通过智能合约和实用拜占庭容错协议PBFT投票机制,保障了生态的良性运转,使得节点之间可以顺利完成联邦建模的训练。

权利要求 :

1.一种基于联盟链的联邦学习的数据处理方法,其特征在于,包括:发起方建立智能合约;

联盟链上各个节点将初始模型参数写入智能合约中;

各节点将样本数据量发送到智能合约上,根据各个样本数据量大小分别分配相应数量的通证;

每一轮模型训练中,各节点将训练获得的梯度值发送至所述智能合约,根据各个节点的梯度值和样本数据量,计算各节点的偏离指数;

根据所述偏离指数识别可疑节点;

其他节点基于PBFT机制对可疑节点进行投票,根据投票结果对所述可疑节点进行验证;

其中,根据各个节点的梯度值和样本数据量,计算各节点的偏离指数,包括:根据各个节点的梯度值,计算梯度平均值;

根据所述梯度平均值、各个节点的梯度值和各个样本数据量,计算各个节点的偏离指数;

所述偏离指数通过以下公式进行计算:;

其中, 为第m个节点的样本数据量, 为第m个节点的梯度值, 为梯度平均值, 为第m个节点的偏离指数。

2.如权利要求1所述方法,其特征在于,所述通证的数量与样本数据量的平方根成正比。

3.如权利要求1所述方法,其特征在于,每一轮训练中,各节点将训练获得的梯度值发送至所述智能合约之后,还包括:智能合约将各个节点发送的梯度值进行相加,获得梯度和;

各个节点查询所述智能合约获得所述梯度和,并基于所述梯度和进行下一轮模型训练,直到满足训练停止条件。

4.如权利要求3所述的方法,其特征在于,获得所述梯度和之后,还包括:基于所述梯度和更新所述初始模型参数或者上一轮的模型参数。

5.如权利要求1所述的方法,其特征在于,根据所述偏离指数识别可疑节点,包括:将每一轮获得的所有节点的偏离指数进行排序;

如果某个节点连续k轮偏离指数排名第一,则确定该节点为可疑节点。

6.如权利要求5所述的方法,其特征在于,k满足以下条件:选择最小的自然数k,使得

其中,n为节点的总数。

7.如权利要求6所述的方法,其特征在于,其他节点基于PBFT机制对可疑节点进行投票,如果投票通过,则确定该可疑节点的样本数据量为虚假数据量,将该节点的通证销毁。

8.如权利要求1所述方法,其特征在于,模型训练完成之后,将模型产生的收益根据节点的样本数据量进行分配;

第m个节点的收益值为 ,其中,F为总收益, 为第m个节点的样本数据量,n为节点的总数。

9.一种基于联盟链的联邦学习的数据处理系统,应用于如权利要求1‑8任一所述的方法,其特征在于,包括发起方和n个节点,其中n为大于1的整数;所述发起方建立智能合约;

各所述节点将初始模型参数写入智能合约中;各节点将样本数据量发送到智能合约上,智能合约根据各个样本数据量大小分别分配相应数量的通证;每一轮模型训练中,各节点将训练获得的梯度值发送至所述智能合约,智能合约根据各个节点的梯度值和样本数据量,计算各节点的偏离指数,根据所述偏离指数识别可疑节点;其他节点基于PBFT机制对可疑节点进行投票,根据投票结果对所述可疑节点进行验证;

其中,根据各个节点的梯度值和样本数据量,计算各节点的偏离指数,包括:根据各个节点的梯度值,计算梯度平均值;

根据所述梯度平均值、各个节点的梯度值和各个样本数据量,计算各个节点的偏离指数;

所述偏离指数通过以下公式进行计算:;

其中, 为第m个节点的样本数据量, 为第m个节点的梯度值, 为梯度平均值, 为第m个节点的偏离指数。

说明书 :

一种基于联盟链的联邦学习的数据处理方法与系统

技术领域

[0001] 本发明属于大数据分析与数据挖掘领域,尤其涉及一种基于联盟链的联邦学习的数据处理方法与系统。

背景技术

[0002] 联邦学习致力于解决多用户在不公开各自数据集的情形下,协同完成模型训练的问题。例如,多个不同机构、不同项目组或者不同服务器中,其各自拥有不同的用户样本数
据,在评估用户是否能够被允许使用其中的资源时,由于各机构、项目组或服务器之间拥有
样本数据量有限,如果仅仅基于自身的数据来训练模型,受样本规模的限制,模型效果难以
达到预期。如果能将各家数据聚合来训练,则可以大幅提升模型精度。然而出于竞争关系以
及对数据隐私的监管要求,各方均不愿意将自身的客户数据向任何第三方发布,直接将各
家数据聚合到一起建模是行不通的。因此,联邦学习技术应运而生,在不泄露自身原始数据
的情形下,共同训练机器学习模型提供了可能。
[0003] 以用户鉴权问题结合横向联邦学习的场景为例,模型需要通过构建逻辑回归模型来确定用户是否能够被允许使用相应的资源(例如,电信增值业务)。模型训练的最终目的
是需要找到合适的参数,使得总损失函数最小。通常会使用梯度下降方法来更新模型参数,
即在给定了模型初始参数后,通过梯度信息一步步更新参数,直到损失函数的值达到最小。
通过联邦学习,参与方之间不需要共享原始数据,而只需要基于自身数据建模,并将梯度信
息传送出去,通过各家梯度信息更新参数即可完成模型训练。传统的联邦学习方案中会有
一个协调方来负责收集各个参与方的梯度并进行汇总,再将汇总后的结果分发给各个节
点。但是这样的方案有以下几个弊端:
[0004] (1)中心依赖
[0005] 成员间的协作非常依赖这个协调方(中心节点),一旦中心节点出现故障,或者中心节点出现恶意行为,将对整体的协同训练造成阻碍;
[0006] (2)激励不足
[0007] 数据体量小的机构往往对参与联邦学习有非常浓厚的兴趣,而那些本身数据体量大的机构则往往没有足够的动力投入到联邦学习中,因为参与联邦学习对于前者有较大的
收益,而对后者而言收益甚微。出于投入产出比以及行业竞争考虑,大机构往往没有意愿加
入到协同训练,导致联邦学习的生态无法良好的建立起来;
[0008] (3)单点欺诈
[0009] 基于(2)中的考虑,联邦生态会允许各参与方申报数据量,并根据各方对生态的贡献大小对各个节点进行相应的激励。 然而,参与方的数据量大小并非公开可验证数据,参
与方之间存在着信息不对称。在没有合理机制设计的情形下,各方都存在虚报自身数据信
息的动机,通过报高数据体量使得自身利益最大化,而损害其他参与方的利益,导致合作失
败。

发明内容

[0010] 针对上述现有技术中存在的缺陷,本发明一种基于联盟链的联邦学习的数据处理方法与系统,针对各参与方拥有独立同分布原始数据的情形下,建立一种去中心化审计机
制,保障节点诚实,以维护联邦学习系统健康运转。就此,本发明提供一种基于联盟链的联
邦学习的数据处理方法,包括以下步骤:
[0011] 发起方建立智能合约;
[0012] 联盟链上各个节点将初始模型参数写入智能合约中;
[0013] 各节点将样本数据量发送到智能合约上,根据各个样本数据量大小分别分配相应数量的通证;
[0014] 每一轮模型训练中,各节点将训练获得的梯度值发送至所述智能合约,根据各个节点的梯度值和样本数据量,计算各节点的偏离指数;
[0015] 根据所述偏离指数识别可疑节点;
[0016] 其他节点基于PBFT机制对可疑节点进行投票,根据投票结果对所述可疑节点进行验证。
[0017] 进一步地,所述通证的数量与样本数据量的平方根成正比。
[0018] 进一步地,每一轮训练中,各节点将训练获得的梯度值发送至所述智能合约之后,还包括:
[0019] 智能合约将各个节点发送的梯度值进行相加,获得梯度和;
[0020] 各个节点查询所述智能合约获得所述梯度和,并基于所述梯度和进行下一轮模型训练,直到满足训练停止条件。
[0021] 进一步地,获得所述梯度和之后,还包括:
[0022] 基于所述梯度和更新所述初始模型参数或者上一轮的模型参数。
[0023] 进一步地,根据各个节点的梯度值和样本数据量,计算各节点的偏离指数,包括:
[0024] 根据各个节点的梯度值,计算梯度平均值;
[0025] 根据所述梯度平均值、各个节点的梯度值和各个样本数据量,计算各个节点的偏离指数;
[0026] 所述偏离指数通过以下公式进行计算:
[0027] ;
[0028] 其中, 为第m个节点的样本数据量, 为第m个节点的梯度值, 为梯度平均值, 为第m个节点的偏离指数。
[0029] 进一步地,根据所述偏离指数识别可疑节点,包括:
[0030] 将每一轮获得的所有节点的偏离指数进行排序;
[0031] 如果某个节点连续k轮偏离指数排名第一,则确定该节点为可疑节点。
[0032] 进一步地,k满足以下条件:
[0033] 选择最小的自然数k,使得
[0034] ;
[0035] 其中,n为节点的总数。
[0036] 进一步地,其他节点基于PBFT机制对可疑节点进行投票,如果投票通过,则确定该可疑节点的样本数据量为虚假数据量,将该节点的通证销毁。
[0037] 进一步地,模型训练完成之后,将模型产生的收益根据节点的样本数据量进行分配;
[0038] 第m个节点的收益值为 ,其中,F为总收益, 为第m个节点的样本数据量,n为节点的总数。
[0039] 在本发明的另一方面,还提出了一种基于联盟链的联邦学习的数据处理系统,应用于上述的方法,包括:发起方和n个节点;所述发起方建立智能合约;各所述节点将各自的
初始模型参数写入智能合约中;各节点将样本数据量发送到智能合约上,智能合约根据各
个样本数据量大小分别分配相应数量的通证;每一轮模型训练中,各节点将训练获得的梯
度值发送至所述智能合约,智能合约根据各个节点的梯度值和样本数据量,计算各节点的
偏离指数,根据所述偏离指数识别可疑节点;其他节点基于PBFT机制对可疑节点进行投票,
确定根据投票结果对所述可疑节点进行验证。
[0040] 与现有技术相比,本发明提供的基于联盟链的联邦学习的数据处理方法及系统,建立了智能合约机制,能够计算各节点的偏离指数,从而对具有虚报数据量的可疑节点进
行判断,通过投票机制准确的确定虚报数据量的节点,保证了生态的良性运转,使得节点能
够顺利完成联邦学习模型训练。建立了收益分配机制,节点的收益根据其数据样本量进行
分配,保证所有参与者的利益公平。成员间无需依赖中心节点,参与方能够在没有中心节点
的情况下完成模型协同训练。

附图说明

[0041] 通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若
干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
[0042] 图1是示出根据本发明实施例的一种基于联盟链的联邦学习的数据处理方法流程图;
[0043] 图2是示出根据本发明实施例的一种基于联盟链的联邦学习的数据处理系统的示意图。

具体实施方式

[0044] 为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施
例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的
所有其它实施例,都属于本发明保护的范围。
[0045] 在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”
也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
[0046] 应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述……,但这些……不应限于这些术语。这些术语仅用来将……区分开。例如,在不脱离本发明实施
例范围的情况下,第一……也可以被称为第二……,类似地,第二……也可以被称为第
一……。
[0047] 下面结合附图详细说明本发明的可选实施例。
[0048] 实施例一
[0049] 如图1所示,本实施例公开了一种基于联盟链的联邦学习的数据处理方法,包括以下步骤:
[0050] S1、发起方建立智能合约;
[0051] S2、联盟链上各个节点将初始模型参数写入智能合约中;
[0052] S3、各节点将样本数据量发送到智能合约上,根据各个样本数据量大小分别分配相应数量的通证;
[0053] S4、每一轮模型训练中,各节点将训练获得的梯度值发送至所述智能合约,根据各个节点的梯度值和样本数据量,计算各节点的偏离指数;
[0054] S5、根据所述偏离指数识别可疑节点;
[0055] S6、其他节点基于PBFT机制对可疑节点进行投票,根据投票结果对所述可疑节点进行验证。
[0056] 本实施例提供的基于联盟链的联邦学习的数据处理方法,通过区块链和基于链上智能合约的机制设计,参与方能够在没有中心节点的情况下完成模型协同训练。通过智能
合约和实用拜占庭容错协议PBFT投票机制,保障了生态的良性运转,使得节点之间可以顺
利完成联邦建模的训练。
[0057] 实施例二
[0058] 如图1所示,本实施例公开了一种基于联盟链的联邦学习的数据处理方法,包括以下步骤:
[0059] S1、发起方建立智能合约;
[0060] S2、联盟链上各个节点将初始模型参数写入智能合约中;
[0061] S3、各节点将样本数据量发送到智能合约上,根据各个样本数据量大小分别分配相应数量的通证;
[0062] S4、每一轮模型训练中,各节点将训练获得的梯度值发送至所述智能合约,根据各个节点的梯度值和样本数据量,计算各节点的偏离指数;
[0063] S5、根据所述偏离指数识别可疑节点;
[0064] S6、其他节点基于PBFT机制对可疑节点进行投票,根据投票结果对所述可疑节点进行验证。
[0065] 具体地,执行步骤S1之前,还包括:将接入联盟链进行联邦学习的节点进行注册,节点向联盟链提交入网申请,联盟链上已有的节点进行投票,投票通过后则完成节点的入
网,完成注册。
[0066] 进一步地,步骤S1中,发起方建立智能合约,其中,发起方可以为参与联邦学习的任意一个节点,也可以是一个独立的第三方。任意一个节点均可作为发起方,成员间无需依
赖中心节点,参与方能够在没有中心节点的情况下完成模型协同训练。
[0067] 进一步地,步骤S2中,联盟链上的各个节点可以读取智能合约的数据,也可将数据写入智能合约中,初始时,各个节点将各自的初始模型参数写入到智能合约中。
[0068] 进一步地,步骤S3中,各节点将样本数据量发送到智能合约上,智能合约根据各个样本数据量的大小分别为各节点分配相应数量的通证,在一些实施方式中,所述通证的数
量与样本数据量的平方根成正比。
[0069] 进一步地,步骤S4中,各节点能够从智能合约上查询梯度和,基于该梯度和进行模型训练,获得当前这一轮训练的梯度值,各节点将训练获得的梯度值发送至所述智能合约,
智能合约将各个节点发送的梯度值进行相加,获得梯度和,各个节点查询所述智能合约获
得所述梯度和,并基于所述梯度和进行下一轮模型训练,直到满足训练停止条件,各节点训
练停止的条件为获得的梯度值小于预设值。
[0070] 其中,智能合约获得所述梯度和之后,基于所述梯度和更新所述初始模型参数或者上一轮的模型参数,第一轮训练获得梯度和之后,基于获得的梯度和更新初始模型参数,
之后基于每一轮训练获得的梯度和更新上一轮的模型参数,当所有节点训练停止,获得的
参数即为最优参数,节点可以从智能合约上读取该最优参数。
[0071] 每一轮的训练中,智能合约获得各个节点的梯度值之后,根据各个节点这一轮的梯度值,计算梯度平均值;
[0072] 根据所述梯度平均值、各个节点的梯度值和各个样本数据量,计算各个节点的偏离指数;
[0073] 所述偏离指数通过以下公式进行计算:
[0074] ;(1)
[0075] 其中, 为第m个节点的样本数据量, 为第m个节点的梯度值, 为梯度平均值, 为第m个节点的偏离指数。
[0076] 偏离指数作为判断节点是否欺诈的依据。
[0077] 进一步地,步骤S5中,根据所述偏离指数识别可疑节点,包括:
[0078] 将每一轮获得的所有节点的偏离指数进行排序;
[0079] 如果某个节点连续k轮偏离指数排名第一,则确定该节点为可疑节点。
[0080] 其中,k满足以下条件:
[0081] 选择最小的自然数k,使得
[0082]   ;(2)
[0083] 其中,n为节点的总数。
[0084] 这也意味着,正常节点被误认为是可疑节点的概率低于百万分之一,即被误判的可能性会被忽略不计。加上后面的投票补救环节,可以认为这样的机制设计是很安全的。
[0085] 基于中心极限定律,对所有m, 应当服从独立同分布,如果节点申报的样本数据量较大,而其梯度值对中心的偏离也较大,则该节点虚报数据量的概率较大。
[0086] 进一步地,步骤S6中,确定可疑节点之后,其他节点基于PBFT机制对可疑节点进行投票,如果投票通过,则确定该可疑节点的样本数据量为虚假数据量,将该节点的通证销
毁。
[0087] 其中,PBFT(实用拜占庭容错协议)投票机制指的是在网络节点协作中出现某(个)些节点故障的情况下保证集体状态一致性的一种共识机制。在该机制下,节点通过预准备、
准备和提交三阶段对投票结果进行确认。假设共有3n+1个节点。最先发起投票的用户会成
为主节点,主节点将对可疑节点的判定消息发送给其他节点,其他节点如接受主节点对该
可疑节点的判定,则对外发出一个预准备的消息。当每个节点收到2n+1个预准备消息,会对
外广播1个准备消息;当节点收到2n+1个准备消息,会对外广播1个提交消息;当节点收到2n
+1个提交消息,则该可疑节点被判定的事实得到了全网确认。该节点被锁定在智能合约的
通证会被销毁。
[0088] 进一步地,模型训练完成之后,将模型产生的收益根据节点的样本数据量进行分配;
[0089] 第m个节点的收益值为 ,其中,F为总收益, 为第m个节点的样本数据量,n为节点的总数。
[0090] 本实施例提供的基于联盟链的联邦学习的数据处理方法,建立了智能合约机制,能够计算各节点的偏离指数,从而对具有虚报数据量的可疑节点进行判断,通过投票机制
准确的确定虚报数据量的节点,保证了生态的良性运转,使得节点能够顺利完成联邦学习
模型训练。建立了收益分配机制,节点的收益根据其数据样本量进行分配,保证所有参与者
的利益公平。成员间无需依赖中心节点,参与方能够在没有中心节点的情况下完成模型协
同训练。
[0091] 实施例三
[0092] 参考图2,本实施例提出了一种基于联盟链的联邦学习的数据处理系统,应用于上述的方法,其包括:发起方1和n个节点2,其中n为大于1的整数;发起方1建立智能合约;节点
2将各自的初始模型参数写入智能合约中;各节点2将样本数据量发送到智能合约上,智能
合约根据各个样本数据量大小分别分配相应数量的通证;每一轮模型训练中,各节点2将训
练获得的梯度值发送至所述智能合约,智能合约根据各个节点2的梯度值和样本数据量,计
算各节点的偏离指数,根据所述偏离指数识别可疑节点;其他节点基于PBFT机制对可疑节
点进行投票,根据投票结果对所述可疑节点进行验证。
[0093] 其中,所述通证的数量与样本数据量的平方根成正比。
[0094] 每一轮训练中,各节点2将训练获得的梯度值发送至所述智能合约之后,智能合约将各个节点发送的梯度值进行相加,获得梯度和;各个节点2查询所述智能合约获得所述梯
度和,并基于所述梯度和进行下一轮模型训练,直到满足训练停止条件。
[0095] 智能合约获得所述梯度和之后,基于所述梯度和更新所述初始模型参数或者上一轮的模型参数。
[0096] 智能合约根据各个节点的梯度值,计算梯度平均值;根据所述梯度平均值、各个节点的梯度值和各个样本数据量,计算各个节点的偏离指数;偏离指数根据式(1)进行计算。
[0097] 智能合约将每一轮获得的所有节点的偏离指数进行排序;如果某个节点连续k轮偏离指数排名第一,则确定该节点为可疑节点。k满足式(2)。
[0098] 其他节点2基于PBFT机制对可疑节点进行投票,如果投票通过,则确定该可疑节点的样本数据量为虚假数据量,将该节点的通证销毁。
[0099] 模型训练完成之后,将模型产生的收益根据节点的样本数据量进行分配;第m个节点的收益值为 ,其中,F为总收益, 为第m个节点的样本数据量,n为节点的总
数。
[0100] 本实施例提供的基于联盟链的联邦学习的数据处理系统,建立了智能合约机制,能够计算各节点的偏离指数,从而对具有虚报数据量的可疑节点进行判断,通过投票机制
准确的确定虚报数据量的节点,保证了生态的良性运转,使得节点能够顺利完成联邦学习
模型训练。建立了收益分配机制,节点的收益根据其数据样本量进行分配,保证所有参与者
的利益公平。成员间无需依赖中心节点,参与方能够在没有中心节点的情况下完成模型协
同训练。
[0101] 实施例四
[0102] 本公开实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行如上实施例所述的方法步骤。
[0103] 需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不
限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计
算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便
携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储
器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD‑ROM)、光存储器件、磁存储器件、
或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程
序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本
公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其
中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于
电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存
储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于
由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的
程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述
的任意合适的组合。
[0104] 上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
[0105] 可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C+
+,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可
以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、
部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。
在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(AN)或
广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提
供商来通过因特网连接)。
[0106] 附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代
表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用
于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标
注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上
可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注
意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执
行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令
的组合来实现。
[0107] 描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元模块的名称在某种情况下并不构成对该模块本身的限定。
[0108] 以上介绍了本发明的较佳实施方式,旨在使得本发明的精神更加清楚和便于理解,并不是为了限制本发明,凡在本发明的精神和原则之内,所做的修改、替换、改进,均应
包含在本发明所附的权利要求概括的保护范围之内。