一种联邦学习数据防篡改监测方法及相关装置转让专利

申请号 : CN202110456886.0

文献号 : CN113094761B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 黄华威张可姗郑子彬

申请人 : 中山大学

摘要 :

本申请公开了一种联邦学习数据防篡改监测方法及相关装置,方法包括:通过服务器将训练配置数据发送至筛选后得到的目标设备中,使得目标设备根据训练配置数据进行本地训练,得到训练结果;通过目标设备采用预置哈希算法计算训练结果的第一哈希值,同时将第一哈希值发送至区块链,将训练结果发送至服务器,区块链通过预置智能合约与服务器和目标设备均建立连接;通过服务器根据接收到的训练结果和从区块链获取的第一哈希值进行结果验证,验证通过则判断服务器接收到的训练结果未被篡改。本申请解决了现有联邦学习缺乏传输数据被篡改的监测机制,导致服务器无法判断数据的可信度,影响全局模型更新效果的技术问题。

权利要求 :

1.一种联邦学习数据防篡改监测方法,其特征在于,包括:通过服务器将训练配置数据发送至筛选后得到的目标设备中,使得所述目标设备根据所述训练配置数据进行本地训练,得到训练结果,且所述服务器能够综合模型的训练结果;

通过所述目标设备采用预置哈希算法计算所述训练结果的第一哈希值,同时将所述第一哈希值发送至区块链,将所述训练结果发送至所述服务器,使所述训练结果不公开,所述区块链通过预置智能合约与所述服务器和所述目标设备均建立连接;

通过所述服务器根据接收到的所述训练结果和从所述区块链获取的所述第一哈希值进行结果验证,验证通过则判断所述服务器接收到的所述训练结果未被篡改。

2.根据权利要求1所述的联邦学习数据防篡改监测方法,其特征在于,所述通过所述服务器根据接收到的所述训练结果和从所述区块链获取的所述第一哈希值进行结果验证,验证通过则判断所述服务器接收到的所述训练结果未被篡改,包括:通过所述服务器采用所述预置哈希算法计算接收到的所述训练结果的第二哈希值,同时在所述区块链中获取所述第一哈希值;

通过所述服务器将所述第一哈希值与所述第二哈希值进行结果对比验证,若是一致,则验证通过,并判断所述服务器接收到的所述训练结果未被篡改。

3.根据权利要求1所述的联邦学习数据防篡改监测方法,其特征在于,所述目标设备的筛选过程为:

在所述服务器接收到候选设备的参与请求指令后,通过所述服务器根据预置权值筛选规则对所述候选设备进行筛选,得到所述目标设备。

4.根据权利要求3所述的联邦学习数据防篡改监测方法,其特征在于,所述在所述服务器接收到候选设备的参与请求指令后,通过所述服务器根据预置筛选规则对所述候选设备进行筛选,得到所述目标设备,还包括:若所述候选设备的数量小于所述服务器设定的阈值,则通过所述服务器将所述候选设备作为所述目标设备。

5.一种联邦学习数据防篡改监测装置,其特征在于,包括:下发训练模块,用于通过服务器将训练配置数据发送至筛选后得到的目标设备中,使得所述目标设备根据所述训练配置数据进行本地训练,得到训练结果,且所述服务器能够综合模型的训练结果;

计算发送模块,用于通过所述目标设备采用预置哈希算法计算所述训练结果的第一哈希值,同时将所述第一哈希值发送至区块链,将所述训练结果发送至所述服务器,使所述训练结果不公开,所述区块链通过预置智能合约与所述服务器和所述目标设备均建立连接;

验证判断模块,用于通过所述服务器根据接收到的所述训练结果和从所述区块链获取的所述第一哈希值进行结果验证,验证通过则判断所述服务器接收到的所述训练结果未被篡改。

6.根据权利要求5所述的联邦学习数据防篡改监测装置,其特征在于,所述验证判断模块,具体用于:

通过所述服务器采用所述预置哈希算法计算接收到的所述训练结果的第二哈希值,同时在所述区块链中获取所述第一哈希值;

通过所述服务器将所述第一哈希值与所述第二哈希值进行结果对比验证,若是一致,则验证通过,并判断所述服务器接收到的所述训练结果未被篡改。

7.根据权利要求5所述的联邦学习数据防篡改监测装置,其特征在于,所述目标设备的筛选过程为:

在所述服务器接收到候选设备的参与请求指令后,通过所述服务器根据预置权值筛选规则对所述候选设备进行筛选,得到所述目标设备。

