基于联邦学习的数据处理方法及装置、设备、存储介质与流程

文档序号:30664257发布日期:2022-07-06 02:25阅读:171来源:国知局
基于联邦学习的数据处理方法及装置、设备、存储介质与流程

1.本技术涉及计算机技术领域,具体而言,涉及一种基于联邦学习的数据处理方法及装置、电子设备、存储介质、程序产品。


背景技术:

2.在工业生产中,通常需要对生产出的产品或半成品进行故障检测,例如,半导体产业中,在电子元件上完成焊接后,需要对电子元件进行检测,以确定是否出现焊脚偏移、焊脚缺失、相邻焊脚焊锡连接导致短路、焊盘不规则、焊脚过长等故障。但是,目前通常是通过人工对产品进行故障检测或者根据相应的传感器采集到的数据以及对应的阈值对产品进行故障检测,故障检测效率低且精度低。


技术实现要素:

3.为解决上述技术问题,本技术的实施例提供了一种基于联邦学习的数据处理方法及装置、电子设备、存储介质、程序产品,至少在一定程度上可以提升故障检测效率和精度。
4.本技术的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本技术的实践而习得。
5.根据本技术实施例的一个方面,提供了一种基于联邦学习的数据处理方法,应用于包括云服务器以及多个边缘节点的联邦学习系统,所述方法由所述多个边缘节点分别执行,所述方法包括:
6.获取训练样本,并计算所述训练样本的重要度;
7.若所述训练样本的重要度大于预设重要度阈值,则对所述训练样本进行加密,得到所述训练样本的密文;
8.将所述训练样本的密文发送至所述云服务器,以使所述云服务器根据所述训练样本的密文对故障检测模型进行训练;
9.接收所述云服务器发送的训练后的故障检测模型,以基于接收到的故障检测模型进行故障检测。
10.根据本技术实施例的一个方面,提供了一种基于联邦学习的数据处理方法,应用于包含云服务器以及多个边缘节点的联邦学习系统,所述方法由所述云服务器执行,所述方法包括:
11.接收每个边缘节点发送的训练样本的密文,并基于所述每个边缘节点发送的训练样本的密文对故障检测模型进行训练;所述每个边缘节点发送的训练样本的密文由所述每个边缘节点在确定所述训练样本的重要度大于预设重要度阈值的条件下,对所述训练样本进行加密得到;
12.将训练后的故障检测模型分别发送至所述多个边缘节点,以使所述多个边缘节点基于接收到的故障检测模型进行故障检测。
13.根据本技术实施例的一个方面,提供了一种基于联邦学习的数据处理装置,应用
于包括云服务器以及多个边缘节点的联邦学习系统,所述装置分别配置在所述多个边缘节点,所述装置包括:
14.重要度评估模块,配置为获取训练样本,并计算所述训练样本的重要度;
15.数据封装模块,配置为若所述训练样本的重要度大于预设重要度阈值,则对所述训练样本进行加密,得到所述训练样本的密文;
16.边缘联合训练模块,配置为将所述训练样本的密文发送至所述云服务器,以使所述云服务器根据所述训练样本的密文对故障检测模型进行训练;
17.故障检测模块,配置为接收所述云服务器发送的训练后的故障检测模型,以基于接收到的故障检测模型进行故障检测。
18.根据本技术实施例的一个方面,提供了一种基于联邦学习的数据处理装置,应用于包括云服务器以及多个边缘节点的联邦学习系统,所述装置配置在所述云服务器中,所述装置包括:
19.模型聚合模块,配置为接收每个边缘节点发送的训练样本的密文,并基于所述每个边缘节点发送的训练样本的密文对故障检测模型进行训练;所述每个边缘节点发送的训练样本的密文由所述每个边缘节点在确定所述训练样本的重要度大于预设重要度阈值的条件下,对所述训练样本进行加密得到;
20.模型更新模块,配置为将训练后的故障检测模型分别发送至所述多个边缘节点,以使所述多个边缘节点基于接收到的故障检测模型进行故障检测。
21.根据本技术实施例的一个方面,提供了一种电子设备,包括:
22.一个或多个处理器;
23.存储装置,用于存储一个或多个计算机程序,当所述一个或多个计算机程序被所述一个或多个处理器执行时,使得所述电子设备实现如前所述的基于联邦学习的数据处理方法。
24.根据本技术实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被电子设备的处理器执行时,使电子设备执行如前所述的基于联邦学习的数据处理方法。
25.根据本技术实施例的一个方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如前所述的基于联邦学习的数据处理方法。
26.在本技术的实施例所提供的技术方案中,多个边缘节点中的每个边缘节点可以获取训练样本,并计算训练样本的重要度,若训练样本的重要度大于预设重要度阈值,则对训练样本进行加密,得到训练样本的密文,将训练样本的密文发送至云服务器;云服务器基于每个边缘节点发送的训练样本的密文对故障检测模型进行训练,并将训练后的故障检测模型分别发送至多个边缘节点;每个边缘节点基于接收到故障检测模型进行故障检测。这样,一方面,云服务器可以根据多个边缘节点发送的训练样本的密文对故障检测模型进行训练,从而增加了训练样本的来源,打破了不同设备之间的数据壁垒,提升了故障检测模型的泛化能力,提升了故障检测的精度,并且,保障了数据安全,同时,在训练样本的重要度大于预设重要度阈值时,才将训练样本的密文发送至云服务器,以使云服务器基于训练样本的密文对故障检测模型进行训练,从而节约计算资源,提升模型的收敛速度;另一方面,利用边缘节点完成训练样本的收集,利用云服务器完成故障检测模型的训练,从而合理利用边
缘节点和云服务器的优势,提升训练样本的获取速度以及故障检测模型的训练效率。
27.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
28.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
29.图1是本技术涉及的实施环境的示意图图;
30.图2是本技术的一示例性实施例示出的基于联邦学习的数据处理方法的流程图;
31.图3是图2所示的步骤s210在一示例性实施例中的流程图;
32.图4是图2所示的步骤s220在一示例性实施例中的流程图;
33.图5是本技术的一示例性实施例示出的基于联邦学习的数据处理方法的流程图;
34.图6是本技术的另一示例性实施例示出的基于联邦学习的数据处理方法的流程图;
35.图7是本技术的一示例性实施例示出的基于联邦学习的数据处理装置的框图;
36.图8是本技术的一示例性实施例示出的基于联邦学习的数据处理装置的框图;
37.图9是本技术的一示例性实施例示出的联邦学习系统的示意图;
38.图10示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
具体实施方式
39.这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
40.附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
41.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
42.还需要说明的是:在本技术中提及的“多个”是指两个或者两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
43.在工业生产中,通常需要对生产出的产品或半成品进行故障检测,例如,半导体产业中,在电子元件上完成焊接后,需要对电子元件进行检测,以确定是否出现焊脚偏移、焊脚缺失、相邻焊脚焊锡连接导致短路、焊盘不规则、焊脚过长等故障。但是,目前通常是通过人工对产品进行故障检测或者根据相应的传感器采集到的数据以及对应的阈值对产品进
行故障检测,故障检测效率低且精度低。基于此,本技术的实施例提出了一种基于联邦学习的数据处理方法及装置、电子设备、存储介质、程序产品,从而可以提升基于联邦学习的数据处理准确度。
44.参见图1,图1是本技术涉及的实施环境的示意图。该实施环境为联邦学习系统,包括云服务器100和多个边缘节点200。其中,云服务器100和每个边缘节点200之间通过有线或者无线网络进行通信。
45.其中,云服务器100可以提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)以及大数据和人工智能平台等基础云计算服务。
46.边缘节点200是指在靠近用户的网络边缘侧构建的业务平台,用于提供存储、计算、网络等资源,从而将部分关键业务应用下沉到接入网络边缘,以减少网络传输和多级转发带来的宽度和时延损耗。
47.云服务器100和边缘节点200共同维护故障检测模型,其中,边缘节点200为数据的提供方以及故障检测模型的使用方,其可以对应于不同的产品生产商。云服务器100为故障检测模型的训练方,其可以获取不同边缘节点200发送的训练样本的密文,并基于训练样本的密文对故障检测模型进行训练,从而打破不同产品生产商之间的数据壁垒,提升故障检测模型的泛化能力和精度。
48.在一示例性实施例中,每个边缘节点200获取训练样本,并计算训练样本的重要度,若训练样本样本的重要度大于预设重要度阈值,则对训练样本进行加密,得到训练样本的密文,并将训练样本的密文方式至云服务器100;云服务器100接收多个边缘节点发送的训练样本的密文,并基于多个边缘节点200发送的训练样本的密文对故障检测模型进行训练,并将训练后的故障检测模型分别发送至多个边缘节点200;每个边缘节点200基于接收到故障检测模型进行故障检测。一方面,云服务器可以根据多个边缘节点发送的训练样本的密文对故障检测模型进行训练,从而增加了训练样本的来源,打破了不同设备之间的数据壁垒,提升了故障检测模型的泛化能力,提升了故障检测的精度,并且,保障了数据安全,同时,在训练样本的重要度大于预设重要度阈值时,才将训练样本的密文发送至云服务器,以使云服务器基于训练样本的密文对故障检测模型进行训练,从而节约计算资源,提升模型的收敛速度;另一方面,利用边缘节点完成训练样本的收集,利用云服务器完成故障检测模型的训练,从而合理利用边缘节点和云服务器的优势,提升训练样本的获取速度以及故障检测模型的训练效率。
49.需要说明的是,图1中的边缘节点200的数目仅仅是示意性的,根据实际需要,可以具有任意数量的边缘节点200。
50.参见图2,图2是本技术的一示例性实施例示出的一种基于联邦学习的数据处理方法的流程图,该基于联邦学习的数据处理方法可以应用于图1所示的实施环境,并由图1所示实施环境中的每个边缘节点200执行。
51.如图2所示,在一示例性实施例中,该基于联邦学习的数据处理方法可以包括步骤s210至步骤s240,详细介绍如下:
52.步骤s210,边缘节点获取训练样本,并计算训练样本的重要度。
53.首先需要说明的是,需要说明的是,边缘节点为联邦学习系统中用于提供训练数
据(即训练样本)的一方。
54.其次,训练样本用于对故障检测模型进行训练,以对模型参数进行优化。训练样本包括待检测产品的关联数据以及基于待检测产品的关联数据确定出的标签。其中,待检测产品的关联数据可以根据实际需要灵活设置,在一可选示例中,考虑到故障产品与合格产品的外观不同,例如,从产品的外观可以看出产品是否出现焊脚偏移,因此,待检测产品的关联数据可以是待检测产品的图片,其中,可以通过图像采集设备对待检测产品进行拍摄以得到待检测产品的图片,图像采集设备包括但不限于摄像头;或者,在另一可选示例中,待检测产品的关联数据还可以包括待检测产品的重量等。标签用于表征待检测产品是否出现故障,标签还可以表征产品出现的故障类型。
55.另外,训练样本的重要度用于表征训练样本对模型优化的重要程度。
56.为了节约计算资源,提升模型的优化效率,本实施例中,边缘节点可以先获取训练样本,然后计算训练样本的重要度。
57.其中,边缘节点获取训练样本的具体方式可以根据实际需要灵活设置。
58.在一可选的实施方式中,若训练样本中包含的待检测产品的关联数据为图片,则边缘节点可以获取来自图像采集设备的待检测产品的多张图片,并对多张图片进行识别以从多张图片中筛选出表征待检测产品出现故障的第一目标图片,并获取第一目标图片的审核结果,根据审核结果确定第一目标图片的标签,并将第一目标图片和第一目标图片的标签作为训练样本。也就是说,图像采集设备可以对待检测产品的图片进行采集,得到多张图片,并将多张图片上传至边缘节点;边缘节点在接收到多张图片后,可以对多张图片进行识别,若某图片表征待检测产品出现故障,则将其作为第一目标图片,并获取对第一目标图片以及第一目标图片的识别结果的人工审核结果,并根据人工审核结果确定第一目标图片以及第一目标图片的标签,将第一目标图片以及第一目标图片的标签,这样,先根据边缘节点的自动识别结果对多张图片进行筛选,再对筛选出的图片进行人工审核以确定图片的标签,不仅可以提升标签的准确度,从而提升模型的准确度以及收敛速度,还降低了人工审核量,提升了标签的获取效率。
59.可选的,图像采集设备可以持续对待检测产品的图片进行采集得到视频流,将视频流发送至边缘网关;边缘网关在接收到视频流后,对视频流进行解帧得到多张图片,并将多张图片传输至边缘节点。边缘节点可以基于本端存储的故障检测模型对多张图片进行识别,以筛选出第一目标图片。
60.在另一可选的实施方式中,若训练样本中包含的待检测产品的关联数据为图片,则边缘节点可以获取来自图像采集设备的待检测产品的多张图片,并对多张图片进行识别以从多张图片中筛选出表征待检测产品未出现故障的第二目标图片,并获取第二目标图片的审核结果,根据审核结果确定第二目标图片的标签,并将第二目标图片和第二目标图片的标签作为训练样本。其中,确定第二目标图片与确定第一目标图片的方式类似,此处不再赘述。在另一可选的实施方式中,边缘节点还可以将第一目标图片、第一目标图片的标签、第二目标图片以及第二目标图片的标签作为训练样本。
61.边缘节点计算训练样本的重要度的具体方式也可以根据实际需要灵活设置。
62.在一可选实施方式中,为了进一步提升安全性,边缘节点在获取训练样本后,可以对训练样本进行检测,以确定训练样本中是否包含敏感数据,若否,则计算训练样本的重要
度;若是,则将训练样本中的敏感数据滤除,对计算过滤后的训练样本的重要度。其中,敏感数据的具体检测方式可以根据实际需要灵活设置,例如,在一可选实施方式中,若训练样本中包含指定类型的数据,则可以确定训练样本中包含敏感数据。
63.步骤s220,若训练样本的重要度大于预设重要度阈值,边缘节点则对训练样本进行加密,得到训练样本的密文。
64.预设重要度阈值为是否对训练样本进行加密并将训练样本的密文发送至云服务器的判断依据,其具体取值可以根据实际需要灵活设置。
65.本实施例中,边缘节点在计算出训练样本的重要度后,可以判断训练样本的重要度是否大于预设重要度阈值,若是,则对训练样本进行加密,得到训练样本的密文。
66.其中,具体加密方式可以根据实际需要灵活设置。例如。加密方式包括但不限于:同态加密、密文共享、差分隐私等。其中,同态加密是基于数学难题额计算机复杂性理论的密码学技术,对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的;差分隐私是密码学中的一种手段,旨在提供一种当从统计数据库查询时,最大化数据查询的准确性,同时最大限度减少识别其记录的机会。
67.步骤s230,边缘节点将训练样本的密文发送至云服务器,以使云服务器根据训练样本的密文对故障检测模型进行训练。
68.故障检测模型为一种机器学习模型,用于基于待识别数据进行故障检测。其可以应用于不同场景,例如,可以应用于对电子元件的故障进行检测,例如,检测检测元件是否出现焊脚偏移、焊脚缺失、相邻焊脚焊锡连接导致短路、焊盘不规则、焊脚过长等故障。
69.边缘节点对训练样本进行加密得到训练样本的密文后,将训练样本的密文传输至云服务器。云服务器基于从不同边缘节点接收到的训练样本的密文对故障检测模型进行训练,以对故障检测模型进行优化。
70.步骤s240,边缘节点接收云服务器发送的训练后的故障检测模型,以基于接收到的故障检测模型进行故障检测。
71.云服务器基于训练样本的密文对故障检测模型进行训练后,可以将训练后的故障检测模型分别发送至多个边缘节点。每个边缘节点在接收到故障检测模型后,可以存储接收到的故障检测模型,在需要进行故障检测时,将待识别数据输入至本地存储的故障检测模型,以得到检测结果。
72.本实施例中,一方面,云服务器可以根据多个边缘节点发送的训练样本的密文对故障检测模型进行训练,从而增加了训练样本的来源,打破了不同设备之间的数据壁垒,提升了故障检测模型的泛化能力,提升了故障检测的精度,并且,保障了数据安全,同时,在训练样本的重要度大于预设重要度阈值时,才将训练样本的密文发送至云服务器,以使云服务器基于训练样本的密文对故障检测模型进行训练,从而节约计算资源,提升模型的收敛速度;另一方面,利用边缘节点完成训练样本的收集以及故障检测,利用云服务器完成故障检测模型的训练,从而合理利用边缘节点和云服务器的优势,合理利用边缘节点和云服务器的资源,提升训练样本的获取速度以及故障检测模型的训练效率。
73.在一示例性实施例中,参见图3所示,图3是图2所示实施例中的步骤s210在一示例性实施例中的流程图。如图3所示,计算训练样本的重要度的过程可以包括步骤s211-步骤
s212,详细介绍如下:
74.步骤s211,边缘节点获取训练样本的关联参数;训练样本的关联参数包括训练样本的数量、训练样本的数据维度、训练样本包含的特征数量中至少一种。
75.其中,训练样本的关联参数是指与训练样本相关的参数,考虑到训练样本的数量、数据维度以及包含的特征数量等会影响模型的精度,因此,训练样本的关联参数可以包括但不限于训练样本的数量、训练样本的数据维度、训练样本包含的特征数量等中的至少一种。需要说明的是,训练样本的数量用于表征训练样本的多少,即边缘节点获取到的训练样本的个数;训练样本的数据维度用于表征训练样本的维度数量,数据维度是指在数据之间形成特定关系,表达多种数据含义的一个很重要的基础概念;在进行故障检测时,需要对待识别数据进行处理以从待识别数据中提取特征,训练样本的特征数量表征从训练样本中提取出的特征的数量,例如,若训练样本的类型为图片,对于空白图片、清晰度不高的图片,从中提取出的特征的数量较少,对于包含完整的待检测产品的图片,从中提取出的特征的数量较多。
76.本实施例中,边缘节点可以获取训练样本的关联参数,以基于训练样本的关联参数计算训练样本的重要度。
77.步骤s212,边缘节点根据训练样本的关联参数确定训练样本的重要度。
78.边缘节点在获取训练样本的关联参数后,可以根据获取到的训练样本的关联参数确定训练样本的重要度。考虑到训练样本太少,其对模型性能的提升较小,因此,训练样本的数量与训练样本的重要度可以呈正相关关系。训练样本的数据维度越多,则模型可以从更多维度进行数据处理,从而进行数据检测精度,提升模型性能,因此,训练样本的数据维度与训练样本的重要度可以呈正相关关系。训练样本包含的特征数量越多,模型进行数据分析的准确度越高,因此,训练样本包含的特征数量与训练样本的重要度可以呈正相关关系。
79.在一可选实施方式中,边缘节点根据训练样本的关联参数确定训练样本的重要度的过程可以包括:根据训练样本的关联参数以及不同关联参数对应的权重确定训练样本的重要度。也就是说,针对训练样本的不同关联参数设置有对应的权重,基于训练样本的关联参数以及不同关联参数对应的权重可以计算训练样本的重要度。
80.在一可选实施方式中,考虑到边缘节点本身的性能也会对模型的训练产生影响,例如,若边缘节点的计算资源和通信资源较少,会导致模型迭代时间较长,影响模型更新速度,因此,边缘节点根据训练样本的关联参数确定训练样本的重要度的过程可以包括:边缘节点获取自身的性能参数,根据性能参数以及训练样本的关联参数确定训练样本的重要度。其中,性能参数包括但不限于通信性能参数等,性能参数越优,训练样本的重要度越高。基于这种方式确定训练样本的重要度,可以提升故障检测模型的更新速度。
81.在一可选实施方式中,考虑到模型本身的精度不同,其对训练样本的需求不同,模型的精度越低,其需求的训练样本越多,因此,根据训练样本的关联参数以及不同关联参数对应的权重确定训练样本的重要度的过程可以包括:边缘节点获取本端存储的故障检测模型的精度,根据故障检测模型的精度以及训练样本的关联参数确定训练样本的重要度。其中,故障检测模型的精度与训练样本的重要度可以呈负相关关系,或者,也可以呈正相关关系。由于故障检测模型会不断更新,因此,边缘节点可以根据本端存储的最新故障检测模型
的精度以及训练样本的关联参数确定训练样本的重要度。
82.需要说明的是,本实施例中,还可以结合边缘节点自身的性能参数、故障检测模型的精度以及训练样本的关联参数确定训练样本的重要度,在此条件下,边缘节点根据训练样本的关联参数以及不同关联参数对应的权重确定训练样本的重要度的过程可以包括:边缘节点根据自身的性能参数、本端存储的最新故障检测模型的精度以及训练样本的关联参数确定训练样本的重要度。
83.考虑到不同参数对模型训练的影响程度不同,因此,可以为不同参数设置对应的权重,在此条件下,边缘节点根据自身的性能参数、故障检测模型的精度以及训练样本的关联参数确定训练样本的重要度的过程可以包括:边缘节点根据自身的性能参数、本端存储的故障检测模型的精度、训练样本的关联参数以及不同参数对应的权重确定训练样本的重要度。在一示例中,训练样本的重要度的计算方式可以如下:
84.di=λ
1,ifi

