CN114492833A - 基于梯度记忆的车联网联邦学习分层知识安全迁移方法 - Google Patents

基于梯度记忆的车联网联邦学习分层知识安全迁移方法 Download PDF

Info

Publication number
CN114492833A
CN114492833A CN202111633142.8A CN202111633142A CN114492833A CN 114492833 A CN114492833 A CN 114492833A CN 202111633142 A CN202111633142 A CN 202111633142A CN 114492833 A CN114492833 A CN 114492833A
Authority
CN
China
Prior art keywords
gradient
clusters
cluster
training
local
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.)
Pending
Application number
CN202111633142.8A
Other languages
English (en)
Inventor
李高磊
伍军
佟光辉
李建华
殷承良
于娜娜
胡勇庆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Jiaotong University
Shanghai Intelligent and Connected Vehicle R&D Center Co Ltd
Original Assignee
Shanghai Jiaotong University
Shanghai Intelligent and Connected Vehicle R&D Center Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Jiaotong University, Shanghai Intelligent and Connected Vehicle R&D Center Co Ltd filed Critical Shanghai Jiaotong University
Priority to CN202111633142.8A priority Critical patent/CN114492833A/zh
Publication of CN114492833A publication Critical patent/CN114492833A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Medical Informatics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法,该方法包括以下步骤:步骤1:采用层次聚类算法对多个客户端进行聚类,获取多个独立同分布的集群,以实现将多个数据异质化的客户端合并为独立同分布的集群;步骤2:建立基于分层集群架构的车联网联邦学习模型;步骤3:采用基于梯度记忆的知识迁移联邦学习算法进行不同集群之间的知识迁移,以缓解分层集群架构中进行知识迁移的灾难性遗忘问题,与现有技术相比,本发明具有减轻灾难性遗忘的问题以及有效地提高模型收敛速度和模型精度等优点。

Description