8.根据权利要求7所述的联邦学习数据防篡改监测装置,其特征在于,还包括:数量筛选模块,用于若所述候选设备的数量小于所述服务器设定的阈值,则通过所述服务器将所述候选设备作为所述目标设备。

9.一种联邦学习数据防篡改监测设备,其特征在于,所述设备包括处理器以及存储器;

所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;

所述处理器用于根据所述程序代码中的指令执行权利要求1‑4任一项所述的联邦学习数据防篡改监测方法。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行权利要求1‑4任一项所述的联邦学习数据防篡改监测方法。

说明书 :

一种联邦学习数据防篡改监测方法及相关装置

技术领域

[0001] 本申请涉及联邦学习技术领域,尤其涉及一种联邦学习数据防篡改监测方法及相关装置。

背景技术

[0002] 区块链是一个共享数据库,是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。存储于区块链中的数据或信息,具有“防篡改性”、“可以追
溯”、“公开透明”、“集体维护”等特征。基于这些特征,区块链技术奠定了坚实的“信任”基
础,创造了可靠的“合作”机制。而智能合约是存储在区块量上并能够在区块链中运行的一
端代码,可以简单理解成运行在区块链框架上的一段无第三方控制的可自动执行的脚本;
因此,可以根据需要编写友好的智能合约,提高区块链与其他节点的合作效率。
[0003] 联邦学习是一种机器学习的框架,在联邦学习中,参与的计算机需要按时地将他们的训练结果反馈给服务器,而只使用自身数据库中的数据集进行训练。服务器在得到参
与的计算机的训练结果后会进行一次全局的模型更新,再将相关的参数传递给下一次进行
联邦学习的计算机。进行机器学习所需的数据集仅存储在各个计算机中并各自使用,这样
减少了服务器的存储压力,也使得部分敏感的数据集得到保护。
[0004] 现有的联邦学习的安全性威胁主要可以分为内部威胁和外部威胁,内部威胁可以通过设备信用度的管理等方式缓解或者排除,但是类似于数据流拦截,数据流篡改或者冒
充等外部威胁却缺乏有效的应对措施。这就导致服务器无法确保接收到的数据是否可信,
进而会影响服务器后续的全局模型更新。

发明内容