2,i
ni+λ
3,i
si+λ
4,i
ti+λ
5,i
pi85.其中,di是第i个边缘节点的训练样本的重要度。
86.fi是第i个边缘节点获取到的训练样本的特征数量。其中,可以由第i个边缘节点本地存储的最新故障检测模型从训练样本中提取特征;若第i个边缘节点获取到的训练样本的数量为多个,则fi可以是这多个训练样本包含的特征数量的平均值,例如,假设第i个边缘节点包括3个训练样本,从这3个训练样本中提取的特征数量分别为3、4、5,则fi为4。
87.ni是第i个边缘节点获取到的训练样本的数量。
88.si是第i个边缘节点获取到的训练样本的数据维度。si可以是第i个边缘节点本地存储的最新故障检测模型对训练样本进行数据分析的维度。或者,si也可以是第i个边缘节点获取到的训练样本本身包含的数据维度,其中,若训练样本的数量为多个,则si可以是这多个训练样本本身包含的数据维度的平均值,例如,假设第i个边缘结果获取到2个训练样本,训练样本1为4维数据,训练样本2为3维数据,则si为3.5。
89.ti是第i个边缘节点传输获取到的训练样本所需的时间,ti的具体计算方式可以根据实际需要灵活设置,在一个示例中,可以根据以下方式得到:
90.其中,mqi是第i个边缘节点传输的单个数据包的大小。
91.pi是第i个边缘节点自身存储的最新故障检测模型的精度与故障检测模型的目标精度的绝对值,其可以是第i个边缘节点自身存储的最新故障检测模型的精度与故障检测模型的目标精度的商的绝对值,其中,目标精度是指故障检测模型经过训练后需要达到的精度。
92.λ
1,i-λ
5,i
是对应参数的权重,其中,λ
1,i-λ
3,i
为正数,λ
4,i-λ
5,i
为负数。
93.本实施例中,边缘节点获取训练样本的关联参数;训练样本的关联参数包括训练样本的数量、训练样本的数据维度、训练样本包含的特征数量中至少一种;边缘节点根据训练样本的关联参数确定训练样本的重要度,从而提升故障检测模型的精度和更新速度。
94.在一示例性实施例中,参见图4所示,图4是图2所示实施例中的步骤s220在一示例性实施例中的流程图。如图4所示,对训练样本进行加密,得到训练样本的密文的过程可以包括步骤s221-步骤s222,详细介绍如下:
95.步骤s221,边缘节点从多种加密方式中选择训练样本的加密方式。
96.本实施例中,边缘节点中预先设置有多种加密方式,可以从多种加密方式中选择训练样本的加密方式。
97.其中,选择训练样本的加密方式的具体过程可以根据实际需要灵活设置。
98.在一可选的实施方式中,边缘节点可以根据自身的性能参数从多种加密方式中选择训练样本的加密方式。应当理解的是,不同的加密方式对应的计算成本不同,需要占用的资源量不同,因此,边缘节点可以根据自身的性能参数从多种加密方式中选择训练样本的加密方式,其中,边缘节点的性能与训练样本的加密方式对应的计算成本可以呈正相关关系,即边缘节点的性能越优,训练样本的加密方式对应的计算成本可以相对较高。
99.在另一可选的实施方式中,边缘节点可以根据训练样本的重要度从多种加密方式中选择训练样本的加密方式。应当理解的是,不同的加密方式对应的损失不同,精度也不同,因此,可以根据训练样本的重要度从多种加密方式中选择训练样本的加密方式,其中,训练样本的重要度与训练样本的加密方式的精度可以呈正相关关系,即训练样本的重要度越高,训练样本的加密方式对应的精度可以相对较高。
100.步骤s222,边缘节点基于训练样本的加密方式对训练样本进行加密,得到训练样本的密文。
101.边缘节点在确定出训练样本的加密方式后,可以根据训练样本的加密方式对训练样本进行加密,得到训练样本的密文。
102.本实施例中,边缘节点从多种加密方式中选择训练样本的加密方式,基于训练样本的加密方式对训练样本进行加密,得到训练样本的密文,从而可以基于不同的加密方式对训练样本进行加密,以满足不同需求。
103.参见图5,图5是本技术的一示例性实施例示出的一种基于联邦学习的数据处理方法的流程图,该基于联邦学习的数据处理方法可以应用于图1所示的实施环境,并由图1所示实施环境中的云服务器100执行。
104.如图5所示,在一示例性实施例中,该基于联邦学习的数据处理方法可以包括步骤s510至步骤s520,详细介绍如下:
105.步骤s510,云服务器接收每个边缘节点发送的训练样本的密文,并基于每个边缘节点发送的训练样本的密文对故障检测模型进行训练;每个边缘节点发送的训练样本的密文由每个边缘节点在确定训练样本的重要度大于预设重要度阈值的条件下,对训练样本进行加密得到。
106.云服务器可以接收联邦学习系统中每个边缘节点发送的训练样本的密文,并基于接收到的训练样本的密文对故障检测模型进行训练。其中,每个边缘节点发送的训练样本的密文由该边缘节点在确定该训练样本的重要度大于预设重要度阈值的添加下,对该训练样本进行加密得到。其中,每个边缘节点得到训练样本的密文的具体方式可以参见前述记载,此处不再赘述。
107.其中,此处的训练可以是指模型训练阶段中的训练或者模型更新阶段中的训练。模型训练阶段是指由初始故障检测模型经过训练得到满足一定条件的故障检测模型,使得得到的故障检测模型可以用于进行故障检测,该一定条件可以根据实际需要灵活设置,例如,可以是故障检测模型的精度达到目标精度,或者,故障检测模型的迭代次数达到一定的次数;模型更新阶段是指在得到满足一定条件的故障检测模型之后,基于训练样本对故障
检测模型进行优化的阶段。
108.在一些实施方式中,云服务器还可以向每个边缘节点发送训练指令,以使每个边缘节点在接收到训练指令后,计算训练样本的重要度,并在训练样本的重要度大于预设重要度阈值的条件下,对训练样本进行加密得到训练样本的密文,并将训练样本的密文发送至云服务器。
109.步骤s520,云服务器将训练后的故障检测模型分别发送至多个边缘节点,以使多个边缘节点基于接收到的故障检测模型进行故障检测。
110.云服务器将训练后的故障检测模型分别发送至联邦学习系统中的每个边缘节点。每个边缘节点在接收到故障检测模型后,基于故障检测模型进行故障检测。
111.为了避免训练后的故障检测模型的性能较差,无法满足要求的情况,在一些实施方式中,云服务器将训练后的故障检测模型分别发送至多个边缘节点的过程可以包括:若进行训练后的故障检测模型满足预设条件,则云服务器将训练后的故障检测模型分别发送至多个边缘节点。
112.也就是说,云服务器在基于训练样本的密文对本端存储的故障检测模型进行训练后,可以判断训练后的故障检测模型是否满足预设条件,若是,云服务器将训练后的故障检测模型分别发送至每个边缘节点。
113.其中,预设条件可以根据实际需要灵活设置。例如,若训练前的故障检测模型的精度未达到目标精度,则预设条件可以是训练后的故障检测模型的精度达到目标精度,即在模型训练阶段,预设条件是训练后的故障检测模型的精度达到目标精度;若训练前的故障检测模型的精度达到目标精度,则预设条件可以是训练后的故障检测模型的性能超过训练前的故障检测模型的性能,即在模型更新阶段,预设条件是更新后的故障检测模型的性能超过更新前的故障检测模型的性能,此处的性能可以是指故障检测模型的泛化能力、精度等中的至少一种。
114.在一些实施方式中,云服务器还可以将训练后的故障检测模型以及故障检测模型的梯度发送至每个边缘节点。云服务器还可以将训练后的故障检测模型以及故障检测模型的梯度存储至本地。
115.本实施例中,一方面,云服务器可以根据多个边缘节点发送的训练样本的密文对故障检测模型进行训练,从而增加了训练样本的来源,打破了不同设备之间的数据壁垒,提升了故障检测模型的泛化能力,提升了故障检测的精度,并且,保障了数据安全,同时,在训练样本的重要度大于预设重要度阈值时,才将训练样本的密文发送至云服务器,以使云服务器基于训练样本的密文对故障检测模型进行训练,从而节约计算资源,提升模型的收敛速度;另一方面,利用边缘节点完成训练样本的收集,利用云服务器完成故障检测模型的训练,从而合理利用边缘节点和云服务器的优势,提升训练样本的获取速度以及故障检测模型的训练效率。
116.参见图6,图6是本技术的一示例性实施例示出的一种基于联邦学习的数据处理方法的流程图,该基于联邦学习的数据处理方法可以应用于联邦学习系统,本实施例中,以联邦学习系统包括边缘节点a、边缘节点b以及云服务器为例进行说明,如图6所示,在一示例性实施例中,该基于联邦学习的数据处理方法可以包括步骤s601至步骤s610,详细介绍如下:
117.步骤s601,边缘节点a获取第一训练样本,并计算第一训练样本的重要度。
118.其中,将边缘节点a获取到的训练样本记为第一训练样本。
119.步骤s602,若第一训练样本的重要度大于预设重要度阈值,则边缘节点a对第一训练样本进行加密,得到第一训练样本的密文。
120.步骤s603,边缘节点a将第一训练样本的密文发送至云服务器。
121.步骤s604,边缘节点b获取第二训练样本,并计算第二训练样本的重要度。
122.其中,将边缘节点b获取到的训练样本记为第二训练样本。
123.步骤s605,若第二训练样本的重要度大于预设重要度阈值,则边缘节点b对第二训练样本进行加密,得到第二训练样本的密文。
124.步骤s606,边缘节点b将第二训练样本的密文发送至云服务器。
125.步骤s607,云服务器基于第一训练样本的密文和第二训练样本的密文对故障检测模型进行训练。
126.步骤s608,若训练后的故障检测模型满足预设条件,则云服务器将训练后的故障检测模型分别发送至边缘节点a和边缘节点b。
127.步骤s609,边缘节点a基于接收到的故障检测模型进行故障检测。
128.边缘节点a在接收到故障检测模型后,可以返回至步骤s601进行迭代,以不断优化故障检测模型。
129.步骤s610,边缘节点b基于接收到的故障检测模型进行故障检测。
130.边缘节点b在接收到故障检测模型后,可以返回至步骤s604进行迭代,以不断优化故障检测模型。
131.需要说明的是,步骤s601至步骤s610的具体实施细节已在前述实施例中进行详细介绍,此处不再赘述。
132.参见图7,图7是本技术的一示例性实施例示出的基于联邦学习的数据处理装置的框图。该装置可以应用于包括云服务器以及多个边缘节点的联邦学习系统,并分别配置在多个边缘节点,如图7所示,该装置包括:
133.重要度评估模块701,配置为获取训练样本,并计算训练样本的重要度;
134.数据封装模块702,配置为若训练样本的重要度大于预设重要度阈值,则对训练样本进行加密,得到训练样本的密文;
135.边缘联合训练模块703,配置为将训练样本的密文发送至云服务器,以使云服务器根据训练样本的密文对故障检测模型进行训练;
136.故障检测模块704,配置为接收云服务器发送的训练后的故障检测模型,以基于接收到的故障检测模型进行故障检测。
137.在另一示例性实施例中,重要度评估模块701还用于获取训练样本的关联参数;训练样本的关联参数包括训练样本的数量、训练样本的数据维度、训练样本包含的特征数量中至少一种;根据训练样本的关联参数确定训练样本的重要度。
138.在另一示例性实施例中,重要度评估模块701还用于获取自身的性能参数;根据性能参数以及训练样本的关联参数确定训练样本的重要度。
139.在另一示例性实施例中,数据封装模块702还用于从多种加密方式中选择训练样本的加密方式;基于训练样本的加密方式对训练样本进行加密,得到训练样本的密文。
140.参见图8,图8是本技术的一示例性实施例示出的基于联邦学习的数据处理装置的框图。该装置可以应用于包括云服务器以及多个边缘节点的联邦学习系统,并配置在云服务器中,如图8所示,该装置包括:
141.模型聚合模块801,配置为接收每个边缘节点发送的训练样本的密文,接收每个边缘节点发送的训练样本的密文,并基于每个边缘节点发送的训练样本的密文对故障检测模型进行训练;每个边缘节点发送的训练样本的密文由每个边缘节点在确定训练样本的重要度大于预设重要度阈值的条件下,对训练样本进行加密得到;
142.模型更新模块802,配置为将训练后的故障检测模型分别发送至多个边缘节点,以使多个边缘节点基于接收到的故障检测模型进行故障检测。
143.在另一示例性实施例中,模型更新模块802还用于若进行训练后的故障检测模型满足预设条件,则将训练后的故障检测模型分别发送至多个边缘节点。
144.参见图9,图9为一示例性实施例提供的联邦学习系统的示意图,如图9所示,联邦学习系统包括多个边缘节点、多个边缘节点各自连接的边缘网关以及云服务器,云服务器包括模型训练模块、模型聚合模块、模型更新模块以及数据存储模块。
145.每个边缘节点包括数据池存储模块、重要度评估模块、数据封装模块、边缘联合训练模块以及故障检测模块。
146.每个边缘网关包括视频流输入模块和数据上传模块。
147.其中,每个边缘网关的视频流输入模块可以获取摄像头采集的视频流,并对视频流进行解帧得到多张图片,将多种图片通过数据上传模块传输至对应边缘结果的数据池存储模块。
148.云服务器的模型训练模块用于向每个边缘节点中的重要度评估模块发送训练指令。
149.每个边缘节点的重要度评估模块接收到训练指令后,从本端的数据池存储模块获取训练样本,并计算训练样本的重要度;本端的数据封装模块若确定训练样本的重要度大于预设重要度阈值,则对训练样本进行加密得到训练样本的密文;本端的边缘联合训练模块将训练样本的密文传输至云服务器中。
150.云服务器中的模型聚合模块接收到每个边缘节点发送的训练样本的密文后,基于训练样本的密文对故障检测模型进行训练,云服务器的模型更新模块若确定训练后的故障检测模型满足预设条件,则将其故障检测模型发送至每个边缘节点,并将故障检测模型以及故障检测模型的梯度存储至数据存储模块。
151.每个边缘节点的故障检测模块基于接收到的故障检测模型进行故障检测。
152.需要说明的是,上述实施例所提供的基于联邦学习的数据处理装置与上述实施例所提供的基于联邦学习的数据处理方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。
153.本技术的实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个计算机程序,当一个或多个计算机程序被一个或多个处理器执行时,使得电子设备实现上述各个实施例中提供的基于联邦学习的数据处理方法。
154.图10示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
155.需要说明的是,图10示出的电子设备的计算机系统1000仅是一个示例,不应对本
申请实施例的功能和使用范围带来任何限制。
156.如图10所示,计算机系统1000包括中央处理单元(central processing unit,cpu)1001,其可以根据存储在只读存储器(read-only memory,rom)1002中的计算机程序或者从储存部分1008加载到随机访问存储器(random access memory,ram)1003中的计算机程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在ram 1003中,还存储有系统操作所需的各种计算机程序和数据。cpu 1001、rom 1002以及ram 1003通过总线1004彼此相连。输入/输出(input/output,i/o)接口1005也连接至总线1004。
157.以下部件连接至i/o接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(cathode ray tube,crt)、液晶显示器(liquid crystal display,lcd)等以及扬声器等的输出部分1007;包括硬盘等的储存部分1008;以及包括诸如lan(local area network,局域网)卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至i/o接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
158.特别地,根据本技术的实施例,上文参考流程图描述的过程可以被实现为计算机程序。例如,本技术的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(cpu)1001执行时,执行本技术的系统中限定的各种功能。
159.需要说明的是,本技术实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储计算机程序的有形介质,该计算机程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的计算机程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
160.附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于
实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
161.描述于本技术实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
162.本技术的另一方面还提供了一种计算机可读存储介质,其上存储有计算机可读指令,该计算机可读指令被电子设备的处理器执行时,使电子设备实现如前的方法。该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
163.本技术的另一方面还提供了一种计算机程序产品,该计算机程序产品包括计算机程序,计算机程序被处理器执行时实现上述各个实施例中提供的方法。其中,该计算机程序可以存储在计算机可读存储介质中;电子设备的处理器可以从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该电子设备执行上述各个实施例中提供的方法。
164.上述内容,仅为本技术的较佳示例性实施例,并非用于限制本技术的实施方案,本领域普通技术人员根据本技术的主要构思和精神,可以十分方便地进行相应的变通或修改,故本技术的保护范围应以权利要求书所要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1