基于梯度记忆的车联网联邦学习分层知识安全迁移方法
技术领域
本发明涉及车联网联邦学习技术领域,尤其是涉及一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法。
背景技术
随着数据量的不断增长、计算硬件性能的提高以及深度神经网络的发展,车联网、自动驾驶等近年来取得了长足的进步,大多数人工智能解决方案都是集中式的,用户将他们收集的所有数据传输到中央数据服务器或云端,但这会带来隐私问题、延迟和带宽限制,相比之下,分布式架构是一种更加隐私保护和高效的选择,联邦学习(FL)是一种新兴的分布式机器学习模式,它允许参与学习的各方在参数服务器的协调下进行合作训练,在FL中,本地客户端从中央参数服务器下载全局模型,再分别使用自己的数据集进行本地训练,然后将更新的模型参数而不是敏感的原始数据上传到服务器,中央服务器使用联邦学习等技术聚合这些模型权重参数,以获得更有效的全局机器学习模型,然后将聚合后的参数重新分发给本地客户端,用于下一次全局训练迭代.重复该过程直到全局模型达到收敛。
为了简化研究条件,通常会认为数据遵从独立同分布的假设,但是在现实世界中客户节点往往是以非独立同分布的方式产生和收集数据,这不符合常用的独立同分布假设,并在异构数据建模和训练过程的模型收敛分析方面提出了挑战,当对非独立同分布的数据采用原始的加权聚合算法如联邦聚合时,全局学习模型收敛到一个与真实目标函数不一致的驻点,从而导致了低的模型精度,为了解决这些问题并提高收敛效率,本发明采用层次聚类算法将非独立同分布数据根据数据间的相似度转换为多个独立同分布数据聚类,相同数据分布的客户节点会合并在一个集群并分配特定的任务,每个小集群分别代表一个小规模的联邦系统,这样一个大型分独立同分布联邦学习系统就被划分为多个小型独立同分布系统,然而不同的集群彼此分离,它们之间不允许进行有益的知识转移。
在这种情况下,本发明提出了一个分层架构,允许不同层级间的集群交换它们的知识,然而当一个集群在执行自己任务的过程后同时想要获取其他集群的知识时,从其他任务中获取的知识会对当前模型的参数产生修改使得更新了的模型对于过去训练任务的知识发生丢失,这样的问题被称为灾难性遗忘,持续学习提出了各种缓解灾难性遗忘的解决方案,收到持续学习的启发,本发明采用梯度记忆存储过去的样本并约束训练梯度的更新方向,以保持对所有任务的良好预测,在传统的FL中,单个中央服务器与容纳异构数据的所有客户端进行通信,为了提高收敛效率和模型性能,集群FL将不同的客户端划分为独立同分布的聚类,但这些集群之间彼此分离,为了进一步使得隔离的集群之间达到知识迁移的目标,本发明将参与者根据相似度划分为不同层次集群,并提出了一种基于梯度记忆的多阶段模型训练机制,以实现分层集群之间的有益知识转移。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法。
本发明的目的可以通过以下技术方案来实现:
一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法,该方法包括以下步骤:
步骤1:采用层次聚类算法对多个客户端进行聚类,获取多个独立同分布的集群,以实现将多个数据异质化的客户端合并为独立同分布的集群;
步骤2:建立基于分层集群架构的车联网联邦学习模型;
步骤3:采用基于梯度记忆的知识迁移联邦学习算法进行不同集群之间的知识迁移,以缓解分层集群架构中进行知识迁移的灾难性遗忘问题。
所述的步骤1中,层次聚类算法通过计算客户端之间的数据相似度将多个客户端进行聚类,自下而上不断将多个单一的集群聚合成为多个大的集群,即将非独立同分布下的客户端划分为独立同分布的集群,且分别位于不同的层级中,形成树状的分层集群结构,采用层次聚类算法对多个客户端进行聚类的过程具体包括以下步骤:
步骤101:将数据集分配至各个客户端,每个客户端对应一个数据集,即本地数据集;
步骤102:初始时每个客户端的数据集分别作为单一的集群,计算每个单一的集群之间的距离,并得到距离矩阵D;
步骤103:遍历距离矩阵D,获取距离矩阵D中的最小距离,并得到最小距离的两个集群的编号;
步骤104:将最小距离的两个单一的集群聚类为一个新的集群,并基于Lance-Williams法更新距离矩阵D,即删除这两个集群对应的行和列,并将根据新的集群计算得到的距离插入距离矩阵D中;
步骤105:当一个集群包含多个客户端时,采用平均连接,即选择两个集群之间距离的平均值作为集群之间的距离;
步骤106:返回步骤103,直至最终的距离矩阵D中的最小距离大于规定的距离门限。
所述的步骤102中,给定两个客户端的数据集d1和数据集d2,两个客户端的数据集d1和数据集d2之间距离的计算公式为:
Figure BDA0003441646720000031
其中,
Figure BDA0003441646720000032
为根据耦合数据相似度定义的耦合属性值相似度,d1h和d2h分别为数据集d1和数据集d2中的第h个样本,n为样本的数量。
所述的步骤101中,距离矩阵D的表达式为:
Figure BDA0003441646720000033
其中,Dqr为第q个客户端的数据集dq和第r个客户端的数据集dr之间的距离。
所述的车联网联邦学习模型的分层集群架构具体为:
设有多个层级,按照学习顺序在层级中分配集群,同一层级为独立同分布下的客户端形成的集群,且不同层级之间的客户端的本地数据集是非独立同分布的,每个层级分别包括多个相同数据分布的客户端和一个中央参数服务器,形成一个车联网联邦学习子系统,中央参数服务器将模型和数据集分别分配至每个客户端,即每个客户端对应一个特定的本地模型和本地数据集,中央参数服务器对各个客户端协作训练进行协调。
所述的步骤3中,基于梯度记忆的知识迁移联邦学习算法引入梯度记忆,梯度记忆存储多个过去训练任务中的样本,即过去样本,采用基于梯度记忆的模型更新策略在最小化当前训练任务中的损失函数的同时要求过去训练任务中的损失函数不再增加,以实现在当前训练任务中梯度有方向地更新,进而保证全局模型在所有训练任务上的预测性能,采用基于梯度记忆的知识迁移联邦学习算法进行不同集群之间的知识迁移的过程具体包括以下步骤:
步骤301:令r1,r2,…,rt分别为集群C1,C2,…,Ct提交的请求,请求rk为执行除了当前训练任务Tk之外的k-1个过去训练任务T1,T2,…,Tk-1的请求,当集群发起请求时,相关的集群进行协作训练;
步骤302:对于请求rt,假设t-1个集群已在对应的层级上完成训练任务,且梯度记忆
Figure BDA0003441646720000042
存储t-1个集群的数据集中的部分样本,即过去样本;
步骤303:集群Ct中的中央参数服务器将基于梯度记忆的知识迁移联邦学习算法、模型ft和数据集分别分配至集群Ct内的每个客户端,各个客户端开始训练并更新本地模型;
步骤304:各个客户端通过计算当前训练任务中本地数据集的梯度与通过梯度记忆存储的过去样本的梯度之间的内积决定是否更新当前训练任务的梯度g,以实现对本地模型进行更新,并将更新后的本地模型参数θ发送至中央服务器进行聚合;
步骤305:各个客户端训练本地模型和中央服务器聚合上传的本地模型参数不断进行,直至最终的全局模型收敛或达到设定的通讯次数;
步骤306:集群Ct完成训练后将得到的收敛的全局模型传输至上一层级,同时选取各个客户端对应的本地数据集中的部分样本存入梯度记忆
Figure BDA0003441646720000041
中,上一层级的集群遵循相同的训练过程完成该集群的训练任务和知识的不断向上迁移。
所述的步骤304中,对本地模型进行更新的过程具体包括以下步骤:
步骤304A:各个客户端通过最小化本地数据集的损失函数更新本地模型的参数,分别获取本地数据集在当前的本地模型中的当前梯度gt和梯度记忆中存储的过去样本在当前的本地模型中的过去梯度g1,...,gt-1
步骤304B:各个客户端计算当前梯度gt与过去梯度g1,...,gt-1之间的内积,根据内积判断过去训练任务中的损失函数是否增加,即判断是否需要对梯度进行投影变换,若内积小于0,则对梯度进行投影变换,表示参数更新后部分过去训练任务的损失函数增加,即当前本地模型参数在本地数据集中的当前样本下的更新方向与之前的本地模型参数的更新方向是偏离的,导致在过去训练任务上的本地模型性能降低;
步骤304C:将当前本地模型参数更新的梯度投影变换到最临近的距离,采用二次规划方法获取目标投影梯度,对当前更新的本地模型参数进行修改,使得在当前本地模型参数变换最小程度的基础上得到的内积大于等于0。
所述的步骤304A中,目标投影梯度的表达式为:
Figure BDA0003441646720000051
其中,
Figure BDA0003441646720000052
为目标投影梯度,g=gt为本地数据集的梯度,即当前梯度,v为二次规划问题的最优解,G=-(g1,...,gt-1)为梯度记忆中存储的过去t-1个训练任务中的样本的梯度向量。
所述的步骤304B中,对当前更新的本地模型参数进行修改的优化问题为:
最小化
Figure BDA0003441646720000053
满足
Figure BDA0003441646720000054
对于所有k<t;
其中,
Figure BDA0003441646720000055
为目标投影梯度,g为当前更新的梯度,即本地数据集的梯度,gk为梯度记忆中存储的过去第k个训练任务中的过去样本的梯度,t-1为梯度记忆中存储的过去训练任务的数量。
所述的步骤304C中,v为二次规划问题的最优解,二次规划问题的描述为:
最小化
Figure BDA0003441646720000056
满足v≥0;
其中,v为二次规划问题的自变量,g为本地数据集中的梯度,G=-(g1,...,gt-1)为梯度记忆中存储的过去t-1个训练任务中的样本的梯度向量。
与现有技术相比,本发明具有以下优点:
1、本发明能够在执行连续的学习任务同时实现模型强收敛和高精度;
2、本发明首先引入层次聚类方法,根据客户节点数据集相似性对不同数据分布的客户端进行分层聚类,而无需事先考虑最佳的聚类规模和数量;
3、本发明提出的一种协作学习算法用以在分层集群中训练一系列连续的学习任务,通过引入梯度记忆,允许在这些集群之间进行有益的知识转移;
4、本发明能够实现非独立同分布数据的车联网联邦学习中的异质化节点之间更有效地提高模型收敛速度和模型精度。
附图说明
图1为本发明的基于分层集群架构的车联网联邦学习模型的结构示意图。
图2为本发明与传统联邦学习方法的对比示意图。
图3为基于不同梯度记忆规模的模型精度示意图。
图4为基于不同梯度记忆规模的模型精度示意图。
图5为基于不同集群规模的模型精度示意图。
图6为基于不同集群规模的模型精度示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。
实施例
一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法,该方法包括:
将非独立同分布下的参与者划分为独立同分布的集群:
通过根据数据集的相似性对客户端进行聚类来完成,进而为相似客户节点的集群训练特定的模型,由于无法预先确定划分多少个集群,因此自动计算集群数量及其相关方的集群算法十分重要,本发明采用层次化集群算法,即层次聚类算法,该算法具有生成特定集群的能力,并在未知集群数量和数据分布的前提下将各方分配到最合适的集群,层次化集群算法的另一个优点是对样本的输入顺序不敏感,能够构建参与者之间相似性的层次结构。
基于层次化集群算法重复合并单独的集群,直到满足停止条件,具体包括以下步骤:
步骤a:初始时将所有客户端的数据集分别作为单一的集群;
步骤b:测量每个集群与集群之间的距离以计算它们之间的相似度,相似度最高的一对集群被合并,形成一个新的集群;
步骤c:重复上述计算相似度和合并集群的过程,直到所有相似的节点都被合并在同一个集群之中,即将相似的节点聚集在同一个集群中,通过提前引入距离阈值的超参数终止集群过程。
通过这种方式将相似数据分布的客户端聚集在同一个集群中,且不同的集群保持一定的距离。
层次化集群算法采用客户端之间的距离衡量不同客户端之间的相似度,因此,选择合适的距离度量方法来计算客户端之间的相似性非常重要,本发明基于耦合对象相似性衡量数据提供者的相似性,给定两个客户端的数据集d1和数据集d2,它们之间的距离的计算公式为:
Figure BDA0003441646720000071
其中,
Figure BDA0003441646720000072
为根据耦合数据相似度定义的耦合属性值相似度,d1h和d2h分别为数据集d1和数据集d2中的第h个样本,n为样本的数量。
当一个集群包含多个客户端时,确定选择集群中的哪些客户端来计算集群之间的距离很重要,根据集群间相似度的不同定义,计算两个集群之间的距离有三种方法,分别是单连接、全连接和平均连接,单连接和全连接只考虑某些特征数据,而忽略了集群内数据的整体特征,因此,本发明采用平均连接,选择两个集群的节点之间距离的平均值作为集群之间的距离。
本方法采用梯度记忆算法实现集群之间有益的知识迁移,对于由中央参数服务器和多个相同数据分布的客户端组成的单个集群,将其视为小型联邦学习系统,该系统学习过程为重复局部训练和中央参数聚合的过程,直到实现模型收敛,每个集群分别分配一个特定的任务模型,但是知识的灾难性遗忘问题可能会在发生当一个集群尝试学习其他集群的任务模型时,会阻碍集群之间的知识转移,将所有的集群放到同一个车联网联邦学习系统中并重新设计一个全局模型是一种解决方案,但会导致通信效率低和模型精度低的问题,因此,本方法采用基于梯度记忆的车联网联邦学习算法实现集群间有益的知识迁移,如图1所示。
本发明在分层联邦学习中采用梯度记忆,目的是优化局部集群中的模型参数,同时保持对过去训练任务的正确预测,梯度记忆通过存储来自过去训练任务中的样本并计算在当前训练任务中的梯度,用以减轻灾难性遗忘的问题,使得过去训练任务的损失函数在当前训练任务中的值不再增加,进而使得当前的全局模型仍能够保持对过去训练任务的良好预测,在训练任务t中,基于梯度记忆的模型更新策略要求在过去t-1个训练任务的损失函数都不再增加,即过去t-1个训练任务的损失函数和当前训练任务的损失函数之间的不等式限制的规范描述为:
满足
Figure BDA0003441646720000073
对于所有k<t;
其中,fθ
Figure BDA0003441646720000074
为当前训练任务和过去第t-1个训练任务中的本地模型,
Figure BDA0003441646720000075
为梯度记忆
Figure BDA0003441646720000076
中存储的过去第k个训练任务中的部分样本,
Figure BDA0003441646720000077
为本地模型fθ在样本集
Figure BDA0003441646720000078
上的平均损失函数。
将当前训练任务中更新的梯度和通过过去训练任务计算得到的梯度进行内积计算,通过内积判断过去训练任务中的损失函数是否增加,若该内积为负,则参数更新后部分过去训练任务的损失函数增加,因此,将当前训练任务更新的梯度投影变换至最临近的距离,在进行最小变换的同时确保新的梯度和之前的梯度之间的值均为正值,投影变换得到的梯度的计算公式为:
Figure BDA0003441646720000081
其中,
Figure BDA0003441646720000082
为目标投影梯度,g为本地数据集的梯度,v为二次规划问题的最优解,G=-(g1,...,gt-1)为梯度记忆中存储的过去t-1个训练任务中的样本的梯度;
二次规划问题的描述为:
最小化
Figure BDA0003441646720000083
满足v≥0;
其中,v为二次规划问题的自变量,g为本地数据集的梯度,G=-(g1,...,gt-1)为梯度记忆中存储的过去t-1个训练任务中的样本的梯度。
对当前更新的本地模型参数进行修改的优化问题为:
最小化
Figure BDA0003441646720000084
满足
Figure BDA0003441646720000085
对于所有k<t
其中,
Figure BDA0003441646720000086
为目标投影梯度,g为当前更新的梯度,即本地数据集的梯度,gk为梯度记忆中存储的过去第k个训练任务中的过去样本的梯度,t-1为梯度记忆中存储的过去训练任务的数量。
如图1所示,不同集群间基于梯度记忆的知识迁移多阶段训练过程具体为:
步骤A:将训练任务T1分配给集群C1,其余的训练任务分配至集群C2
步骤B:集群C1中的中央参数服务器将基于梯度记忆的知识迁移联邦学习算法、模型ft和数据集分别分配至集群C1中的每个客户端;
步骤C:客户端分别计算梯度记忆存储的过去样本的梯度和本地数据集的梯度;
步骤D:客户端通过计算梯度记忆存储的过去样本的梯度和本地数据集的梯度g之间的内积并决定是否更新当前训练任务的梯度g,并将更新后的本地模型参数θ发送至中央服务器进行聚合;
步骤E:基于梯度记忆的局部模型更新和中央服务器进行聚合过程不断重复,直到全局模型收敛;
步骤F:在集群C1完成学习任务后,集群C1将本地数据集中的部分样本添加到梯度记忆
Figure BDA0003441646720000087
中,与训练后的全局模型一起上传到上一层级的集群C2
步骤G:集群C2遵循相同的训练过程完成该集群的训练任务和知识的不断向上迁移。
在实施例中,搭建一个仿真实验环境进行实验验证,实验分为两步进行:
第一步是运行层次聚类算法,以实现非独立同分布数据集被划分为相同数据分布的集群;
第二步是在不同集群之间进行基于梯度记忆的模型更新,用梯度记忆储存其余集群中的部分样本,并在当前训练任务样本更新模型时计算这些样本的梯度,对梯度进行投影变换,更新本地模型参数,再将更新后的本地模型参数上传到中央服务器进行聚合,最终得到一个收敛的全局模型,以实现不同集群间有效的知识迁移。
步骤1:基于层次聚类算法进行层次集群:
设Pi表示第i个参与者,即第i个客户端,Ci表示第i个集群,Cj表示第j个集群,Dis(Ci,Cj)表示集群Ci和集群Cj之间的距离,即计算初始时各个客户端的数据集之间的距离,将超参数T设置为距离门限,作为结束集群过程的条件,所有参与者在开始时分别划分至各自的集群中,若是一个集群包括多个客户端时,通过计算集群Ci和集群Cj间每两个客户端之间的距离的平均值获取集群Ci和集群Cj之间的距离Dis(Ci,Cj),选择集群之间的最小距离Dismin与阈值T进行比较,若集群之间的最小距离Dismin小于阈值T,则将这些集群合并为一个新的集群,重复合并过程,直到所有集群之间的距离均大于阈值T,以将非独立同分布下的所有参与者根据彼此之间的距离集群为各种强连接组,两个数据集越相似,其距离越小,层次聚类算法在这种情况下能够在计算复杂度小的情况下快速对客户端进行分组并产生最佳结果。
步骤2:采用基于梯度记忆的知识迁移联邦学习算法进行知识迁移:
步骤201:发起请求,令R=r1,r2,…,rt为集群C1,C2,…,Ct提交的请求,假设请求rk为学习之前的训练任务T1,T2,…,Tk-1的请求,即除了当前训练任务Tk之外的集群提交的请求,当集群发起请求时,搜索相关的集群进行协作训练和知识学习;
步骤202:构建层次化集群结构,通过按照学习顺序在各个层级中分配集群,以构建分层集群架构,即将集群分为多个层级,每个集群对应一个特定的模型,分层集群架构的训练过程从第一层的层级L1开始训练,直至最上层的层级Lt,每两个相邻的层级能够进行通讯,并将对应的全局模型交换到上一层级,同时将数据集中最后的m个样本推送到梯度记忆
Figure BDA0003441646720000092
中;
步骤203:更新集群对应的模型,上层的层级的集群能够从下层的层级的训练后的全局模型中获取知识,对于请求rt,假设先前的集群C1,C2,…,Ct-1分别在对应的层级L1,L2,…,Lt-1已经完成了训练,且梯度记忆存储集群的部分样本,即过去样本
Figure BDA0003441646720000091
在集群Ct中,客户端基于分配的数据集训练本地模型,客户端
Figure BDA0003441646720000101
输入数据集中的各个样本以获得损失函数和梯度,此外,为了确保梯度记忆存储的过去样本的损失函数不会增加,计算过去样本的梯度和本地样本的梯度之间的内积,若内积为负,则对本地样本的梯度进行投影变换,得到投影梯度
Figure BDA0003441646720000102
并在客户端本地训练后,客户端将更新后的投影梯度
Figure BDA0003441646720000103
发送至中央服务器进行聚合,对于请求rt+,训练过程与请求rt相同,集群Ct将其模型参数上传到集群Ct+1,将数据集中的m个样本添加至梯度记忆
Figure BDA0003441646720000104
中,集群Ct+1重复上述集群模型更新过程。
整个分层集群架构的训练过程是一个持续学习的过程,且存储在内存中的样本不包含敏感信息,因为集群已经实现了数据隐私屏蔽。
集群之间进行协作训练的过程具体为:
各个车联网联邦学习子系统在本地模型训练时保持对全局模型的更新,在每一轮训练开始之前,参与协作训练的客户端从中央参数服务器下载全局模型,每个客户端基于本地数据集对本地模型进行训练和更新,参与协作训练的客户端在训练过程中更新模型参数时最小化其损失函数,将更新后的本地模型的参数发送到中央参数服务器,中央参数服务器通过聚合各个客户端上传的本地模型的参数计算最新的全局模型参数,各个客户端训练本地模型和中央服务器聚合上传的本地模型参数不断进行,直至最终的全局模型收敛或达到设定的通讯次数,两个相邻层级之间进行通讯,将收敛的全局模型传输至上一层级,同时选取各个客户端对应的本地数据集中的部分样本作为样本存入梯度记忆中。
采用由三个隐藏层组成的全连接网络用以仿真实验中的图像分类任务,每个隐藏层包含100个ReLU单元,在此设置中,考虑10个训练任务,10个训练任务对应10个Permuted-MNIST或Fashion-MNIST,每个训练任务随机排列,为简单起见,将每个数据集的训练数据分成20个不相交的集合,每个客户端对应一个小型的数据集,每个小型的数据集中包含3,000个训练样本和500个测试样例,集群后,持有同类数据的客户端被合并为一个新的集群,对于客户端的本地训练,采用小批量随机梯度下降(SGD)方法并将训练的批量大小设置为β=64,学习率设置为0.1,为了评估,假设所有过去训练任务中的数据集均能够进行访问,令acck为在过去第k个训练任务Tk的数据集上评估的准确率,完成训练任务Tt后,所有t个训练任务的平均性能的计算公式为:
Figure BDA0003441646720000105
其中,ACC为训练任务的平均性能,t为训练任务的数量。
如图3~图6所示的实验结果,为了进一步测试推理模型的有效性,在不同梯度记忆容量和不同集群规模下进行测试,从图中可以看出:
随着梯度记忆的容量的增大,平均准确率和收敛速度在不断提高,在图3和图4中,平均准确率随着梯度记忆的容量变化而变化,在图中首先可以看到,当分层集群持续执行不同训练任务时,基于梯度记忆训练的情况下平均准确率高,这表明知识在集群之间实现了有效迁移,且有效减轻了灾难性遗忘的问题,更重要的是,因为当前训练任务能够从梯度记忆中存储的过去样本中学习更多知识,随着梯度记忆的容量的扩大,平均准确率得以提高。
随着集群中的客户端的数量增多,平均准确率和收敛速度也在不断提高,如图5和图6所示,展示了当集群中分别有1、2、5、10和15个客户端且当梯度记忆放入容量大小为3000个样本时的性能,如果集群中只存在一个客户端,则相当于传统连续学习,可以观察到由于样本不足和模型欠拟合而表现不佳,相比之下,本发明在所有训练任务中显示出更高的平均准确率,因为每个训练任务都是在协作联邦下进行的,其中,分布式的数据集共享提供了足够的训练数据,还观察到,最开始随着客户端的数量的增加,性能会迅速提高,但当客户端的数量继续增加时,性能会以较低的步长提高,最后几乎保持不变。
综上所述,本发明所提出的一种非独立同分布数据集联邦学习环境下的基于梯度记忆的分层知识安全迁移方法(GradMFL),在搭建的仿真实验环境中,将传统的标准数据集划分为多个非独立同分布数据集,运行层次聚类算法将这些数据集异质化,进而将客户端合并为独立同分布的集群,再采用基于梯度记忆的知识迁移联邦学习算法实现集群训练本地模型的同时获得其他集群中的全局模型的功能,得到优化的全局模型,完成层次化后的集群之间的知识迁移。从实验结果来看,达到了预期的效果。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的工作人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法,其特征在于,该方法包括以下步骤:
步骤1:采用层次聚类算法对多个客户端进行聚类,获取多个独立同分布的集群,以实现将多个数据异质化的客户端合并为独立同分布的集群;
步骤2:建立基于分层集群架构的车联网联邦学习模型;
步骤3:采用基于梯度记忆的知识迁移联邦学习算法进行不同集群之间的知识迁移,以缓解分层集群架构中进行知识迁移的灾难性遗忘问题。
2.根据权利要求1所述的一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法,其特征在于,所述的步骤1中,层次聚类算法通过计算客户端之间的数据相似度将多个客户端进行聚类,自下而上不断将多个单一的集群聚合成为多个大的集群,即将非独立同分布下的客户端划分为独立同分布的集群,且分别位于不同的层级中,形成树状的分层集群结构,采用层次聚类算法对多个客户端进行聚类的过程具体包括以下步骤:
步骤101:将数据集分配至各个客户端,每个客户端对应一个数据集,即本地数据集;
步骤102:初始时每个客户端的数据集分别作为单一的集群,计算每个单一的集群之间的距离,并得到距离矩阵D;
步骤103:遍历距离矩阵D,获取距离矩阵D中的最小距离,并得到最小距离的两个集群的编号;
步骤104:将最小距离的两个单一的集群聚类为一个新的集群,并基于Lance-Williams法更新距离矩阵D,即删除这两个集群对应的行和列,并将根据新的集群计算得到的距离插入距离矩阵D中;
步骤105:当一个集群包含多个客户端时,采用平均连接,即选择两个集群之间距离的平均值作为集群之间的距离;
步骤106:返回步骤103,直至最终的距离矩阵D中的最小距离大于规定的距离门限。
3.根据权利要求2所述的一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法,其特征在于,所述的步骤102中,给定两个客户端的数据集d1和数据集d2,两个客户端的数据集d1和数据集d2之间距离的计算公式为:
Figure FDA0003441646710000021
其中,
Figure FDA0003441646710000022
为根据耦合数据相似度定义的耦合属性值相似度,d1h和d2h分别为数据集d1和数据集d2中的第h个样本,n为样本的数量。
4.根据权利要求2所述的一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法,其特征在于,所述的步骤101中,距离矩阵D的表达式为:
Figure FDA0003441646710000023
其中,Dqr为第q个客户端的数据集dq和第r个客户端的数据集dr之间的距离。
5.根据权利要求1所述的一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法,其特征在于,所述的车联网联邦学习模型的分层集群架构具体为:
车联网联邦学习模型设有多个层级,按照学习顺序在层级中分配集群,同一层级为独立同分布下的客户端形成的集群,且不同层级之间的客户端的本地数据集是非独立同分布的,每个层级分别包括多个相同数据分布的客户端和一个中央参数服务器,形成一个车联网联邦学习子系统,中央参数服务器将模型和数据集分别分配至每个客户端,即每个客户端对应一个特定的本地模型和本地数据集,中央参数服务器对各个客户端协作训练进行协调。
6.根据权利要求1所述的一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法,其特征在于,所述的步骤3中,基于梯度记忆的知识迁移联邦学习算法引入梯度记忆,梯度记忆存储多个过去训练任务中的样本,即过去样本,采用基于梯度记忆的模型更新策略在最小化当前训练任务中的损失函数的同时要求过去训练任务中的损失函数不再增加,以实现在当前训练任务中梯度有方向地更新,进而保证全局模型在所有训练任务上的预测性能,采用基于梯度记忆的知识迁移联邦学习算法进行不同集群之间的知识迁移的过程具体包括以下步骤:
步骤301:令r1,r2,…,rt分别为集群C1,C2,…,Ct提交的请求,请求rk为执行除了当前训练任务Tk之外的k-1个过去训练任务T1,T2,…,Tk-1的请求,当集群发起请求时,相关的集群进行协作训练;
步骤302:对于请求rt,假设t-1个集群已在对应的层级上完成训练任务,且梯度记忆
Figure FDA0003441646710000033
存储t-1个集群的数据集中的部分样本,即过去样本;
步骤303:集群Ct中的中央参数服务器将基于梯度记忆的知识迁移联邦学习算法、模型ft和数据集分别分配至集群Ct内的每个客户端,各个客户端开始训练并更新本地模型;
步骤304:各个客户端通过计算当前训练任务中本地数据集的梯度与通过梯度记忆存储的过去样本的梯度之间的内积决定是否更新当前训练任务的梯度g,以实现对本地模型进行更新,并将更新后的本地模型参数θ发送至中央服务器进行聚合;
步骤305:各个客户端训练本地模型和中央服务器聚合上传的本地模型参数不断进行,直至最终的全局模型收敛或达到设定的通讯次数;
步骤306:集群Ct完成训练后将得到的收敛的全局模型传输至上一层级,同时选取各个客户端对应的本地数据集中的部分样本存入梯度记忆
Figure FDA0003441646710000032
中,上一层级的集群遵循相同的训练过程完成该集群的训练任务和知识的不断向上迁移。
7.根据权利要求6所述的一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法,其特征在于,所述的步骤304中,对本地模型进行更新的过程具体包括以下步骤:
步骤304A:各个客户端通过最小化本地数据集的损失函数更新本地模型的参数,分别获取本地数据集在当前的本地模型中的当前梯度gt和梯度记忆中存储的过去样本在当前的本地模型中的过去梯度g1,...,gt-1
步骤304B:各个客户端计算当前梯度gt与过去梯度g1,...,gt-1之间的内积,根据内积判断过去训练任务中的损失函数是否增加,即判断是否需要对梯度进行投影变换,若内积小于0,则对梯度进行投影变换,表示参数更新后部分过去训练任务的损失函数增加,即当前本地模型参数在本地数据集中的当前样本下的更新方向与之前的本地模型参数的更新方向是偏离的,导致在过去训练任务上的本地模型性能降低;
步骤304C:将当前本地模型参数更新的梯度投影变换到最临近的距离,采用二次规划方法获取目标投影梯度,对当前更新的本地模型参数进行修改,使得在当前本地模型参数变换最小程度的基础上得到的内积大于等于0。
8.根据权利要求7所述的一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法,其特征在于,所述的步骤304A中,目标投影梯度的表达式为:
Figure FDA0003441646710000031
其中,
Figure FDA0003441646710000041
为目标投影梯度,g=gt为本地数据集的梯度,即当前梯度,v为二次规划问题的最优解,G=-(g1,...,gt-1)为梯度记忆中存储的过去t-1个训练任务中的样本的梯度向量。
9.根据权利要求8所述的一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法,其特征在于,所述的步骤304B中,对当前更新的本地模型参数进行修改的优化问题为:
最小化
Figure FDA0003441646710000042
满足
Figure FDA0003441646710000043
对于所有k<t;
其中,
Figure FDA0003441646710000044
为目标投影梯度,g为当前更新的梯度,即本地数据集的梯度,gk为梯度记忆中存储的过去第k个训练任务中的过去样本的梯度,t-1为梯度记忆中存储的过去训练任务的数量。
10.根据权利要求9所述的一种基于梯度记忆的车联网联邦学习分层知识安全迁移方法,其特征在于,所述的步骤304C中,v为二次规划问题的最优解,二次规划问题的描述为:
最小化
Figure FDA0003441646710000045
满足v≥0;
其中,v为二次规划问题的自变量,g为本地数据集中的梯度,G=-(g1,...,gt-1)为梯度记忆中存储的过去t-1个训练任务中的样本的梯度向量。
CN202111633142.8A 2021-12-29 2021-12-29 基于梯度记忆的车联网联邦学习分层知识安全迁移方法 Pending CN114492833A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111633142.8A CN114492833A (zh) 2021-12-29 2021-12-29 基于梯度记忆的车联网联邦学习分层知识安全迁移方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111633142.8A CN114492833A (zh) 2021-12-29 2021-12-29 基于梯度记忆的车联网联邦学习分层知识安全迁移方法