[0005] 本申请提供了一种联邦学习数据防篡改监测方法及相关装置,用于解决现有联邦学习缺乏传输数据被篡改的监测机制,导致服务器无法判断数据的可信度,影响全局模型
更新效果的技术问题。
[0006] 有鉴于此,本申请第一方面提供了一种联邦学习数据防篡改监测方法,包括:
[0007] 通过服务器将训练配置数据发送至筛选后得到的目标设备中,使得所述目标设备根据所述训练配置数据进行本地训练,得到训练结果;
[0008] 通过所述目标设备采用预置哈希算法计算所述训练结果的第一哈希值,同时将所述第一哈希值发送至区块链,将所述训练结果发送至所述服务器,所述区块链通过预置智
能合约与所述服务器和所述目标设备均建立连接;
[0009] 通过所述服务器根据接收到的所述训练结果和从所述区块链获取的所述第一哈希值进行结果验证,验证通过则判断所述服务器接收到的所述训练结果未被篡改。
[0010] 可选的,所述通过所述服务器根据接收到的所述训练结果和从所述区块链获取的所述第一哈希值进行结果验证,验证通过则判断所述服务器接收到的所述训练结果未被篡
改,包括:
[0011] 通过所述服务器采用所述预置哈希算法计算接收到的所述训练结果的第二哈希值,同时在所述区块链中获取所述第一哈希值;
[0012] 通过所述服务器将所述第一哈希值与所述第二哈希值进行结果对比验证,若是一致,则验证通过,并判断所述服务器接收到的所述训练结果未被篡改。
[0013] 可选的,所述目标设备的筛选过程为:
[0014] 在所述服务器接收到候选设备的参与请求指令后,通过所述服务器根据预置权值筛选规则对所述候选设备进行筛选,得到所述目标设备。
[0015] 可选的,所述在所述服务器接收到候选设备的参与请求指令后,通过所述服务器根据预置筛选规则对所述候选设备进行筛选,得到所述目标设备,还包括:
[0016] 若所述候选设备的数量小于所述服务器设定的阈值,则通过所述服务器将所述候选设备作为所述目标设备。
[0017] 本申请第二方面提供了一种联邦学习数据防篡改监测装置,包括:
[0018] 下发训练模块,用于通过服务器将训练配置数据发送至筛选后得到的目标设备中,使得所述目标设备根据所述训练配置数据进行本地训练,得到训练结果;
[0019] 计算发送模块,用于通过所述目标设备采用预置哈希算法计算所述训练结果的第一哈希值,同时将所述第一哈希值发送至区块链,将所述训练结果发送至所述服务器,所述
区块链通过预置智能合约与所述服务器和所述目标设备均建立连接;
[0020] 验证判断模块,用于通过所述服务器根据接收到的所述训练结果和从所述区块链获取的所述第一哈希值进行结果验证,验证通过则判断所述服务器接收到的所述训练结果
未被篡改。
[0021] 可选的,所述验证判断模块,具体用于:
[0022] 通过所述服务器采用所述预置哈希算法计算接收到的所述训练结果的第二哈希值,同时在所述区块链中获取所述第一哈希值;
[0023] 通过所述服务器将所述第一哈希值与所述第二哈希值进行结果对比验证,若是一致,则验证通过,并判断所述服务器接收到的所述训练结果未被篡改。
[0024] 可选的,所述目标设备的筛选过程为:
[0025] 在所述服务器接收到候选设备的参与请求指令后,通过所述服务器根据预置权值筛选规则对所述候选设备进行筛选,得到所述目标设备。
[0026] 可选的,还包括:
[0027] 数量筛选模块,用于若所述候选设备的数量小于所述服务器设定的阈值,则通过所述服务器将所述候选设备作为所述目标设备。
[0028] 本申请第三方面提供了一种联邦学习数据防篡改监测设备,所述设备包括处理器以及存储器;
[0029] 所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
[0030] 所述处理器用于根据所述程序代码中的指令执行第一方面所述的联邦学习数据防篡改监测方法。
[0031] 本申请第四方面提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行第一方面所述的联邦学习数据防篡改
监测方法。
[0032] 从以上技术方案可以看出,本申请实施例具有以下优点:
[0033] 本申请中,提供了一种联邦学习数据防篡改监测方法,包括:通过服务器将训练配置数据发送至筛选后得到的目标设备中,使得目标设备根据训练配置数据进行本地训练,
得到训练结果;通过目标设备采用预置哈希算法计算训练结果的第一哈希值,同时将第一
哈希值发送至区块链,将训练结果发送至服务器,区块链通过预置智能合约与服务器和目
标设备均建立连接;通过服务器根据接收到的训练结果和从区块链获取的第一哈希值进行
结果验证,验证通过则判断服务器接收到的训练结果未被篡改。
[0034] 本申请提供的联邦学习数据防篡改监测方法中,执行训练的目标设备是通过筛选得到的,而且通过区块链存储训练结果对应的第一哈希值,由于训练结果一般为矩阵形式,
而计算的第一哈希值是一个确切的数值,发送给区块链的过程中基本不存在被截取,反推
出训练结果的可能,另外,区块链具备可追溯性,所以数据监测性能良好,服务器根据第一
哈希值就可以验证接收到的训练结果是否被篡改,并判断训练结果是否可行。因此,本申请
能够解决现有联邦学习缺乏传输数据被篡改的监测机制,导致服务器无法判断数据的可信
度,影响全局模型更新效果的技术问题。

附图说明

[0035] 图1为本申请实施例提供的一种联邦学习数据防篡改监测方法的流程示意图;
[0036] 图2为本申请实施例提供的一种联邦学习数据防篡改监测装置的结构示意图;
[0037] 图3为本申请实施例提供的联邦学习与区块链结合的结构示意图;
[0038] 图4为本申请实施例提供的服务器与设备节点之间的智能合约布局结构示意图。

具体实施方式

