CN116346863B - 基于联邦学习的车载网数据处理方法、装置、设备及介质 - Google Patents
基于联邦学习的车载网数据处理方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN116346863B CN116346863B CN202310609308.5A CN202310609308A CN116346863B CN 116346863 B CN116346863 B CN 116346863B CN 202310609308 A CN202310609308 A CN 202310609308A CN 116346863 B CN116346863 B CN 116346863B
- Authority
- CN
- China
- Prior art keywords
- node
- local
- nodes
- vehicle
- group
- 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 27
- 238000004891 communication Methods 0.000 claims abstract description 67
- 238000012545 processing Methods 0.000 claims abstract description 37
- 230000002776 aggregation Effects 0.000 claims abstract description 20
- 238000004220 aggregation Methods 0.000 claims abstract description 20
- 239000013598 vector Substances 0.000 claims description 40
- 238000000034 method Methods 0.000 claims description 24
- 238000004364 calculation method Methods 0.000 claims description 23
- 238000012549 training Methods 0.000 claims description 13
- 230000006870 function Effects 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 11
- 238000003860 storage Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 8
- 239000003795 chemical substances by application Substances 0.000 claims description 6
- 238000006467 substitution reaction Methods 0.000 claims description 6
- 238000012163 sequencing technique Methods 0.000 claims description 5
- 230000004931 aggregating effect Effects 0.000 claims description 3
- 230000001105 regulatory effect Effects 0.000 claims description 2
- 230000008439 repair process Effects 0.000 description 9
- 238000009826 distribution Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/12—Messaging; Mailboxes; Announcements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Traffic Control Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种基于联邦学习的车载网数据处理方法、装置、设备及介质,包括:根据各个节点的历史通信消息数据和硬件配置信息,构建车载网的分层结构;针对每个基础分层,基于节点对应的车辆特征信息进行分组,得到至少两个基础分组;对于每个基础分组,进行组内消息队列的部署,得到目标分组;将车载网内的每个车辆标识关联分配到目标分组;执行组内局部联邦学习,对目标分组内每个节点的本地模型进行聚合更新,得到更新后的局部全局模型;将每个目标分组作为一个中心,采用每个中心对应的更新后的局部全局模型进行全局学习,得到每个中心对应的全局模型,并采用全局模型进行车载网数据的处理。采用本发明可确保数据隐私性和处理结果的准确性。
Description
技术领域
本发明涉及数据处理领域,尤其涉及一种基于联邦学习的车载网数据处理方法、装置、设备及介质。
背景技术
随着智能汽车技术的不断发展,车载网的应用场景越来越广泛,例如智能驾驶、车联网、智能交通等。然而,车载网络中的车辆存在着包括硬件、软件、车型、车龄、行驶路况等因素的异构性,这些异构性使得车载网络的数据分布存在着显著的差异,导致车辆之间的数据和计算资源无法直接共享和合作,进而对车载网中进行大规模数据处理和深度学习任务提出了更高的要求。因此,亟需一种能够对异构的车载网数据进行高效处理的方法。
目前,对车联网数据处理主要通过集中式机器学习方法和分布式学习方法,在实现本发明的过程中,发现现有技术至少存在如下问题:在采用集中式机器学校的方法进行异构车载网数据处理时,由于处理速度较慢,往往难以满足车载网的实时响应和安全性要求。而在采用分布式学习方式时,在不集中数据的情况下进行联邦学习模型训练,能够很好地解决车载网络中的数据处理问题。但是,由于车载网络的异构性,现有的联邦学习方式也难以同时保证数据隐私和准确性。
发明内容
本发明实施例提供一种基于联邦学习的车载网数据处理方法、装置、计算机设备和存储介质,实现在处理车载网数据时,确保数据隐私性和处理结果的准确性。
为了解决上述技术问题,本申请实施例提供一种基于联邦学习的车载网数据处理方法,包括:
根据各个节点的历史通信消息数据和硬件配置信息,构建车载网的分层结构,所述分层结构包括至少两个基础分层;
针对每个所述基础分层,基于节点对应的车辆特征信息进行分组,得到至少两个基础分组;
对于每个所述基础分组,进行分组内部消息队列的部署,得到目标分组;
将车载网内的每个车辆标识关联分配到所述目标分组;
执行组内局部联邦学习,对所述目标分组内每个节点的本地模型进行聚合更新,得到更新后的局部全局模型;
将每个所述目标分组作为一个中心,采用每个中心对应的所述更新后的局部全局模型进行全局多中心联邦学习,得到每个中心对应的全局模型,并采用所述全局模型进行车载网通信数据的处理。
可选地,所述硬件配置信息包括带宽和通信能力,所述根据各个节点的历史通信消息数据和硬件配置信息,构建车载网的分层结构包括:
基于根据上一层节点的带宽和通信能力,确定当前层计算节点数量:
其中,为第层节点的带宽,为第 层节点的处理能力,当前层的通信负载,i为大于1的正整数;
获取车载网中用于进行通信的车辆标识数量,并基于所述车辆标识数量和所述节点数量,动态确定每个所述基础分层中包含的节点数量。
可选地,所述当前层的通信负载采用如下步骤确定:
对于任意的两个节点和,采用如下公式计算节点和节点之间的平均消息大小:
其中,为第m条消息的权重,为第m条消息的大小;
采用如下公式计算节点和节点之间的消息数目:
其中,是第个消息的大小;
通过如下公式,确定当前层的通信负载:
其中,为第i层的当前层的通信负载。
可选地,所述基于车辆标识数量和所述节点数量,动态确定每个所述基础分层中包含的节点数量包括:
采用如下公式,确定第i个所述基础分层中包含的节点数量:
其中,表示车辆的总数数量,表示向上取整函数,为第i个所述基础分层中的最大节点数量。
可选地,所述针对每个所述基础分层,基于节点对应的车辆特征信息进行分组,得到至少两个基础分组包括:
针对第i个所述基础分层,根据所述基础分层内包含节点对应的车辆特征信息,确定组内节点数量;
基于第i个所述基础分层中的节点数量和组内的节点数量,采用如下公式确定基础分组数量K:
其中,表示向上取整函数,为第i个所述基础分层的节点数量,为所述组内节点数量;
根据节点对应的车辆特征信息,将层内每个节点分别分配到K个所述基础分组。
可选地,所述针对第i个所述基础分层,根据所述基础分层内包含节点对应的车辆特征信息,确定组内节点数量包括:
采用如下公式计算组内的节点数量:
其中,是特征向量中的所有维度,为组别中所有节点在第维度上的均值向量,并且,,基础分层内的节点被分为个不同的组别,每个组别包含个节点,且。
可选地,所述根据节点对应的车辆特征信息,将层内每个节点分别分配到K个所述基础分组包括:
根据节点对应的车辆特征信息,将层内每个节点分别分配到K个所述基础分组;
针对任一所述基础分组,计算组内节点特征向量的方差,得到目标方差;
将所述目标方差与第一阈值进行比较,若所述目标方差大于所述第一阈值,则确定所述基础分组为待调整分组;
计算所述待调整分组中每个节点在不同特征向量上的标准差,将标准差大于第二阈值的节点,作为待调整节点;
采用聚类的方式,对所述待调整节点分配到新的基础分组,并返回所述针对任一所述基础分组,计算组内节点特征向量的方差,得到目标方差的步骤继续执行,直到每个基础分组的所述目标方差均小于或等于第一阈值为止。
可选地,所述对于每个所述基础分组,进行分组内部消息队列的部署,得到目标分组包括:
从所述基础分组的各个节点中选取代表节点;
对每个所述代表节点进行消息队列的部署,得到目标分组。
可选地,所述从所述基础分组的各个节点中选取代表节点包括:
将所述基础分组内的每个节点均作为候选节点;
基于相似度计算的方式,计算车辆标识对应的车辆特征信息和所述候选节点在各个特征上的相似度,并对得到的相似度由大到小进行排序,得到相似度序列;
在所述相似度序列中,从前往后依次选取预设数量的相似度,作为目标相似度,并获取目标相似度对应的节点,作为代表节点。
可选地,所述方法还包括:对所述代表节点进行动态维护。
可选地,所述将车载网内的每个车辆标识关联分配到所述目标分组包括:
针对每个车辆标识,计算所述车辆标识对应的车辆特征信息与每个所述代表节点对应的车辆特征信息的相似度;
将所述车辆标识分配到与所述车辆标识的相似度值最大的代表节点对应的基础分组中;
在所有车辆标识完成分配后,确定分配完成。
可选地,所述执行组内局部联邦学习,对所述目标分组内每个节点的本地模型进行更新,得到更新后的局部全局模型包括:
从消息队列中接收所述目标分组内每个节点上传的本地模型,其中,所述本地模型为所述目标分组内节点根据本地历史数据进行训练生成;
基于每个所述本地模型进行局部模型全局聚合,得到局部全局模型;
将所述局部全局模型发送给每个所述目标分组内节点,以使所述目标分组内节点根据本地数据对所述局部全局模型进行训练更新;
返回从消息队列中接收组内每个节点上传的本地模型的步骤继续执行,直到所述局部全局模型收敛,得到更新后的局部全局模型。
可选地,所述将每个所述目标分组作为一个中心,采用每个中心对应的所述更新后的局部全局模型进行全局多中心联邦学习,得到每个中心对应的全局模型包括:
针对最后一个所述基础分层的每个所述中心,采用每个代表节点将所述中心对应的每个所述更新后的局部全局模型进行聚合,得到局部模型;
将上一个代表节点对应的局部模型发送给相邻的下一个代表节点,其中,上一个代表节点与下一个代表节点为相邻的两个代表节点;
采用上一个代表节点的局部模型对下一个代表节点的局部模型进行加权平均,并将得到的新的模型作为下一个代表节点的局部模型;
将下一个代表节点作为上一个代表节点,并将上一个代表节点相邻是另一个代表节点作为下一个代表节点,返回所述将上一个代表节点对应的局部模型发送给相邻的下一个代表节点的步骤继续执行,直到到达上一个所述基础分层代理节点;
上一个所述基础分层的代理节点在接收到下一个所述基础分层发送的所有局部模型后,对下一个所述基础分层发送的所有局部模型进行加权平均,得到上一个所述基础分层对应的全局模型,并将所述全局模型广播给下一个所述基础分层的代理节点,以使下一个所述基础分层的每个中心根据上一个所述基础分层对应的全局模型,生成所述中心对应的全局模型;
返回所述将上一个代表节点对应的局部模型发送给相邻的下一个代表节点的步骤继续执行,直到达到第一个所述基础分层。
为了解决上述技术问题,本申请实施例还提供一种基于联邦学习的车载网数据处理装置,包括:
分层模块,用于根据各个节点的历史通信消息数据和硬件配置信息,构建车载网的分层结构,分层结构包括至少两个基础分层;
分组模块,用于针对每个基础分层,基于节点对应的车辆特征信息进行分组,得到至少两个基础分组;
部署模块,用于对于每个基础分组,进行分组内部消息队列的部署,得到目标分组;
关联模块,用于将车载网内的每个车辆标识关联分配到目标分组;
局部学习模块,用于执行组内局部联邦学习,对目标分组内每个节点的本地模型进行聚合更新,得到更新后的局部全局模型;
全局学习模块,用于将每个目标分组作为一个中心,采用每个中心对应的更新后的局部全局模型进行全局多中心联邦学习,得到每个中心对应的全局模型,并采用全局模型进行车载网通信数据的处理。
可选地,所述分层模块包括:
节点数量计算子模块,用于基于根据上一层节点的带宽和通信能力,确定当前层计算节点数量:
其中,为第层节点的带宽,为第 层节点的处理能力,当前层的通信负载,i为大于1的正整数;
节点数量确定子模块,用于获取车载网中用于进行通信的车辆标识数量,并基于车辆标识数量和节点数量,动态确定每个基础分层中包含的节点数量。
可选地,节点数量计算子模块包括
消息大小计算单元,用于对于任意的两个节点和,采用如下公式计算节点和节点之间的平均消息大小:
其中,为第m条消息的权重,为第m条消息的大小;
消息数量确定单元,用于采用如下公式计算节点和节点之间的消息数目:
其中,是第个消息的大小;
通信负载确定单元,用于通过如下公式,确定当前层的通信负载:
其中,为第i层的当前层的通信负载。
可选地,所述节点数量确定子模块包括:
节点数据计算单元,用于采用如下公式,确定第i个基础分层中包含的节点数量:
其中,表示车辆的总数数量,表示向上取整函数,为第i个基础分层中的最大节点数量。
可选地,所述分组模块包括:
节点数量确定子模块,用于针对第i个基础分层,根据基础分层内包含节点对应的车辆特征信息,确定组内节点数量;
分组数量确定子模块,用于基于第i个基础分层中的节点数量和组内的节点数量,采用如下公式确定基础分组数量K:
其中,表示向上取整函数,为第i个基础分层的节点数量,为组内节点数量;
节点分配子模块,用于根据节点对应的车辆特征信息,将层内每个节点分别分配到K个基础分组。
可选地,所述节点数量确定子模块 包括:
组内节点数量计算单元,用于采用如下公式计算组内的节点数量:
其中,是特征向量中的所有维度,为组别中所有节点在第维度上的均值向量,并且,,基础分层内的节点被分为个不同的组别,每个组别包含个节点,且。
可选地,分组数量确定子模块包括:
初始分组单元,用于根据节点对应的车辆特征信息,将层内每个节点分别分配到K个基础分组;
方差计算单元,用于针对任一基础分组,计算组内节点特征向量的方差,得到目标方差;
第一比较单元,用于将目标方差与第一阈值进行比较,若目标方差大于第一阈值,则确定基础分组为待调整分组;
第二比较单元,用于计算待调整分组中每个节点在不同特征向量上的标准差,将标准差大于第二阈值的节点,作为待调整节点;
循环调整单元,用于采用聚类的方式,对待调整节点分配到新的基础分组,并返回针对任一基础分组,计算组内节点特征向量的方差,得到目标方差的步骤继续执行,直到每个基础分组的目标方差均小于或等于第一阈值为止。
可选地,所述部署模块包括:
代表节点选取子模块,用于从基础分组的各个节点中选取代表节点;
消息队列部署子模块,用于对每个代表节点进行消息队列的部署,得到目标分组。
可选地,所述代表节点选取子模块包括:
候选节点确定单元,用于将基础分组内的每个节点均作为候选节点;
相似度计算单元,用于基于相似度计算的方式,计算车辆标识对应的车辆特征信息和候选节点在各个特征上的相似度,并对得到的相似度由大到小进行排序,得到相似度序列;
代表节点确定单元,用于在相似度序列中,从前往后依次选取预设数量的相似度,作为目标相似度,并获取目标相似度对应的节点,作为代表节点。
可选地,所述分配模块包括:
特征相似度计算子模块,用于针对每个车辆标识,计算车辆标识对应的车辆特征信息与每个代表节点对应的车辆特征信息的相似度;
分配单元,用于将车辆标识分配到与车辆标识的相似度值最大的代表节点对应的基础分组中;
确认单元,用于在所有车辆标识完成分配后,确定分配完成。
可选地,所述局部学习模块包括:
本地模型接收单元,用于从消息队列中接收目标分组内每个节点上传的本地模型,其中,本地模型为目标分组内节点根据本地历史数据进行训练生成;
第一聚合单元,用于基于每个本地模型进行局部模型全局聚合,得到局部全局模型;
第一训练单元,用于将局部全局模型发送给每个目标分组内节点,以使目标分组内节点根据本地数据对局部全局模型进行训练更新;
第一迭代单元,用于返回从消息队列中接收组内每个节点上传的本地模型的步骤继续执行,直到局部全局模型收敛,得到更新后的局部全局模型。
可选地,所述全局学习模块包括:
第二聚合单元,用于针对最后一个基础分层的每个中心,采用每个代表节点将中心对应的每个更新后的局部全局模型进行聚合,得到局部模型;
模型发送单元,用于将上一个代表节点对应的局部模型发送给相邻的下一个代表节点,其中,上一个代表节点与下一个代表节点为相邻的两个代表节点;
第一加权单元,用于采用上一个代表节点的局部模型对下一个代表节点的局部模型进行加权平均,并将得到的新的模型作为下一个代表节点的局部模型;
第二迭代单元,用于将下一个代表节点作为上一个代表节点,并将上一个代表节点相邻是另一个代表节点作为下一个代表节点,返回将上一个代表节点对应的局部模型发送给相邻的下一个代表节点的步骤继续执行,直到到达上一个基础分层代理节点;
第二加权单元,用于上一个基础分层的代理节点在接收到下一个基础分层发送的所有局部模型后,对下一个基础分层发送的所有局部模型进行加权平均,得到上一个基础分层对应的全局模型,并将全局模型广播给下一个基础分层的代理节点,以使下一个基础分层的每个中心根据上一个基础分层对应的全局模型,生成中心对应的全局模型;
第三迭代单元,用于返回将上一个代表节点对应的局部模型发送给相邻的下一个代表节点的步骤继续执行,直到达到第一个基础分层。
为了解决上述技术问题,本申请实施例还提供一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于联邦学习的车载网数据处理方法的步骤。
为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述基于联邦学习的车载网数据处理方法的步骤。
本发明实施例提供的基于联邦学习的车载网数据处理方法、装置、计算机设备及存储介质,根据各个节点的历史通信消息数据和硬件配置信息,构建车载网的分层结构,分层结构包括至少两个基础分层;针对每个基础分层,基于节点对应的车辆特征信息进行分组,得到至少两个基础分组;对于每个基础分组,进行分组内部消息队列的部署,得到目标分组;将车载网内的每个车辆标识关联分配到目标分组;执行组内局部联邦学习,对目标分组内每个节点的本地模型进行聚合更新,得到更新后的局部全局模型;将每个目标分组作为一个中心,采用每个中心对应的更新后的局部全局模型进行全局多中心联邦学习,得到每个中心对应的全局模型,并采用全局模型进行车载网通信数据的处理。实现了采用多中心的联邦学习方式进行车载网数据处理,确保数据隐私性和处理结果的准确性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请可以应用于其中的示例性系统架构图;
图2是本申请的基于联邦学习的车载网数据处理方法的一个实施例的流程图;
图3是根据本申请的基于联邦学习的车载网数据处理装置的一个实施例的结构示意图;
图4是根据本申请的计算机设备的一个实施例的结构示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器( Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3 )、MP4( Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4 )播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。
需要说明的是,本申请实施例所提供的基于联邦学习的车载网数据处理方法由服务器执行,相应地,基于联邦学习的车载网数据处理装置设置于服务器中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器,本申请实施例中的终端设备101、102、103具体可以对应的是实际生产中的应用系统。
请参阅图2,图2示出本发明实施例提供的一种基于联邦学习的车载网数据处理方法,以该方法应用在图1中的服务端为例进行说明,详述如下:
S201:根据各个节点的历史通信消息数据和硬件配置信息,构建车载网的分层结构,分层结构包括至少两个基础分层。
具体地,本实施例应用于分布式的车载网通信环境中,包含多个分布式节点,每个节点均参与车载网通信,历史通信消息数据为车载网通信的历史数据,硬件配置信息具体包括但不限于:带宽、对消息的处理能力等。
本实施例中,依据各个节点的历史通信消息数据和硬件配置信息,构建车载网的分层结构,实现通过分层的方式,确保每层都能支持车载网通信的正常运行,避免通信集中在少数节点,导致一部分节点过载,而另一部分节点未有效利用的情形。
在一具体可选实施方式中,硬件配置信息包括带宽和通信能力,步骤S201中,根据各个节点的历史通信消息数据和硬件配置信息,构建车载网的分层结构包括:
基于根据上一层节点的带宽和通信能力,确定当前层计算节点数量:
其中,为第层节点的带宽,为第 层节点的处理能力,以每秒钟消息的处理数量来衡量。当前层的通信负载,以每秒钟可以处理的消息数量来衡量,i为大于1的正整数;
获取车载网中用于进行通信的车辆标识数量,并基于车辆标识数量和节点数量,动态确定每个基础分层中包含的节点数量。
其中,车辆标识是指车载网中参与通信的车辆的唯一标识信息,获取车辆标识数量也即从历史通信消息数据中获取进行通信是车辆的数量。
在一具体可选实施方式中,当前层的通信负载采用如下步骤确定:
对于任意的两个节点和,采用如下公式计算节点和节点之间的平均消息大小:
其中,为第m条消息的权重,为第m条消息的大小;
采用如下公式计算节点和节点之间的消息数目:
其中,是第个消息的大小;
通过如下公式,确定当前层的通信负载:
其中,为第i层的当前层的通信负载。
进一步地,的数学表达式可以根据具体需求而定,作为一种优先方式,本实施例基于消息的重要性和紧急性确定,具体使用以下公式:
其中,和分别表示重要性和紧急性的权重系数,和分别表示第条消息的重要性得分和紧急性得分。其中,重要性得分和紧急性得分可根据实际需要(例如基于内容的分析、用户行为分析、业务需求等)进行确定。
在本实施例的一具体示例中,基于主题模型对重要性和紧急性进行打分,具体为:
其中,为第条消息属于主题的概率。则可以使用主题模型对消息进行分类,并根据分类结果给每条消息打上对应的权重。假设对于主题,设该主题的重要性为,紧急性为,则第条消息的重要性得分为:, 第条消息的紧急性得分为:。
在本实施例的一具体示例中,基于主动规则对重要性和紧急性进行打分,具体为:
假设有一组规则,可以根据规则对每条消息进行分类,并给每个分类打上对应的权重。例如,对于消息的关键字、发送者、接收者、时间等属性可以定义不同的规则,并为每个规则定义一个权重。假设有个规则,第条消息符合规则的概率为,该规则的重要性得分为,紧急性得分为。则第条消息的重要性得分为:,第条消息的紧急性得分为:。
在本实施另一个可选实施方式中,基于车辆标识数量和节点数量,动态确定每个基础分层中包含的节点数量包括:
采用如下公式,确定第i个基础分层中包含的节点数量:
其中,表示车辆的总数数量,表示向上取整函数,为第i个基础分层中的最大节点数量。
本实施例中,将节点分成不同层,每一层的节点数量不超过,而且分层的数量是动态的,最多不会超过层,确保了分层后每一层的节点数量不会太多或太少。
S202:针对每个基础分层,基于节点对应的车辆特征信息进行分组,得到至少两个基础分组。
在一具体可选实施方中,步骤S202中,针对每个基础分层,基于节点对应的车辆特征信息进行分组,得到至少两个基础分组包括:
针对第i个基础分层,根据基础分层内包含节点对应的车辆特征信息,确定组内节点数量;
基于第i个基础分层中的节点数量和组内的节点数量,采用如下公式确定基础分组数量K:
其中,表示向上取整函数,为第i个基础分层的节点数量,为组内节点数量;
根据节点对应的车辆特征信息,将层内每个节点分别分配到K个基础分组。
其中,车辆特征信息包括但不限于车辆类型、车辆品牌、车载硬件、地理位置等。
本实施例中,设定在第层中有个节点,这些节点可以被分为个不同的组别,其中,每个组别包含个节点,且。将每个节点在车辆类型、车辆品牌、车载硬件、地理位置等车辆特征信息进行向量化得到对应的特征向量,为了让同一组别内节点的特征向量在各个维度上尽可能相似,不同组别之间的差距尽可能大(可以提高联邦学习的效率和准确率,同时减少通信和计算量),将节点分为不同的组别,使得同一组别内的节点具有相似的特征向量。针对第i个基础分层,根据基础分层内包含节点对应的车辆特征信息,确定组内节点数量包括:
采用如下公式计算组内的节点数量:
其中,是特征向量中的所有维度,为组别中所有节点在第维度上的均值向量,并且,,基础分层内的节点被分为个不同的组别,每个组别包含个节点,且。
需要说明的是,将个节点按照每组个节点来划分,如果划分后不足个节点,则仍然算作一个组,因此需要向上取整,确保每个组内节点符合上述节点的分组要求。例如,如果一个分层中有10个节点(),每个组内有3个节点(),则k =,需要将这10个节点分成4个组。
在本实施例另一个可选实施方式中,根据节点对应的车辆特征信息,将层内每个节点分别分配到K个基础分组包括:
根据节点对应的车辆特征信息,将层内每个节点分别分配到K个基础分组;
针对任一基础分组,计算组内节点特征向量的方差,得到目标方差;
将目标方差与第一阈值进行比较,若目标方差大于第一阈值,则确定基础分组为待调整分组;
计算待调整分组中每个节点在不同特征向量上的标准差,将标准差大于第二阈值的节点,作为待调整节点;
采用聚类的方式,对待调整节点分配到新的基础分组,并返回针对任一基础分组,计算组内节点特征向量的方差,得到目标方差的步骤继续执行,直到每个基础分组的目标方差均小于或等于第一阈值为止。
其中,第一阈值和第二阈值可根据实际情况进行设定,此处不做限制。
可选地,为了让同一组别内节点的特征向量在各个维度上尽可能相似,不同组别之间的差距尽可能大,通过最小化组别内节点特征向量的方差和最大化不同组别间的方差来优化分组,具体采用公式如下:
其中,是组别内节点特征向量的方差,和分别是组别和中所有节点在第维度上的均值向量,是特征向量中的所有维度。
进一步地,可以根据数据集的特点和先验知识来确定一个合适的阈值。例如,对于一些二元分类问题,可以使用ROC曲线和AUC(Area Under the Curve)来评估不同阈值下的分类效果,并选择最优阈值。
进一步地,对于需要重新划分的节点,可以使用聚类算法(如K-Means算法)将它们重新分配到相应的组别中,使得每个组别内的节点尽可能相似。设需要重新划分的节点集合为,则重新分配后的组别可以表示为:
其中,表示重新划分节点后得到的新组别,表示第个组别经过重新划分节点后得到的新组别,表示原始的第个组别,表示需要重新划分的节点集合。
在重新分配节点后,需要重新计算每个组别内节点在每个特征向量上的均值向量。设组别在第维度上的均值向量为,则可以表示为:
其中是组别中节点的个数,是节点在第维度上的特征向量。
在重新计算均值向量后,需要重新计算每个组别的方差,并根据优化分组的数学公式重新优化分组。设组别在第维度上的方差为,则重新计算组别的方差可以表示为:
其中,是组别中节点的个数,是节点在第维度上的特征向量,是组别在第维度上的均值向量。重新计算组别的方差后,可以根据优化分组的公式,重新优化分组。
S203:对于每个基础分组,进行分组内部消息队列的部署,得到目标分组。
在本实施例的一具体可选实施方式中,步骤S203中,对于每个基础分组,进行分组内部消息队列的部署,得到目标分组包括:
从基础分组的各个节点中选取代表节点;
对每个代表节点进行消息队列的部署,得到目标分组。
在一具体可选实施方式中,从基础分组的各个节点中选取代表节点包括:
将基础分组内的每个节点均作为候选节点;
基于相似度计算的方式,计算车辆标识对应的车辆特征信息和候选节点在各个特征上的相似度,并对得到的相似度由大到小进行排序,得到相似度序列;
在相似度序列中,从前往后依次选取预设数量的相似度,作为目标相似度,并获取目标相似度对应的节点,作为代表节点。
例如,在一具体示例中,使用评估函数评估每个候选节点的质量。
其中,为车辆和候选节点之间的相似度,可以使用某种相似度度量方法计算得出,本发明提供了余弦相似度的度量方式:,其中,是特征的数量,和分别表示车辆和候选节点在第个特征上的取值。如果相似度越大,则两个车辆越相似;如果相似度越小,则两个车辆越不相似。为候选节点在组别中的平均相似度。在每次选择代表节点时,按照的值从大到小对候选节点进行排序,选择前个节点作为代表节点,其中可以根据实际需求进行调整。
进一步地,在确定代表节点之后,本实施例还包括对代表节点进行动态维护,具体包括动态增加和动态删除。
(1)动态增加代表节点:定义一个代表节点候选池的参数,其中包含了一些可以成为代表节点的车辆,其中表示代表节点候选池的大小。通过以下步骤将车辆标识动态加入代表节点候选池:当一个新车辆标识加入到组别中时,将其加入代表节点候选池;当一个代表节点被删除时,从代表节点候选池中选择一个新的代表节点。
(2)动态删除代表节点:当一个代表节点因为离线或其他原因无法继续作为代表节点时,将其从代表节点列表中删除,并将其从组别中移除;从代表节点候选池中选择一个新的代表节点,并将其加入代表节点列表,并将其加入组别中。
通过上通过动态增加和删除代表节点来维护代表节点的稳定性和可靠性。同时,需要说明的是,代表节点候选池中的车辆标识需要经过一定的筛选和评估,以确保其可以保证作为代表节点的要求。
S204:将车载网内的每个车辆标识关联分配到目标分组。
具体地,为每个代表节点单独部署一个消息队列服务,在部署代表节点的消息队列时,使用和组内消息队列相同的方式。例如,可以使用Apache Kafka等消息队列服务来进行部署,并使用分布式锁等机制确保消息队列服务的高可用性和可靠性。同时,需要将代表节点的IP地址和端口号通知给其他节点,以便它们将模型更新信息发送到正确的队列。
对于每个需要部署消息队列的组别,将步骤203中选择的代表节点作为消息队列服务器,部署消息队列系统,例如RabbitMQ或Apache Kafka。将消息队列服务器的地址和端口号等信息保存在一个配置文件中。
在一具体可选实施方式中,将车载网内的每个车辆标识关联分配到目标分组包括:
针对每个车辆标识,计算车辆标识对应的车辆特征信息与每个代表节点对应的车辆特征信息的相似度;
将车辆标识分配到与车辆标识的相似度值最大的代表节点对应的基础分组中;
在所有车辆标识完成分配后,确定分配完成。
本实施例中,通过计算相似度,并将车辆标识分配到与车辆标识的相似度值最大的代表节点对应的基础分组中,确保每个目标分组关联的车辆标识具有较为接近的特征,有利于后续进行局部联邦学习的效率和数据处理的效率。
S205:执行组内局部联邦学习,对目标分组内每个节点的本地模型进行聚合更新,得到更新后的局部全局模型。
在本实施例一具体可选实施方式中,步骤S205中,执行组内局部联邦学习,对目标分组内每个节点的本地模型进行更新,得到更新后的局部全局模型包括:
从消息队列中接收目标分组内每个节点上传的本地模型,其中,本地模型为目标分组内节点根据本地历史数据进行训练生成;
基于每个本地模型进行局部模型全局聚合,得到局部全局模型;
将局部全局模型发送给每个目标分组内节点,以使目标分组内节点根据本地数据对局部全局模型进行训练更新;
返回从消息队列中接收组内每个节点上传的本地模型的步骤继续执行,直到局部全局模型收敛,得到更新后的局部全局模型。
S206:将每个目标分组作为一个中心,采用每个中心对应的更新后的局部全局模型进行全局多中心联邦学习,得到每个中心对应的全局模型,并采用全局模型进行车载网通信数据的处理。
在本实施例一具体可选实施方式中,步骤S206中,将每个目标分组作为一个中心,采用每个中心对应的更新后的局部全局模型进行全局多中心联邦学习,得到每个中心对应的全局模型包括:
针对最后一个基础分层的每个中心,采用每个代表节点将中心对应的每个更新后的局部全局模型进行聚合,得到局部模型;
将上一个代表节点对应的局部模型发送给相邻的下一个代表节点,其中,上一个代表节点与下一个代表节点为相邻的两个代表节点;
采用上一个代表节点的局部模型对下一个代表节点的局部模型进行加权平均,并将得到的新的模型作为下一个代表节点的局部模型;
将下一个代表节点作为上一个代表节点,并将上一个代表节点相邻是另一个代表节点作为下一个代表节点,返回将上一个代表节点对应的局部模型发送给相邻的下一个代表节点的步骤继续执行,直到到达上一个基础分层代理节点;
上一个基础分层的代理节点在接收到下一个基础分层发送的所有局部模型后,对下一个基础分层发送的所有局部模型进行加权平均,得到上一个基础分层对应的全局模型,并将全局模型广播给下一个基础分层的代理节点,以使下一个基础分层的每个中心根据上一个基础分层对应的全局模型,生成中心对应的全局模型;
返回将上一个代表节点对应的局部模型发送给相邻的下一个代表节点的步骤继续执行,直到达到第一个基础分层。
本实施例中,根据各个节点的历史通信消息数据和硬件配置信息,构建车载网的分层结构,分层结构包括至少两个基础分层;针对每个基础分层,基于节点对应的车辆特征信息进行分组,得到至少两个基础分组;对于每个基础分组,进行分组内部消息队列的部署,得到目标分组;将车载网内的每个车辆标识关联分配到目标分组;执行组内局部联邦学习,对目标分组内每个节点的本地模型进行聚合更新,得到更新后的局部全局模型;将每个目标分组作为一个中心,采用每个中心对应的更新后的局部全局模型进行全局多中心联邦学习,得到每个中心对应的全局模型,并采用全局模型进行车载网通信数据的处理。实现了采用多中心的联邦学习方式进行车载网数据处理,确保数据隐私性和处理结果的准确性。
本实施例中,每个节点服务器对本地数据集进行缺失数据分离处理,得到本地完整数据集和本地待修复数据集,每个节点服务器通过并行的方式,获取本地完整数据集的数据数量和数据维度,并基于数据数量、数据维度和本地待修复数据集的缺失特征,对本地完整数据集进行数据缺失模拟处理,得到本地模拟待修复数据集,每个节点服务器基于本地模拟待修复数据集,确定模拟待修复集合,并基于模拟待修复集合和每个节点服务器的本地数据集,进行本地数据修复,得到修复训练集,采用机器学习模型构建二次修复模型,并使用修复训练集对二次修复模型进行模型训练,得到训练好的二次修复模型,采用训练好的二次修复模型对待修复数据集进行修复得到本节点的修复结果。通过分布式节点本地运行修复算法对本地数据进行修复能有效地实现并行化,同时将待修复数据在各个分布式节点中依次修复,而后将各节点修复结果通过机器学习模型融合得到最终修复结果,避免由于各节点上本地数据均是整体数据的一部分,局部数据因缺失整体数据特性的感知使修复结果存在偏差,提高数据修复的效率和准确性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
图3示出与上述实施例基于联邦学习的车载网数据处理方法一一对应的基于联邦学习的车载网数据处理装置的原理框图。如图3所示,该基于联邦学习的车载网数据处理装置包括分层模块31、分组模块32、部署模块33、关联模块34、局部学习模块35和全局学习模块36。各功能模块详细说明如下:
分层模块31,用于根据各个节点的历史通信消息数据和硬件配置信息,构建车载网的分层结构,分层结构包括至少两个基础分层;
分组模块32,用于针对每个基础分层,基于节点对应的车辆特征信息进行分组,得到至少两个基础分组;
部署模块33,用于对于每个基础分组,进行分组内部消息队列的部署,得到目标分组;
关联模块34,用于将车载网内的每个车辆标识关联分配到目标分组;
局部学习模块35,用于执行组内局部联邦学习,对目标分组内每个节点的本地模型进行聚合更新,得到更新后的局部全局模型;
全局学习模块36,用于将每个目标分组作为一个中心,采用每个中心对应的更新后的局部全局模型进行全局多中心联邦学习,得到每个中心对应的全局模型,并采用全局模型进行车载网通信数据的处理。
可选地,分层模块31包括:
节点数量计算子模块,用于基于根据上一层节点的带宽和通信能力,确定当前层计算节点数量:
其中,为第层节点的带宽,为第 层节点的处理能力,当前层的通信负载,i为大于1的正整数;
节点数量确定子模块,用于获取车载网中用于进行通信的车辆标识数量,并基于车辆标识数量和节点数量,动态确定每个基础分层中包含的节点数量。
可选地,节点数量计算子模块包括:
消息大小计算单元,用于对于任意的两个节点和,采用如下公式计算节点和节点之间的平均消息大小:
其中,为第m条消息的权重,为第m条消息的大小;
消息数量确定单元,用于采用如下公式计算节点和节点之间的消息数目:
其中,是第个消息的大小;
通信负载确定单元,用于通过如下公式,确定当前层的通信负载:
其中,为第i层的当前层的通信负载。
可选地,节点数量确定子模块包括:
节点数据计算单元,用于采用如下公式,确定第i个基础分层中包含的节点数量:
其中,表示车辆的总数数量,表示向上取整函数,为第i个基础分层中的最大节点数量。
可选地,分组模块32包括:
节点数量确定子模块,用于针对第i个基础分层,根据基础分层内包含节点对应的车辆特征信息,确定组内节点数量;
分组数量确定子模块,用于基于第i个基础分层中的节点数量和组内的节点数量,采用如下公式确定基础分组数量K:
其中,表示向上取整函数,为第i个基础分层的节点数量,为组内节点数量;
节点分配子模块,用于根据节点对应的车辆特征信息,将层内每个节点分别分配到K个基础分组。
可选地,节点数量确定子模块包括:
组内节点数量计算单元,用于采用如下公式计算组内的节点数量:
其中,是特征向量中的所有维度,为组别中所有节点在第维度上的均值向量,并且,,基础分层内的节点被分为个不同的组别,每个组别包含个节点,且。
可选地,分组数量确定子模块包括:
初始分组单元,用于根据节点对应的车辆特征信息,将层内每个节点分别分配到K个基础分组;
方差计算单元,用于针对任一基础分组,计算组内节点特征向量的方差,得到目标方差;
第一比较单元,用于将目标方差与第一阈值进行比较,若目标方差大于第一阈值,则确定基础分组为待调整分组;
第二比较单元,用于计算待调整分组中每个节点在不同特征向量上的标准差,将标准差大于第二阈值的节点,作为待调整节点;
循环调整单元,用于采用聚类的方式,对待调整节点分配到新的基础分组,并返回针对任一基础分组,计算组内节点特征向量的方差,得到目标方差的步骤继续执行,直到每个基础分组的目标方差均小于或等于第一阈值为止。
可选地,部署模块33包括:
代表节点选取子模块,用于从基础分组的各个节点中选取代表节点;
消息队列部署子模块,用于对每个代表节点进行消息队列的部署,得到目标分组。
可选地,代表节点选取子模块包括:
候选节点确定单元,用于将基础分组内的每个节点均作为候选节点;
相似度计算单元,用于基于相似度计算的方式,计算车辆标识对应的车辆特征信息和候选节点在各个特征上的相似度,并对得到的相似度由大到小进行排序,得到相似度序列;
代表节点确定单元,用于在相似度序列中,从前往后依次选取预设数量的相似度,作为目标相似度,并获取目标相似度对应的节点,作为代表节点。
可选地,分配模块34包括:
特征相似度计算子模块,用于针对每个车辆标识,计算车辆标识对应的车辆特征信息与每个代表节点对应的车辆特征信息的相似度;
分配单元,用于将车辆标识分配到与车辆标识的相似度值最大的代表节点对应的基础分组中;
确认单元,用于在所有车辆标识完成分配后,确定分配完成。
可选地,局部学习模块35包括:
本地模型接收单元,用于从消息队列中接收目标分组内每个节点上传的本地模型,其中,本地模型为目标分组内节点根据本地历史数据进行训练生成;
第一聚合单元,用于基于每个本地模型进行局部模型全局聚合,得到局部全局模型;
第一训练单元,用于将局部全局模型发送给每个目标分组内节点,以使目标分组内节点根据本地数据对局部全局模型进行训练更新;
第一迭代单元,用于返回从消息队列中接收组内每个节点上传的本地模型的步骤继续执行,直到局部全局模型收敛,得到更新后的局部全局模型。
可选地,全局学习模块36包括:
第二聚合单元,用于针对最后一个基础分层的每个中心,采用每个代表节点将中心对应的每个更新后的局部全局模型进行聚合,得到局部模型;
模型发送单元,用于将上一个代表节点对应的局部模型发送给相邻的下一个代表节点,其中,上一个代表节点与下一个代表节点为相邻的两个代表节点;
第一加权单元,用于采用上一个代表节点的局部模型对下一个代表节点的局部模型进行加权平均,并将得到的新的模型作为下一个代表节点的局部模型;
第二迭代单元,用于将下一个代表节点作为上一个代表节点,并将上一个代表节点相邻是另一个代表节点作为下一个代表节点,返回将上一个代表节点对应的局部模型发送给相邻的下一个代表节点的步骤继续执行,直到到达上一个基础分层代理节点;
第二加权单元,用于上一个基础分层的代理节点在接收到下一个基础分层发送的所有局部模型后,对下一个基础分层发送的所有局部模型进行加权平均,得到上一个基础分层对应的全局模型,并将全局模型广播给下一个基础分层的代理节点,以使下一个基础分层的每个中心根据上一个基础分层对应的全局模型,生成中心对应的全局模型;
第三迭代单元,用于返回将上一个代表节点对应的局部模型发送给相邻的下一个代表节点的步骤继续执行,直到达到第一个基础分层。
基于联邦学习的车载网数据处理装置的具体限定可以参见上文中对于基于联邦学习的车载网数据处理方法的限定,在此不再赘述。上述基于联邦学习的车载网数据处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图4,图4为本实施例计算机设备基本结构框图。
所述计算机设备4包括通过系统总线相互通信连接存储器41、处理器42、网络接口43。需要指出的是,图中仅示出了具有组件连接存储器41、处理器42、网络接口43的计算机设备4,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器 (Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器41至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或D界面显示存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器41可以是所述计算机设备4的内部存储单元,例如该计算机设备4的硬盘或内存。在另一些实施例中,所述存储器41也可以是所述计算机设备4的外部存储设备,例如该计算机设备4上配备的插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)等。当然,所述存储器41还可以既包括所述计算机设备4的内部存储单元也包括其外部存储设备。本实施例中,所述存储器41通常用于存储安装于所述计算机设备4的操作系统和各类应用软件,例如电子文件的控制的程序代码等。此外,所述存储器41还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器42在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器42通常用于控制所述计算机设备4的总体操作。本实施例中,所述处理器42用于运行所述存储器41中存储的程序代码或者处理数据,例如运行电子文件的控制的程序代码。
所述网络接口43可包括无线网络接口或有线网络接口,该网络接口43通常用于在所述计算机设备4与其他电子设备之间建立通信连接。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有界面显示程序,所述界面显示程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的基于联邦学习的车载网数据处理方法的步骤。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。
Claims (14)
1.一种基于联邦学习的车载网数据处理方法,其特征在于,所述基于联邦学习的车载网数据处理方法包括:
根据各个节点的历史通信消息数据和硬件配置信息,构建车载网的分层结构,所述分层结构包括至少两个基础分层;
针对每个所述基础分层,基于节点对应的车辆特征信息进行分组,得到至少两个基础分组;
对于每个所述基础分组,进行分组内部消息队列的部署,得到目标分组;
将车载网内的每个车辆标识关联分配到所述目标分组;
执行组内局部联邦学习,对所述目标分组内每个节点的本地模型进行聚合更新,得到更新后的局部全局模型;
将每个所述目标分组作为一个中心,采用每个中心对应的所述更新后的局部全局模型进行全局多中心联邦学习,得到每个中心对应的全局模型,并采用所述全局模型进行车载网通信数据的处理;
其中,所述执行组内局部联邦学习,对所述目标分组内每个节点的本地模型进行更新,得到更新后的局部全局模型包括:
从消息队列中接收所述目标分组内每个节点上传的本地模型,其中,所述本地模型为所述目标分组内节点根据本地历史数据进行训练生成;
基于每个所述本地模型进行局部模型全局聚合,得到局部全局模型;
将所述局部全局模型发送给每个所述目标分组内节点,以使所述目标分组内节点根据本地数据对所述局部全局模型进行训练更新;
返回从消息队列中接收组内每个节点上传的本地模型的步骤继续执行,直到所述局部全局模型收敛,得到更新后的局部全局模型;
其中,所述将每个所述目标分组作为一个中心,采用每个中心对应的所述更新后的局部全局模型进行全局多中心联邦学习,得到每个中心对应的全局模型包括:
针对最后一个所述基础分层的每个所述中心,采用每个代表节点将所述中心对应的每个所述更新后的局部全局模型进行聚合,得到局部模型;
将上一个代表节点对应的局部模型发送给相邻的下一个代表节点,其中,上一个代表节点与下一个代表节点为相邻的两个代表节点;
采用上一个代表节点的局部模型对下一个代表节点的局部模型进行加权平均,并将得到的新的模型作为下一个代表节点的局部模型;
将下一个代表节点作为上一个代表节点,并将上一个代表节点相邻是另一个代表节点作为下一个代表节点,返回所述将上一个代表节点对应的局部模型发送给相邻的下一个代表节点的步骤继续执行,直到到达上一个所述基础分层代理节点;
上一个所述基础分层的代理节点在接收到下一个所述基础分层发送的所有局部模型后,对下一个所述基础分层发送的所有局部模型进行加权平均,得到上一个所述基础分层对应的全局模型,并将所述全局模型广播给下一个所述基础分层的代理节点,以使下一个所述基础分层的每个中心根据上一个所述基础分层对应的全局模型,生成所述中心对应的全局模型;
返回所述将上一个代表节点对应的局部模型发送给相邻的下一个代表节点的步骤继续执行,直到达到第一个所述基础分层。
2.如权利要求1所述的基于联邦学习的车载网数据处理方法,其特征在于,所述硬件配置信息包括带宽和通信能力,所述根据各个节点的历史通信消息数据和硬件配置信息,构建车载网的分层结构包括:
基于根据上一层节点的带宽和通信能力,确定当前层计算节点数量Ni:
其中,Bi-1为第i-1层节点的带宽,Pi-1为第i-1层节点的处理能力,Li当前层的通信负载,i为大于1的正整数;
获取车载网中用于进行通信的车辆标识数量,并基于所述车辆标识数量和所述节点数量,动态确定每个所述基础分层中包含的节点数量。
3.如权利要求2所述的基于联邦学习的车载网数据处理方法,其特征在于,所述当前层的通信负载采用如下步骤确定:
对于任意的两个节点j和k,采用如下公式计算节点j和节点k之间的平均消息大小Mj,k:
其中,wm为第m条消息的权重,sm为第m条消息的大小;
采用如下公式计算节点j和节点k之间的消息数目Tj,k:
其中,nm,j,k是第m个消息的大小;
通过如下公式,确定当前层的通信负载:
其中,Li为第i层的当前层的通信负载。
4.如权利要求2所述的基于联邦学习的车载网数据处理方法,其特征在于,所述基于车辆标识数量和所述节点数量,动态确定每个所述基础分层中包含的节点数量包括:
采用如下公式,确定第i个所述基础分层中包含的节点数量ni:
其中,N表示车辆的总数数量,表示向上取整函数,Nmax为第i个所述基础分层中的最大节点数量。
5.如权利要求2所述的基于联邦学习的车载网数据处理方法,其特征在于,所述针对每个所述基础分层,基于节点对应的车辆特征信息进行分组,得到至少两个基础分组包括:
针对第i个所述基础分层,根据所述基础分层内包含节点对应的车辆特征信息,确定组内节点数量;
基于第i个所述基础分层中的节点数量和组内的节点数量nj,采用如下公式确定基础分组数量K:
其中,表示向上取整函数,ni为第i个所述基础分层的节点数量,nj为所述组内节点数量;
根据节点对应的车辆特征信息,将层内每个节点分别分配到K个所述基础分组。
6.如权利要求5所述的基于联邦学习的车载网数据处理方法,其特征在于,所述针对第i个所述基础分层,根据所述基础分层内包含节点对应的车辆特征信息,确定组内节点数量包括:
采用如下公式计算组内的节点数量nj:
其中,P是特征向量中的所有维度,为组别Gj中所有节点在第p维度上的均值向量,并且,基础分层内的节点被分为k个不同的组别K={G1,G2,…,Gk},每个组别包含nj个节点,且
7.如权利要求6所述的基于联邦学习的车载网数据处理方法,其特征在于,所述根据节点对应的车辆特征信息,将层内每个节点分别分配到K个所述基础分组包括:
根据节点对应的车辆特征信息,将层内每个节点分别分配到K个所述基础分组;
针对任一所述基础分组,计算组内节点特征向量的方差,得到目标方差;
将所述目标方差与第一阈值进行比较,若所述目标方差大于所述第一阈值,则确定所述基础分组为待调整分组;
计算所述待调整分组中每个节点在不同特征向量上的标准差,将标准差大于第二阈值的节点,作为待调整节点;
采用聚类的方式,对所述待调整节点分配到新的基础分组,并返回所述针对任一所述基础分组,计算组内节点特征向量的方差,得到目标方差的步骤继续执行,直到每个基础分组的所述目标方差均小于或等于第一阈值为止。
8.如权利要求1所述的基于联邦学习的车载网数据处理方法,其特征在于,所述对于每个所述基础分组,进行分组内部消息队列的部署,得到目标分组包括:
从所述基础分组的各个节点中选取代表节点;
对每个所述代表节点进行消息队列的部署,得到目标分组。
9.如权利要求8所述的基于联邦学习的车载网数据处理方法,其特征在于,所述从所述基础分组的各个节点中选取代表节点包括:
将所述基础分组内的每个节点均作为候选节点;
基于相似度计算的方式,计算车辆标识对应的车辆特征信息和所述候选节点在各个特征上的相似度,并对得到的相似度由大到小进行排序,得到相似度序列;
在所述相似度序列中,从前往后依次选取预设数量的相似度,作为目标相似度,并获取目标相似度对应的节点,作为代表节点。
10.如权利要求9所述的基于联邦学习的车载网数据处理方法,其特征在于,所述方法还包括:对所述代表节点进行动态维护。
11.如权利要求8所述的基于联邦学习的车载网数据处理方法,其特征在于,所述将车载网内的每个车辆标识关联分配到所述目标分组包括:
针对每个车辆标识,计算所述车辆标识对应的车辆特征信息与每个所述代表节点对应的车辆特征信息的相似度;
将所述车辆标识分配到与所述车辆标识的相似度值最大的代表节点对应的基础分组中;
在所有车辆标识完成分配后,确定分配完成。
12.一种基于联邦学习的车载网数据处理装置,其特征在于,所述基于联邦学习的车载网数据处理装置包括:
分层模块,用于根据各个节点的历史通信消息数据和硬件配置信息,构建车载网的分层结构,分层结构包括至少两个基础分层;
分组模块,用于针对每个基础分层,基于节点对应的车辆特征信息进行分组,得到至少两个基础分组;
部署模块,用于对于每个基础分组,进行分组内部消息队列的部署,得到目标分组;
关联模块,用于将车载网内的每个车辆标识关联分配到目标分组;
局部学习模块,用于执行组内局部联邦学习,对目标分组内每个节点的本地模型进行聚合更新,得到更新后的局部全局模型;
全局学习模块,用于将每个目标分组作为一个中心,采用每个中心对应的更新后的局部全局模型进行全局多中心联邦学习,得到每个中心对应的全局模型,并采用全局模型进行车载网通信数据的处理;
其中,所述局部学习模块包括:
本地模型接收单元,用于从消息队列中接收目标分组内每个节点上传的本地模型,其中,本地模型为目标分组内节点根据本地历史数据进行训练生成;
第一聚合单元,用于基于每个本地模型进行局部模型全局聚合,得到局部全局模型;
第一训练单元,用于将局部全局模型发送给每个目标分组内节点,以使目标分组内节点根据本地数据对局部全局模型进行训练更新;
第一迭代单元,用于返回从消息队列中接收组内每个节点上传的本地模型的步骤继续执行,直到局部全局模型收敛,得到更新后的局部全局模型;
其中,所述全局学习模块包括:
第二聚合单元,用于针对最后一个基础分层的每个中心,采用每个代表节点将中心对应的每个更新后的局部全局模型进行聚合,得到局部模型;
模型发送单元,用于将上一个代表节点对应的局部模型发送给相邻的下一个代表节点,其中,上一个代表节点与下一个代表节点为相邻的两个代表节点;
第一加权单元,用于采用上一个代表节点的局部模型对下一个代表节点的局部模型进行加权平均,并将得到的新的模型作为下一个代表节点的局部模型;
第二迭代单元,用于将下一个代表节点作为上一个代表节点,并将上一个代表节点相邻是另一个代表节点作为下一个代表节点,返回将上一个代表节点对应的局部模型发送给相邻的下一个代表节点的步骤继续执行,直到到达上一个基础分层代理节点;
第二加权单元,用于上一个基础分层的代理节点在接收到下一个基础分层发送的所有局部模型后,对下一个基础分层发送的所有局部模型进行加权平均,得到上一个基础分层对应的全局模型,并将全局模型广播给下一个基础分层的代理节点,以使下一个基础分层的每个中心根据上一个基础分层对应的全局模型,生成中心对应的全局模型;
第三迭代单元,用于返回将上一个代表节点对应的局部模型发送给相邻的下一个代表节点的步骤继续执行,直到达到第一个基础分层。
13.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至11任一项所述的基于联邦学习的车载网数据处理方法。
14.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至11任一项所述的基于联邦学习的车载网数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310609308.5A CN116346863B (zh) | 2023-05-29 | 2023-05-29 | 基于联邦学习的车载网数据处理方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310609308.5A CN116346863B (zh) | 2023-05-29 | 2023-05-29 | 基于联邦学习的车载网数据处理方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116346863A CN116346863A (zh) | 2023-06-27 |
CN116346863B true CN116346863B (zh) | 2023-08-01 |
Family
ID=86893313
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310609308.5A Active CN116346863B (zh) | 2023-05-29 | 2023-05-29 | 基于联邦学习的车载网数据处理方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116346863B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116958149B (zh) * | 2023-09-21 | 2024-01-12 | 湖南红普创新科技发展有限公司 | 医疗模型训练方法、医疗数据分析方法、装置及相关设备 |
CN117812564B (zh) * | 2024-02-29 | 2024-05-31 | 湘江实验室 | 一种应用于车联网的联邦学习方法、装置、设备及介质 |
CN118101719B (zh) * | 2024-04-23 | 2024-07-23 | 湘江实验室 | 一种基于联邦学习的多任务车路协同智能感知方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113055488A (zh) * | 2021-03-23 | 2021-06-29 | 重庆邮电大学 | 多层联邦深度强化学习的车辆边缘协作缓存方法及系统 |
CN113163366A (zh) * | 2021-04-25 | 2021-07-23 | 武汉理工大学 | 车联网中基于联邦学习的隐私保护模型聚合系统及方法 |
WO2021169577A1 (zh) * | 2020-02-27 | 2021-09-02 | 山东大学 | 一种基于加权联邦学习的无线业务流量预测方法 |
WO2021179196A1 (zh) * | 2020-03-11 | 2021-09-16 | Oppo广东移动通信有限公司 | 一种基于联邦学习的模型训练方法、电子设备及存储介质 |
CN113571203A (zh) * | 2021-07-19 | 2021-10-29 | 复旦大学附属华山医院 | 多中心基于联邦学习的脑肿瘤预后生存期预测方法及系统 |
CN114266406A (zh) * | 2021-12-24 | 2022-04-01 | 北京航空航天大学 | 一种基于联邦学习的大范围路网交通流状态预测方法 |
CN114662618A (zh) * | 2022-05-23 | 2022-06-24 | 湖南工商大学 | 一种基于联邦学习的故障诊断方法、装置及相关设备 |
CN114827198A (zh) * | 2022-03-31 | 2022-07-29 | 电子科技大学 | 一种应用于车联网的多层中心异步联邦学习方法 |
CN115222064A (zh) * | 2021-04-15 | 2022-10-21 | 腾讯云计算(北京)有限责任公司 | 数据处理方法、装置、设备以及介质 |
CN116032663A (zh) * | 2023-03-27 | 2023-04-28 | 湖南红普创新科技发展有限公司 | 基于边缘设备的隐私数据处理系统、方法、设备及介质 |
-
2023
- 2023-05-29 CN CN202310609308.5A patent/CN116346863B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021169577A1 (zh) * | 2020-02-27 | 2021-09-02 | 山东大学 | 一种基于加权联邦学习的无线业务流量预测方法 |
WO2021179196A1 (zh) * | 2020-03-11 | 2021-09-16 | Oppo广东移动通信有限公司 | 一种基于联邦学习的模型训练方法、电子设备及存储介质 |
CN113055488A (zh) * | 2021-03-23 | 2021-06-29 | 重庆邮电大学 | 多层联邦深度强化学习的车辆边缘协作缓存方法及系统 |
CN115222064A (zh) * | 2021-04-15 | 2022-10-21 | 腾讯云计算(北京)有限责任公司 | 数据处理方法、装置、设备以及介质 |
CN113163366A (zh) * | 2021-04-25 | 2021-07-23 | 武汉理工大学 | 车联网中基于联邦学习的隐私保护模型聚合系统及方法 |
CN113571203A (zh) * | 2021-07-19 | 2021-10-29 | 复旦大学附属华山医院 | 多中心基于联邦学习的脑肿瘤预后生存期预测方法及系统 |
CN114266406A (zh) * | 2021-12-24 | 2022-04-01 | 北京航空航天大学 | 一种基于联邦学习的大范围路网交通流状态预测方法 |
CN114827198A (zh) * | 2022-03-31 | 2022-07-29 | 电子科技大学 | 一种应用于车联网的多层中心异步联邦学习方法 |
CN114662618A (zh) * | 2022-05-23 | 2022-06-24 | 湖南工商大学 | 一种基于联邦学习的故障诊断方法、装置及相关设备 |
CN116032663A (zh) * | 2023-03-27 | 2023-04-28 | 湖南红普创新科技发展有限公司 | 基于边缘设备的隐私数据处理系统、方法、设备及介质 |
Non-Patent Citations (3)
Title |
---|
Liangtian Wan,et.al.Deep_Learning_Based_Autonomous_Vehicle_Super_Resolution_DOA_Estimation_for_Safety_Driving.IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS.2021,全文. * |
边缘学习:关键技术、应用与挑战;吴琪;卢健圳;伍沛然;王帅;陈立;夏明华;;无线电通信技术(第01期);全文 * |
面向分层联邦学习的传输优化研究;邹赛兰等;计算机科学;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116346863A (zh) | 2023-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116346863B (zh) | 基于联邦学习的车载网数据处理方法、装置、设备及介质 | |
CN112948951B (zh) | 建筑模型创建方法与装置、处理服务器 | |
CN112328909B (zh) | 信息推荐方法、装置、计算机设备及介质 | |
CN112382099B (zh) | 交通路况预测方法、装置、电子设备及存储介质 | |
CN106651213A (zh) | 服务订单的处理方法及装置 | |
Jiau et al. | Services-oriented computing using the compact genetic algorithm for solving the carpool services problem | |
CN115130711A (zh) | 一种数据处理方法、装置、计算机及可读存储介质 | |
CN112214677A (zh) | 一种兴趣点推荐方法、装置、电子设备及存储介质 | |
US20200097811A1 (en) | Reinforcement learning by sharing individual data within dynamic groups | |
CN112269875A (zh) | 文本分类方法、装置、电子设备及存储介质 | |
CN115049151A (zh) | 导航路线推荐方法、装置、设备及存储介质 | |
CN110889738A (zh) | 一种订单派发方法及装置 | |
CN113590898A (zh) | 数据检索方法、装置、电子设备、存储介质及计算机产品 | |
CN113850669A (zh) | 用户分群方法、装置、计算机设备及计算机可读存储介质 | |
CN110619090B (zh) | 一种区域吸引力评估方法及设备 | |
EP4343717A1 (en) | Image layering method and apparatus, electronic device, and storage medium | |
CN108770014B (zh) | 网络服务器的计算评估方法、系统、装置及可读存储介质 | |
CN116957678A (zh) | 一种数据处理方法和相关装置 | |
US12026664B2 (en) | Automatically generating inventory-related information forecasts using machine learning techniques | |
CN115686379A (zh) | 一种优化闪存中空白数据区管理的方法及系统 | |
US20230103433A1 (en) | Systems and methods for assigning non-overlapping base stations to technicians for service | |
CN113822301B (zh) | 分拣中心的分类方法及装置、存储介质、电子设备 | |
CN115002215A (zh) | 面向云上政企的资源分配模型训练方法以及资源分配方法 | |
CN114638308A (zh) | 一种获取对象关系的方法、装置、电子设备和存储介质 | |
CN112764923A (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 |