Publications (1)

Publication Number Publication Date
CN114492833A true CN114492833A (zh) 2022-05-13

Family

ID=81495509

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111633142.8A Pending CN114492833A (zh) 2021-12-29 2021-12-29 基于梯度记忆的车联网联邦学习分层知识安全迁移方法

Country Status (1)

Country Link
CN (1) CN114492833A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114863499A (zh) * 2022-06-30 2022-08-05 广州脉泽科技有限公司 一种基于联邦学习的指静脉与掌静脉识别方法
CN114944914A (zh) * 2022-06-01 2022-08-26 电子科技大学 一种基于秘密共享的车联网数据安全共享与隐私保护方法
CN115081002A (zh) * 2022-06-28 2022-09-20 西安电子科技大学 用于去中心化联邦学习的聚合服务器选择方法
CN115496204A (zh) * 2022-10-09 2022-12-20 南京邮电大学 一种跨域异质场景下的面向联邦学习的评测方法及装置
CN115775026A (zh) * 2022-12-27 2023-03-10 重庆大学 一种基于组织相似度的联邦学习方法
CN116029367A (zh) * 2022-12-26 2023-04-28 东北林业大学 一种基于个性化联邦学习的故障诊断模型优化方法
CN116050548A (zh) * 2023-03-27 2023-05-02 深圳前海环融联易信息科技服务有限公司 一种联邦学习方法、装置及电子设备
CN116595384A (zh) * 2023-07-14 2023-08-15 支付宝(杭州)信息技术有限公司 模型训练方法及装置
CN117892805A (zh) * 2024-03-18 2024-04-16 清华大学 基于超网络和层级别协作图聚合的个性化联邦学习方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114944914A (zh) * 2022-06-01 2022-08-26 电子科技大学 一种基于秘密共享的车联网数据安全共享与隐私保护方法
CN115081002A (zh) * 2022-06-28 2022-09-20 西安电子科技大学 用于去中心化联邦学习的聚合服务器选择方法
CN115081002B (zh) * 2022-06-28 2024-05-14 西安电子科技大学 用于去中心化联邦学习的聚合服务器选择方法
CN114863499B (zh) * 2022-06-30 2022-12-13 广州脉泽科技有限公司 一种基于联邦学习的指静脉与掌静脉识别方法
CN114863499A (zh) * 2022-06-30 2022-08-05 广州脉泽科技有限公司 一种基于联邦学习的指静脉与掌静脉识别方法
CN115496204B (zh) * 2022-10-09 2024-02-02 南京邮电大学 一种跨域异质场景下的面向联邦学习的评测方法及装置
CN115496204A (zh) * 2022-10-09 2022-12-20 南京邮电大学 一种跨域异质场景下的面向联邦学习的评测方法及装置
CN116029367A (zh) * 2022-12-26 2023-04-28 东北林业大学 一种基于个性化联邦学习的故障诊断模型优化方法
CN115775026A (zh) * 2022-12-27 2023-03-10 重庆大学 一种基于组织相似度的联邦学习方法
CN116050548A (zh) * 2023-03-27 2023-05-02 深圳前海环融联易信息科技服务有限公司 一种联邦学习方法、装置及电子设备
CN116595384A (zh) * 2023-07-14 2023-08-15 支付宝(杭州)信息技术有限公司 模型训练方法及装置
CN116595384B (zh) * 2023-07-14 2023-11-24 支付宝(杭州)信息技术有限公司 模型训练方法及装置
CN117892805A (zh) * 2024-03-18 2024-04-16 清华大学 基于超网络和层级别协作图聚合的个性化联邦学习方法
CN117892805B (zh) * 2024-03-18 2024-05-28 清华大学 基于超网络和层级别协作图聚合的个性化联邦学习方法