[0039] 为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本
申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在
没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0040] 为了便于理解,请参阅图1,本申请提供的一种联邦学习数据防篡改监测方法的实施例,包括:
[0041] 步骤101、通过服务器将训练配置数据发送至筛选后得到的目标设备中,使得目标设备根据训练配置数据进行本地训练,得到训练结果。
[0042] 在联邦学习中,通过将不同的计算机通过网络进行连接,让中心的服务器将训练任务的配置信息分发给参与的计算机或者设备,参与的计算机或者设备针对自身本地的数
据集进行训练,各个计算机再将训练结果反馈给服务器,因而缓解了单一计算机进行机器
学习的存储能力有限以及分布式机器学习数据集隐私暴露的问题。在这个方法中,中心服
务器需要协调系统中参与的设备,综合模型的训练结果,其余的负责进行训练的设备也需
要拥有本地的训练集以及能够负担自己对应训练量的内存和处理器。
[0043] 在本实施例中,首先会对已有的设备进行筛选得到目标设备,选出的目标设备能够满足本次的总体训练任务要求。可以理解的是,训练配置数据是根据实际训练要求设置
的,不涉及实际的训练用到的数据集之类的信息。而训练结果一般是一个数据矩阵。
[0044] 进一步地,目标设备的筛选过程为:
[0045] 在服务器接收到候选设备的参与请求指令后,通过服务器根据预置权值筛选规则对候选设备进行筛选,得到目标设备。
[0046] 一些能够完成训练任务的设备都可以作为候选设备,候选设备都能够向服务器发送参与训练的请求指令,服务器根据请求指令对候选设备进行筛选,本实施例中选择的筛
选规则是预置权值筛选规则,实质就是根据每个候选设备的参数信息计算权值,得到权值
数组,降序排列,根据数据大小进行定量选择,得到对应的目标设备。权值的具体计算方法
可以是:
[0047] W=a*P+b*S;
[0048] 其中,a、b为自定义实参数,S为每个设备的评分值,P为设备硬件情况,例如CPU、电量、数据集的大小情况。每轮服务器在有数量限制的情况下会选择权值最高的设备组进行
训练。
[0049] 每次选取目标设备,需要计算每一个设备的评分值S,评分由设备训练实际时间与提出的预估时间的差值,以及历史评分组成;每一个设备的评分值都可以采用以下方式计
算:
[0050] St=u*(Et‑Rt)*Xt+v*St‑1;
[0051] 式中,t为当前训练轮次,t‑1为前一训练轮次,S为评分值,E为预估时间,R为实际时间,u、v为两个自定义实数,Xt为设备在第t轮是否被选中,被选中则取值为1,否则取值为
0;X可以理解成是一个布尔数组。
[0052] 除了上述筛选机制外,还可以在最开始的时候通过服务器对候选设备进行粗筛选,具体的标准就是训练时间,服务器提出一个时间阈值筛选设备提出的预估训练用时,为
了防止设备故意提出较短的时间获得更大被选中的概率,在结束阶段可以再计算一次设备
实际训练时间与预估时间的差距,超出则降低评分;就是将时间作为设备筛选规则的一部
分。
[0053] 进一步地,还包括:
[0054] 若候选设备的数量小于服务器设定的阈值,则通过服务器将候选设备作为目标设备。
[0055] 上述的筛选是针对在服务器需要的目标设备数量小于发出参与请求指令的候选设备数量的情况,如果候选设备数量不足以满足服务器的目标设备量的需求,那么筛选过
程中去掉计算权值的操作,直接将候选设备设定为目标设备,进行训练。
[0056] 步骤102、通过目标设备采用预置哈希算法计算训练结果的第一哈希值,同时将第一哈希值发送至区块链,将训练结果发送至服务器,区块链通过预置智能合约与服务器和
目标设备均建立连接。
[0057] 通常情况下,设备进行机器学习的训练结果是一个矩阵,相较于一个只有固定比特数的哈希值来说,内存占用量相对较多。换成一个哈希值能够减少对于区块链存储的占
用量,也间接减少了其他节点上区块链的存储占用。而当把一个训练结果进行哈希计算之
后,是几乎不可能通过哈希值来逆推得到原始数据的,这也对训练结果进行有效的保护。如
果一开始只是将训练结果上传至区块链中,则很有可能把训练结果公开化,又使得区块链
存储的数据相对膨胀。联邦学习与区块链结合的具体信息流向结构图请参阅图3。
[0058] 所有的目标设备都需要将训练结果反馈至服务器,使得服务器综合训练结果对全局模型进行更新,区块链与目标设备建立连接是为了发送第一哈希值到区块链上,与服务
器建立连接是为了后续从区块链中获取第一哈希值。
[0059] 步骤103、通过服务器根据接收到的训练结果和从区块链获取的第一哈希值进行结果验证,验证通过则判断服务器接收到的训练结果未被篡改。
[0060] 此处的操作主要是通过第一哈希值验证服务器接收到的训练结果在传输过程中没有被第三方计算机设备截取篡改;第一哈希值是存储在区块链上的,所以,第一哈希值具
有良好的防篡改性和可追溯性,因此,以第一哈希值为基准进行训练结果的验证是非常可
靠的。
[0061] 验证通过则说明训练结果在传输过程中没有被篡改,结果可信;验证不通过说明训练结果可能在传输过程已经被第三方计算机设备篡改,训练结果不可信。
[0062] 进一步地,步骤103,包括:
[0063] 通过服务器采用预置哈希算法计算接收到的训练结果的第二哈希值,同时在区块链中获取第一哈希值;
[0064] 通过服务器将第一哈希值与第二哈希值进行结果对比验证,若是一致,则验证通过,并判断服务器接收到的训练结果未被篡改。
[0065] 可以理解的是,目标设备中采用的预置哈希算法需要与服务器中的哈希算法一致,便于验证计算。
[0066] 服务器将接收到的训练结果采用与目标设备同样的预置哈希算法计算得到第二哈希值,与第一哈希值比较,如果训练结果未被篡改,那么得到的哈希值应该是完全一致
的,否则说明训练结果在传输过程中已经被篡改。
[0067] 本实施例中,将训练结果的哈希值存储在区块链上,而利用区块链进行数据存储,就需要借助智能合约的实现。服务器作为联邦学习系统中最受信任的以及最具责任性的节
点,需要对智能合约进行编写和部署,事先调整好合约的状态,并把合约地址传送给所有参
与联邦学习任务的设备节点。具体请参阅图4,其中智能合约中需要允许服务器的添加可操
作性设备的功能,以及从区块链读数据的功能;另外智能合约需要满足普通设备向区块链
写入数据的功能,即目标设备发送第一哈希值到区块链。
[0068] 本申请实施例提供的联邦学习数据防篡改监测方法中,执行训练的目标设备是通过筛选得到的,而且通过区块链存储训练结果对应的第一哈希值,由于训练结果一般为矩
阵形式,而计算的第一哈希值是一个确切的数值,发送给区块链的过程中基本不存在被截
取,反推出训练结果的可能,另外,区块链具备可追溯性,所以数据监测性能良好,服务器根
据第一哈希值就可以验证接收到的训练结果是否被篡改,并判断训练结果是否可行。因此,
本申请实施例能够解决现有联邦学习缺乏传输数据被篡改的监测机制,导致服务器无法判
断数据的可信度,影响全局模型更新效果的技术问题。
[0069] 以上为本申请提供的一种联邦学习数据防篡改监测方法的一个实施例,以下为本申请提供的一种联邦学习数据防篡改监测装置的一个实施例。
[0070] 为了便于理解,请参阅图2,本申请提供了一种联邦学习数据防篡改监测装置的实施例,包括:
[0071] 下发训练模块201,用于通过服务器将训练配置数据发送至筛选后得到的目标设备中,使得目标设备根据训练配置数据进行本地训练,得到训练结果;
[0072] 计算发送模块202,用于通过目标设备采用预置哈希算法计算训练结果的第一哈希值,同时将第一哈希值发送至区块链,将训练结果发送至服务器,区块链通过预置智能合
约与服务器和目标设备均建立连接;
[0073] 验证判断模块203,用于通过服务器根据接收到的训练结果和从区块链获取的第一哈希值进行结果验证,验证通过则判断服务器接收到的训练结果未被篡改。
[0074] 进一步地,验证判断模块203,具体用于:
[0075] 通过服务器采用预置哈希算法计算接收到的训练结果的第二哈希值,同时在区块链中获取第一哈希值;
[0076] 通过服务器将第一哈希值与第二哈希值进行结果对比验证,若是一致,则验证通过,并判断服务器接收到的训练结果未被篡改。
[0077] 进一步地,目标设备的筛选过程为:
[0078] 在服务器接收到候选设备的参与请求指令后,通过服务器根据预置权值筛选规则对候选设备进行筛选,得到目标设备。
[0079] 进一步地,还包括:
[0080] 数量筛选模块,用于若候选设备的数量小于服务器设定的阈值,则通过服务器将候选设备作为目标设备。
[0081] 以上为本申请提供的一种联邦学习数据防篡改监测装置的一个实施例,以下为本申请提供的一种联邦学习数据防篡改监测设备的一个实施例。
[0082] 本申请还提供了一种联邦学习数据防篡改监测设备,设备包括处理器以及存储器;
[0083] 存储器用于存储程序代码,并将程序代码传输给处理器;
[0084] 处理器用于根据程序代码中的指令执行上述方法实施例中的联邦学习数据防篡改监测方法。
[0085] 本申请还提供了一种计算机可读存储介质,计算机可读存储介质用于存储程序代码,程序代码用于执行上述方法实施例中的联邦学习数据防篡改监测方法。
[0086] 在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅
仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结
合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的
相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通
信连接,可以是电性,机械或其它的形式。
[0087] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个
网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目
的。
[0088] 另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单
元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0089] 所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上
或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式
体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以通过一台计算机
设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全
部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文全称:Read‑Only 
Memory,英文缩写:ROM)、随机存取存储器(英文全称:RandomAccess Memory,英文缩写:
RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0090] 以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前
述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些
修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。