Similar Documents

Publication Publication Date Title
CN114492833A (zh) 基于梯度记忆的车联网联邦学习分层知识安全迁移方法
CN109508812B (zh) 一种基于深度记忆网络的航空器航迹预测方法
Chen et al. Mngnas: distilling adaptive combination of multiple searched networks for one-shot neural architecture search
CN116416508A (zh) 一种加快全局联邦学习模型收敛的方法及联邦学习系统
CN113033970B (zh) 一种针对大规模任务的auv集群分层分配方法
CN105302858B (zh) 一种分布式数据库系统的跨节点查询优化方法及系统
CN111553469A (zh) 一种无线传感器网络数据融合方法、装置和存储介质
CN102902772A (zh) 一种基于多目标优化的Web社区发现方法
CN117523291A (zh) 基于联邦知识蒸馏和集成学习的图像分类方法
CN115755954B (zh) 巡检路径规划方法、系统、计算机设备及存储介质
CN114692310A (zh) 一种基于Dueling DQN的虚实融合一二级分离模型参数优化方法
CN115268493A (zh) 基于双层强化学习的大规模多无人机任务调度方法
CN113708969A (zh) 一种基于深度强化学习的云数据中心虚拟网络的协同嵌入方法
CN115238905A (zh) 敏感场景下可提升系统公平性的横向联邦学习训练方法
Huang et al. Ponas: Progressive one-shot neural architecture search for very efficient deployment
CN116645130A (zh) 基于联邦学习与gru结合的汽车订单需求量预测方法
CN117707795B (zh) 基于图的模型划分的边端协同推理方法及系统
Wu et al. Fedle: Federated learning client selection with lifespan extension for edge iot networks
CN117519244B (zh) 无人机集群协同探测多目标的路径规划方法及系统
CN114022731A (zh) 基于drl的联邦学习节点选择方法
Zhang et al. Federated multi-task learning with non-stationary heterogeneous data
CN116400963A (zh) 一种基于负载均衡的模型自动并行方法、设备及存储介质
Yu et al. Dynamic reproductive ant colony algorithm based on piecewise clustering
CN115952824A (zh) 一种航空制造设备大数据故障诊断方法
CN116010832A (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