基于联邦学习的交通流量预测系统设计与实现(LW+源码+讲解+部署)
交通流量预测模型虽然在实验当中取得了较好的效果,然而“数据孤岛”、隐私保护、通信开销等问题使得这些技术难以落地应用。现有的基于联邦学习的交通流量预测系统应用场景有限,仍存在以下几个问题:目前模型的预测精度难以满足实际应用;虽然使用了联邦学习,但仍然可以通过模型参数反推原始数据;随着通信次数增加,客户端和服务器之间通信开销增大,在通信资源有限的情况下,容易出现传输数据丢失。为解决这些问题,本文提出了
摘 要
交通流量预测模型虽然在实验当中取得了较好的效果,然而“数据孤岛”、隐私保护、通信开销等问题使得这些技术难以落地应用。现有的基于联邦学习的交通流量预测系统应用场景有限,仍存在以下几个问题:目前模型的预测精度难以满足实际应用;虽然使用了联邦学习,但仍然可以通过模型参数反推原始数据;随着通信次数增加,客户端和服务器之间通信开销增大,在通信资源有限的情况下,容易出现传输数据丢失。为解决这些问题,本文提出了一种基于联邦学习的时空图卷积网络交通流量预测框架。将STGCN作为流量预测模型,在实验当中MAE、RMSE和MAPE等指标较传统模型(如GRU)分别降低了44.5%、39.8%和44.5%,用FedProx算法代替传统的FedAvg算法,模型不仅收敛速度加快,MAE也较于FedAvg算法降低28%,在隐私保护上,结合中心化差分隐私与高斯噪声机制,提出了DP-FedProx算法,通过梯度裁剪和噪声注入,在保证模型性能的同时满足差分隐私要求,在通信优化方面,通过改变客户端选择率和本地迭代轮次对通信开销进行优化,以应对通信资源充足或者受限两种不同的情况。该框架解决了交通流量预测领域目前存在的几个问题,对交通流量预测技术的落地应用有很大的现实意义。
关键词:交通流量预测;联邦学习;时空图卷积网络;差分隐私
目 录
一、研究背景与现状
随着我国经济社会快速发展,居民的购车需求激增,城市道路承载能力不足以及信号灯调度不够及时,难以支撑越来越大的交通流量,交通拥堵问题日益严重,智能交通系统成为提升交通效率、缓解交通拥堵的关键技术。其中,交通流量预测是智能交通系统的核心功能之一,其通过构建预测模型,分析历史数据,为导航路线规划、交通信号灯调度等提供方案支持。
早期的交通流量预测是基于传统统计学模型,如ARIMA,此类方法通过差分处理,将非平稳序列平稳化,但其模型依赖固定结构,难以捕捉交通流量的非线性特征,对复杂流量数据预测效果较差[1]。随着机器学习兴起,支持向量机(SVM)、K近邻(KNN)等方法被应用到交通流量预测领域,文献[2]验证了SVM在非线性交通预测中的优势,泛化能力更强,但此类方法依赖人工特征工程,难以处理高维时空数据。近年来,深度学习方法占据主流,循环神经网络及其变种成为预测交通流量的主要模型,比如文献[3]分别使用GRU和LSTM神经网络对交通流量数据进行预测,尽管RNN取得了比较好的预测效果,但其缺乏对空间特征上的提取。目前的研究重点主要是时空特征联合建模,CNN+LSTM模型通过卷积神经网络提取相邻路口的空间关联性,LSTM捕捉时间依赖,模型预测精度较传统模型有所提高[4],然而,城市路网本质是图结构数据,常用的CN N难以有效地表达非规则的拓扑关系。Thomas N. Kipf等在2016年提出图卷积网络GCN[5]后,STGCN[6]首次将谱图卷积与门控时序卷积结合,预测效果在PeMS数据集上较传统LSTM模型表现更好,其核心在于通过邻接矩阵编码路网空间拓扑关系,避免了CNN对网格化数据的依赖。MCSTGCN[7]在STGCN的基础上结合近期、日周期和周周期特性使得预测精度进一步加强。融合静态(POI、路网)和动态(天气、实时车流)知识图谱的STMGCN-SDKG[8],通过关系演化图卷积实现知识嵌入,将影响交通流量的其他因素引入了交通流量预测。
然而,现实并非理想情况,尽管上述集中式深度模型在实验当中表现优异,但在技术实际落地的过程中存在以下几个问题:“数据孤岛”问题,交通数据分散在不同地域或者不同分管机构,由于数据主权与安全等因素,跨机构或跨区域的数据共享率极低,导致训练数据难以集中;隐私安全风险问题,传输数据过程当中或集中存储数据时可能存在信息泄露等安全隐患;高通信成本问题,传统预测方法需要将原始数据集中并训练,大规模数据集中传输和训练的通信成本与时间开销不低,并且在网络不稳定或带宽受限时,模型训练过程易受到影响。
针对以上问题,Google团队率先提出联邦学习框架并设计联邦平均算法FedAvg[9],通过本地多轮梯度下降与模型参数平均化,显著减少通信开销,在部分非独立同分布和不平衡数据场景下表现较好。对于高通信成本问题的解决方案,文献[10]通过深度梯度压缩DGC减少传输数据量,提高了传输效率;在安全风险问题上,BlockFL[11]结合区块链技术实现去中心化模型更新验证,文献[12]提出客户端级差分隐私框架,通过添加噪声保护用户信息,SecureBoost[13]利用同态加密实现纵向联邦的隐私保护,但计算开销较大。
目前,联邦学习主要应用在图像分类当中,在交通流量预测领域的应用较少,文献[14]将GRU与联邦学习结合并引入本地差分隐私,得到了基于客户端的DP-GRU算法,该算法有以下不足:仅仅使用RNN进行时间维度上的特征提取,模型的预测效果并不优于时空预测模型;仅在客户端执行差分隐私并没有在服务器上执行差分隐私,因此模型的安全性较差;仅使用FedAvg聚合算法,当客户端数量增大时,模型的预测效果较差。
基于上述综述与分析,本文将设计一个高效、隐私安全且适应性强的交通流量预测系统,系统将利用不同地区的交通流量数据,通过时空图卷积网络模型与改进的联邦优化算法,实现高精度预测,同时引入中心化差分隐私和不同通信策略,平衡模型性能、隐私保护与通信开销,为系统在数据受限环境下的落地应用提供可行方案。
第2章 交通流量预测模型设计
如何及时准确地预测交通流量对智能交通系统运作至关重要,传统的统计学模型并不能满足交通流量高度非线性特点,机器学习模型高度依赖人工特征工程,而常见的RNN只提取交通流量时序上的特征,并且有计算量大和误差逐步积累等缺点,因此本文将引入深度学习模型STGCN,通过空间和时间两个维度上的卷积来解决交通流量高度非线性和高复杂性等问题。
2.1 STGCN模型
2.1.1 符号说明
为了方便理解,下面将对STGCN所用到的相关符号进行说明,如表2.1所示。
表2.1 符号说明

2.1.2 网络结构
如图2.1所示,STGCN由两个时空卷积块和一个全连接输出层构成,而每个时空卷积块又由两个门控卷积层夹一个空间图卷积层构成。
其中,门控卷积层提取交通路网的时序特征,空间图卷积层提取交通路网中各结点间的空间特征,最终融合时空特征对交通流量进行预测。门控卷积层输出通道数为64,空间图卷积层输出通道数为16。

图2.1 网络结构
2.1.3 空域卷积
在图卷积网络GCN出现之前,研究者常常使用CNN来提取路网的空间特征,但CNN主要用于处理欧几里得结构数据,比如图片、视频等规则的数据。但交通路网属于非欧几里得结构,在GCN尚未被提出前,解决方法通常是将交通路网重新排列成网格的形式,然后将网格分割成多个相同大小的小网格,对每个网格进行二维卷积操作,以上操作只能提取交通路网的局部空间特征,忽略了交通路网的全局特征。而GCN能够把交通路网这种网络拓扑结构完整地表示出来,因此,使用GCN处理非欧几里得结构数据可以明显地提高模型的预测效果。
(1) GCN
GCN借助了谱图的理论[15]来实现非欧几里得结构数据上的卷积操作,即使用图傅里叶变换在频谱域上进行操作。


公式2.1描述了谱图卷积的核心思想:通过图傅里叶变换将图信号转换到谱域,应用滤波器后逆变换回空间域。结合公式2.1以及公式22可得,当输入图的邻接矩阵时,通过对那进行列(行)相加计算度矩阵D,得到对称归一化的拉普拉斯矩阵工,再通过特征分解得到U、U"以及人,而x也是已知的,最终目的是将(A)作为参数进行学习。但计算的时间复杂度为 O(n2),当输入的图较大时,计算时间开销较大,不利于预测的实时性。为了解决这个问题,研究者引入切比雪夫近似来减少参数量,从而缩短计算所需时间。
(2)切比雪夫近似
切比雪夫近似通过多项式展开替代显式的特征分解以显著降低计算成本,切比雪夫多项式定义在区间[-1,1]上的递推公式为:

多项式在逼近复杂函数时有稳定性强、误差均匀分布的优点。切比雪夫近似通过多项式展开逼近
得到:


其中
是多项式系数而
是图卷积的核大小,公式2.4是为了将特征值映射到
区间,这样才能满足切比雪夫近似的条件。通过推导后,图卷积公式可转化为切比雪夫图卷积公式:

以
=3为例,

可以看到,参数数量减少到了3个,相比与原来的图卷积,切比雪夫图卷积的计算时间复杂度显著降低,满足交通流量预测实时性的要求。
2.1.4 时域卷积
尽管RNN在时序预测领域内应用广泛,但RNN由于迭代时间长的问题并不能满足交通流量预测中对时效性的要求,并且随着迭代次数增加,可能会出现误差累积的现象,因此STGCN采用了在时间轴上的卷积结构来替代RNN提取交通流量的时序特征。
如图2.2所示,门控卷积层包含一个宽度为
的1-D因果卷积,独立处理每个节点的时序特征,还包含一个门控线性单元增强以非线性表达能力。输入数据会进行二维卷积(用二维卷积代替一维卷积),卷积后的数据一半将与输入数据进行残差连接,另一半将通过Sigmoid激活函数,最后两部分再进行哈达玛积。

图2.2 门控卷积层
公式2.7是时序门控卷积的理论部分,门控卷积可以定义为:

其中P、Q具有相同的结构,P是残差连接的部分,Q是通过Sigmoid函数的部分。Sigmoid门的作用是动态调节信息流动,增强模型对关键特征的筛选能力,并且Sigmoid本身也是非线性函数,这也使得其能够提取非线性特征,而残差连接又避免了在网络较深的情况下出现梯度消失或梯度爆炸。
2.2 模型评估
为了进一步证明STGCN在交通流量预测任务中的优势,下面将其与几个传统基线模型在PeMSD7-m数据集上进行多指标对比,通过历史60分钟(12个时间步)预测15分钟(3个时间步)、30分钟(6个时间步)、45分钟(9个时间步),以此评估STGCN的交通流量预测性能,该数据集将在后续章节详细介绍。
2.2.1 评价指标
下面是几个常用的模型评价指标:
(1) 平均绝对误差MAE

(2) 平均绝对百分比误差MAPE

(3) 均方根误差RMSE

其中,n为样本数量,
为实际值,
为预测值。
2.2.2 与基线对比
将模型与传统统计学模型与传统时序预测模型进行对比,其中*代表数据直接从文献当中获取,非*数据由本论文实验获得。
表2.2 不同模型的性能对比(15 /30 /45 min)
|
Model |
MAE |
MAPE (%) |
RMSE |
|
ARIMA* |
5.55 / 5.86 / 6.27 |
12.92 / 13.94 / 15.20 |
9.00 / 9.13 / 9.38 |
|
GRU |
4.07 / 4.35 / 4.43 |
7.01 / 7.49 / 7.63 |
6.73 / 7.33 /7.40 |
|
LSTM |
4.05 / 4.38 / 4.71 |
6.98 / 7.54 / 8.10 |
6.85 / 7.53 / 8.08 |
|
STGCN |
2.26 / 2.98 / 3.46 |
3.89 / 5.14 / 5.96 |
4.05 / 5.43 / 6.25 |

图2.3 不同模型在结点0的预测结果
表2.2中展示了不同模型15分钟、30分钟、45分钟的预测能力指标,STGCN都明显优于其余模型,比如在15min的预测任务上MAE、RMSE和MAPE指标比GRU分别降低了44.5%、39.8%和44.5%,通过图2.3可知,STGCN对交通流量的预测比其他模型准确得多,很多细节部分都学习到了,这得益于模型对数据的空间特征、时序特征联合提取。
联邦学习框架设计
传统的交通流量预测往往将交通流量数据上传到高算力的云服务器上集中训练,在传输过程中不仅花费大量时间还可能会发生敏感信息的泄露,其次“数据孤岛”问题也会导致在训练模型时无法有效利用各地采集的流量数据,模型不能完全提取数据的空间特征,一定程度上限制了模型的性能提升。如何做到既能保护敏感数据不被泄露,又可以完整地获取各地的交通流量信息呢?联邦学习应运而生。
3.1 联邦学习
3.1.1 符号说明
为了方便理解,下面将对联邦学习所用到的相关符号进行说明,如表3.1所示。

3.1.2 总体架构
图3.1为联邦学习架构图,从图中可以看到联邦学习的训练步骤:首先中心服务器随机初始化全局模型参数并传递给各客户端,收到参数的客户端结合自身采集的数据进行本地训练,接着把训练后的参数上传到中心服务器,中心服务器接收各个客户端的参数后再进行加权聚合操作,得到全局模型,服务器客户端之间每通信一次模型就更新一次,经过多轮通信后完成模型的训练。

图3.1 联邦学习架构图
(1) 中心服务器
中心服务器是联邦学习的“大脑”,它负责维护全局模型、参数聚合以及任务调度,一旦中心服务器崩溃,整个联邦学习任务就会终止,所以中心服务器常常为高稳定性的服务器。服务器收到各客户端的参数以后,通过加权将收集到的参数聚合,权重通常基于客户端的数据量。在环境不稳定时,中心服务器还可以随机挑选客户端进行训练,动态选择高质量数据、高算力的客户端参与训练。
(2) 客户端
客户端是联邦学习的“执行者”也是数据的拥有者,负责在本地数据上训练模型并上传更新至服务器,不需要各客户端间进行数据交换。当某一客户端崩溃时,可以通过中心服务器的任务调度使得整个联邦学习任务不被中断,直到该客户端恢复后,继续参与到任务当中。客户端常常会出现计算资源受限和数据异构等问题,因此,分配客户端数量以及对数据进行分区的操作显得尤为重要。
- FedAvg[9]算法
FedAvg是联邦学习中最经典且广泛应用的算法,它的核心思想是客户端本地训练和服务器加权平均的迭代过程,在保护数据隐私的前提下实现全局模型的联合优化。算法伪代码如下:

FedAvg算法运行前需要在服务器端设置通信轮次、本地迭代次数以及客户端选择率等,当联邦学习开始时,服务器端将随机初始化参数并进入通信阶段(行①),在每轮通信过程中,服务器会根据客户端选择率随机挑选指定数量的客户端(行③~④),发送全局参数以及训练指令(行⑥),每个客户端收到信息并且收到指令的客户端数量达到设置要求后,会同时进行本地训练,对于每个被选中的客户端
,其本地训练过程如下:
从服务器接收全局模型参数
,并初始化本地模型:

客户端将本地数据集划分为多个批次,并执行E个epoch的随机梯度下降。第i个epoch中遍历所有批次,对于每个批次更新本地参数:

经过E个epoch后,本地模型的最终参数为:

客户端完成训练后,将训练后的参数上传至服务器,当上传数据的客户端数量达到聚合参与客户端数时,服务器执行聚合操作,过程如下:
服务器收集所有被选中客户端
的本地参数
,并且按照数据量加权平均更新全局模型参数:

通过以上过程循环迭代参数,直到满足通信轮次后结束算法。
3.2 框架优化
随着现实中的数据变得越来越复杂,经典的联邦学习难以满足人们的需求,因此需要对联邦学习框架进行优化,以下有几个问题待解决:
数据异构性问题(Non-IID),数据异构性指的是不同客户端本地数据的分布存在明显差异,这种差异性可能会出现全局模型性能下降、收敛速度变慢甚至无法收敛等情况。Non-IID即数据非独立同分布,不同客户端数据的特征分布不同,比如交通流量在不同地方不同时段的特征不同,由于训练本地模型的方向不一致,收敛速度变慢,则需要更多的通信轮次才能收敛,无形当中增加了带宽和时间成本。
隐私安全保护不足的问题,尽管联邦学习通过“数据不动模型动”的机制在一定程度上保护了隐私安全,但实际应用中仍然可能出现隐私泄露风险。攻击者可以通过分析客户端上传的梯度,逆向推导出原始训练数据,还可以判断特定样本是否参与了联邦训练。
通信开销问题,通信开销指的是客户端与服务器之间传输模型所产生的数据量、时间以及能耗等成本。单轮通信量过大、总通信轮次过多、同步训练等都是造成通信开销过大的因素。
这些挑战之间存在着复杂的相互作用关系:Non-IID数据分布会加剧模型参数不一致,因此必须增加通信频次和训练轮次来维持模型一致性,这不仅花费了大量通信计算资源又放大了隐私泄露的风险,形成了"数据差异-通信开销-隐私风险"的恶性循环。
3.2.1 FedProx算法
传统FedAvg算法在Non-IID数据下会出现收敛过慢甚至不能收敛等问题,其核心问题在于,随着通信次数增大,局部模型与全局模型偏离程度会越来越大。
FedProx[16]是针对数据异构性问题而提出的算法,通过引入近端正则化项来约束本地模型更新的方向,以解决FedAvg在Non-IID数据下出现的性能下降问题。
对于客户端k,其本地训练损失函数为:

表示正则化系数,其作用是控制本地模型与全局模型的偏离程度,当
越大,局部模型就越接近全局模型,当
,则FedProx算法退化为FedAvg算法。
表示本地模型参数
与全局模型参数
的欧几里得距离。
对于服务器端,与 FedAvg 相同,服务器按客户端数据量加权平均本地模型。
相比于FedAvg算法,FedProx算法引入了超参数
,调节
使得模型训练效果提升的方法将在后续实验当中介绍。

3.2.2 差分隐私
在联邦学习当中,常见的安全机制包括差分隐私、安全多方计算、同态加密等,应用何种安全机制取决于联邦学习任务的保密级别。交通流量预测任务对实时性要求较高,使用安全多方计算、同态加密等方法需要花费大量时间在加密解密操作上,并且密文的运算效率低难以支持深度模型。交通流量数据本身并不是特别敏感,敏感的是提供数据的客户端具体位置。例如,攻击者可以通过判断某客户端是否参与了联邦学习任务,从而判断某地的交通动向,因此差分隐私的引入有很大的意义。
差分隐私引入一种随机机制,当输入中的单个样本改变后,输出的分布不会有太大的改变,即使用户获取了输出结果,也无法通过结果来推测出输入数据来自哪一方。
根据差分隐私对数据处理的阶段不同,可以把差分隐私分为中心化差分隐私和本地化差分隐私。本地化差分隐私在客户端的每一次epoch当中独立添加噪声,随着epoch次数增大噪声量会比较大,噪声无法分摊给所有客户端,而交通流量预测对噪声的要求不能太大,太大反而会导致模型出现难以收敛甚至不收敛的情况。本文采用中心化差分隐私,中心服务器需要作为一个可信第三方,在参数聚合后添加噪声,下面介绍中心化隐私的
差分隐私定义:
对于所有相邻数据集D和D,一个随机算法M,以及所有可能的输出子集称随机算法M 提供(ε,5)-差分隐私保护,当且仅当其满足:SERange(M),

其中,ε表示隐私预算,δ表示失败概率,通常设置为极小的值。ε用于控制算法M 在相邻数据集D和 D'上获得相同输出的概率比值,值越小获得相同输出的概率越接近,隐私保护越强,因此根据输出无法分辨数据来自哪一个数据集。
想要知道需要添加多少噪声才能提供隐私保护,就需要定义数据的全局敏感度下面介绍
全局敏感度的定义

采用欧几里得距离来衡量函数在相邻数据集上的输出变化,当全局敏感度比较大时,说明数据集的细微变化可能会导致输出有很大不同,只有添加较大的噪声数据才能起到隐私保护的作用。
添加噪声是实现差分隐私的核心,中心化差分隐私采用的扰动机制包括高斯机制、拉普拉斯机制和指数机制,其中高斯机制和拉普拉斯机制适用于数值型数据,而拉普拉斯机制适用于低维数据且对异常值敏感不适用于交通流量时序预测,因此本文采用高斯机制。
高斯机制通常用于
-差分隐私,在这种机制下添加的噪声服从高斯分布,定义如下:
对于一个确定函数
和全局敏感度
,若随机算法
满足


则称随机算法M 满足(ε,δ)-差分隐私,其中N (0,σ”)表示均值为 0,方差为σ’的高斯分布,如何设置合理的噪声将在后续实验当中介绍。
根据上述差分隐私保护方法提出基于FedProx算法的差分隐私 DP-FedProx 算法伪代码如下:

算法具体流程如下:
(行①)首先随机初始化全局参数,(行③~④)根据客户端选择率随机挑选m个客户端,(行⑥)将全局参数传入每个客户端,(行⑪)根据批次大小将本地数据集分割成B,(行⑬~⑯)每一步本地迭代更新后都要对梯度进行裁剪,(行⑰)本地训练完成后客户端将返回参数的变化部分
,并非FedProx算法那样传送完整的参数,(行⑦)服务器收到所有客户端参数变化量以后对参数进行聚合,(行⑧)对
值进行裁剪,(行⑨)求高斯噪声分布的标准差
,(行⑩)利用高斯分布在全局模型聚合操作中添加噪声数据,得到新的全局参数。T轮循环后,服务器得到最后的全局参数
(T轮通信)。
联邦学习架构图可修改为:

图3.2 差分隐私联邦学习架构图
3.2.3 通信优化
由于交通流量预测所用的模型为深度学习模型,其参数量庞大,导致在每一轮联邦学习的通信过程中,客户端与服务器之间需要传输大量的模型参数数据,从而带来显著的通信负担,并且在实际部署环境中,客户端和服务器间通信不稳定,通信资源往往并不充足,网络带宽可能受限,甚至存在网络延迟和数据丢包等问题,全局模型的性能可能会受到影响。所以对联邦学习的通信进行优化是十分有必要的。
本文提出了多种通信优化策略,以适应不同的网络条件和系统资源情况。首先可以通过多轮本地训练以此减少通信轮次,在通信资源充足时适量减少本地训练次数,增加通信轮次,在通信资源受限时,增加本地训练次数,减少通信轮次,但需要平衡本地训练次数和通信轮次对全局的收敛速度的影响;还可以通过让部分客户端参与训练,减少训练时间的同时,减少传输流量数据的总量。实现通信优化方法将在后续实验部分详细介绍。
4.1 数据集
4.1.1 PeMSD7
加州交通部绩效测量系统(PEMS)使用超过39,000个独立检测器实时采集交通数据,这些传感器站覆盖了加利福尼亚州所有主要都会区的高速公路系统。在加州第7区中,随机选取了一个中等规模的子集,包含228个传感器站点,标记为PeMSD7。
PeMSD7包含两部分,一部分是交通流量数据,另一部分是传感器的位置以及传感器之间的距离。
4.1.2 数据预处理与分区
对于交通流量数据,标准时间间隔设置为5分钟,因此,在交通路网中每个结点每天包含288个数据点。在数据清洗后,采用线性插值法填充缺失值。
对于图的邻接矩阵,基于交通路网中站点之间的距离计算而来,加权邻接矩阵
的定义如下:

其中 dst(u,v)表示结点u和结点v之间的欧几里得距离,σ表示标准差,σ越大,权重下降越缓慢,飞控制着邻域范围,超过阈值飞的边会被截断。需要注意的是,结点到自身的距离为0,因此邻接矩阵的对角线全为1,并且该矩阵关于对角线对称,以表示无向图,符合图卷积条件。
处理完成后的邻接矩阵热力图如下:

图4.1 邻接矩阵
热力图
可以发现热力图中包含许多区块,后续实验将连续结点数据划分到一个客户端当中,由于中心服务器和客户端采用的邻接矩阵大小一致,客户端的数据将使用掩码来保留自身数据,屏蔽掉其余客户端的数据。
4.2 实验设置
所有实验将在Linux服务器上运行(CPU:16 vCPU Intel(R) Xeon(R) Platinum 8481C ,GPU:RTX 4090D(24GB)),历史时间窗口设置为60分钟(12步),预测未来15分钟(3步),切比雪夫多项式系数
设置为3,门控卷积核的大小设置为(3,1)。
4.3 结果分析与讨论
4.3.1 集中式训练和联邦学习训练
集中式训练和联邦学习训练模型的区别就是数据以及模型训练的位置,集中式训练集中在高性能云服务器上,而联邦学习训练分散在各个客户端上,为了探究集中式和联邦学习训练出的模型性能区别,本实验将对比集中式训练和联邦学习训练的模型性能,其中联邦学习采用FedAvg算法,并且设置不同的客户端数量(2-5),客户端平均划分228个结点,本地迭代次数
为3,通信次数
为100,集中式训练轮次为100,实验结果如下:

图4.2 集中式训练与FedAvg对比
图4.2对比了集中式训练和基于FedAvg算法的联邦学习的MAE曲线,可以发现当客户端数目为2、3的时候,联邦学习和集中式训练曲线都随着通信次数(集中式训练迭代100次)的增加逐渐收敛,并且客户端数量越多全局模型性能下降越快。
当客户端数目增大到4、5时,模型出现了不收敛的情况,原因可能是,随着客户端数量的增加,每一个客户端的数据变得更加非独立同分布,不同客户端的数据可能覆盖不同的流量特征。在FedAvg算法中,客户端本地模型的更新方向差异增大,聚合后的全局模型参数可能因为梯度方向冲突而震荡,导致无法收敛;还有一种可能是,随着客户端数量的增加,而整体训练数据不变,每个客户端分到的数据量变少,经过客户端多次迭代导致本地模型过拟合,最终经过加权平均聚合后的全局模型不能收敛。因此需要一个方法让本地模型和全局模型之间建立联系,不能让本地模型偏离全局模型太远。
4.3.2 FedProx超参数设置
在FedProx算法中,超参数
的作用是控制近端向的强度,用于约束本地模型更新不要偏离全局模型太远,当
较大时,本地模型更新受全局模型的约束更强,适合高度异构的数据;当
较小时,本地更新更自由,适合数据分布相对均匀的场景。
通过实验4.3.1可以知道,当客户端数量增大时,客户端的数据呈现出非独立同分布情况,因此需要在本地模型和全局模型之间建立联系。本实验将对比FedProx算法在不同客户端以及不同超参数下的模型性能,本实验设置了静态和动态正则化系数,
其中静态正则化系数包括
动态正则化系数包括![]()
动态调整
的逻辑为:

其中H为FedProx中本地化训练的损失函数。当本轮训练的损失函数值低于上一轮,那么正则化系数降低,反之,正则化系数增加,核心逻辑在于当在训练初期,由于各客户端模型较为分散,可以设置较大的正则化系数来促使局部模型趋于全局模型;随着通信次数增大,适当减弱正则化项,使每个客户端有更多自由进行个性化优化。
图4.3 不同
设置下的FedProx算法
可以从图4.3中看出,当客户端数量为2、3时,不同参数下的模型基本能做到收敛,但是客户端为4、5时,随着通信轮次增加,FedAvg以及
的曲线呈现先下降再上升的情况,最后也不能完全收敛,这是因为的值过小导致全局模型和局部模型之间联系不够紧密,最后导致局部模型过拟合,全局模型不收敛的情况。当客户端数量增大时,
越大模型更有可能收敛,但是实际应用当中客户端的数量会发生变化,根据客户端数量手动设
的值是不合理的,因此我们需要动态设置
。
对比动态正则化系数μ=(0.01-0.1)以及μ=(0.1-0.5)可以发现,当客户端数量较少时,经过两种参数训练出来的模型都收敛,且模型性能相当;但是当客户端数量增大时前者出现了不收敛的情况,而后者始终能保持收情况,并且模型性能基本是最好的。还出现了一个特别的现象,只有“=(0.1-0.5)的曲线在前期出现了巨大波动,原因可能是一开始“过大,每个客户端本地模型训练不充分,最后加权平均出来的全局模型性能较差,随着通信次数增加,模型训练变得充分,训练效果就越来越好。为了进一步了解 FedAvg 和 FedProx 两种算法下全局模型和本地模型的差异,下面将对比两种算法下完成训练的模型性能,实验设置为:客户端数量为 3,FedProx 算法的μ=(0.1-0.5),本地迭代次数E为 3,通信次数T为 100。实验结果如下:
表4.1 FedAvg和FedProx算法下模型的性能对比
|
Model |
FedAvg |
FedProx |
||||
|
MAE |
WMAPE (%) |
RMSE |
MAE |
WMAPE (%) |
RMSE |
|
|
Client1 |
3.11/1.13% |
5.36/1.19% |
5.13/0.34% |
2.74/1.41% |
4.72/1.41% |
4.71/0.74% |
|
Client2 |
3.31/5.00% |
5.70/5.00% |
5.36/4.89% |
2.85/2.48% |
4.91/2.48% |
4.81/1.37% |
|
Client3 |
3.33/5.00% |
5.73/5.48% |
5.18/1.35% |
2.81/1.03% |
4.84/1.03% |
4.78/0.71% |
|
Server |
3.15/0% |
5.43/0% |
5.11/0% |
2.78/0% |
4.79/0% |
4.75/0% |
表4.1展示了两种算法下本地模型和全局模型的性能,其中第二个指标为本地模型与全局模型之间差距的百分比。
可以看到,FedAvg算法下客户端训练的本地模型与全局模型差异较大,Client1训练出的模型与全局模型只差1.13%,但是其余客户端却差了5%;而FedProx算法下的本地模型与全局模型的差异小一些。并且FedProx算法下训练出的模型MAE均低于FedAvg算法,以上结果显示出正则化项可以使本地模型不会偏离全局模型太远还可以提高模型的预测效果。
4.3.3 不同本地迭代次数
下的联邦学习
本实验将对比不同本地选代次数E下联邦学习的全局模型性能,实验参数设置为:通信次数T为 100,μ=(0.1-0.5),客户端数量n为 5,实验结果如下:

图4.4 不同
设置下的FedProx算法
从图 4.4 可以发现,不管E设置多少并不会影响模型的收敛。当E等于1的时候MAE 曲线在初期并没有E等于2、3的曲线高,在30步以前,MAE曲线下降得也没有其余曲线快;但在 30步以后,曲线下降和收敛速度明显比其余曲线快,其至最终训练模型性能最好。当E等于2的时候,模型不仅收得比E等于3时更慢,模型最终的性能也不及此。
分析上述原因,应该是本地选代次数和全局模型性能之间相互制衡的原因。在集中式训练当中,随着选代次数的增大,模型的性能正常情况下是越来越好直到收敛;但是在联邦学习当中,虽然选代次数增大了,本地模型的性能增强了,但是本地模型只通过自身数据进行训练且数据为非独立同分布,训练次数增加可能会发生过拟合现象,接着在全局模型参数加权平均聚合时就会发生冲突,从而导致 MAE 曲线收敛变慢。E等于3时的曲线比E等于2时的曲线收敛快的原因可能是,本地模型多次选代带来模型性能的增益比过拟合带来的模型损失大,整体表现就好一些。
4.3.4 不同隐私强度
下的联邦学习
本实验将对比不同。 即不同隐私保护强度下联邦学习的全局模型的性能,实验参数设置为:本地选代次数E为 3,通信次数T为100,μ=(0.1-0.5),客户端数量n为5,梯度裁剪阈值C为1,δ=10-

图4.5 不同
设置下的联邦学习
从图4.4可以看出,
越小隐私保护越强,模型预测性能越差。当不进行差分隐私时模型随着通信次数
收敛;当
为2000时,做到了一定隐私保护且模型基本能够收敛;当
为1000、2000时,虽然隐私保护变强,但噪声添加过大,影响了模型的性能,基本做不到收敛。还可以发现,噪声添加越大,模型在前期性能提升得更快,可能是前期噪声增加了模型在优化空间的搜索范围,但是到了训练中后期,噪声反而破坏了真实梯度的方向信息,使参数更新在优化空间中随机游走,从而模型发生震荡现象。因此,在实际应用当中,可以根据具体的隐私要求,在隐私强度和模型性能上做权衡。
4.3.5 不同客户端选择率
下的通信开销
本实验将对比不同客户端选择率C下的通信开销以及模型性能。由于本实验是模拟联邦学习任务,因此客户端都是在同-Linux服务器上运行,这里的通信开销指的是模型参数大小,与实际应用中的通信开销有所不同。实验参数设置为:本地选代次数E为 3,通信次数T为 100,μ=(0.1-0.5),客户端数量n为 5。

图4.6 不同
设置下的通信开销
从图 4.5 可以看出,当C等于 20%时全局模型 MAE 达到 3.4 时所需的通信开销低于 50MB,但是不管如何训练,全局模型的 MAE 始终低于不了 3.4;当C等于 40%和60%时,虽然全局模型的 MAE 可以到 3.2,但是 MAE 从3.4到 3.2所用的通信开销却比 4.0到 3.4所花费的开销还要大;更特别的是,当C等于 80%时的通信开销甚至比所有客户端都参与训练的开销都要高。
通信开销的构成包括挑选率、训练轮数以及单次传输规模。低挑选率可以降低每轮的总通信开销,适合资源受限场景,但模型收敛变慢,可能会因为每次训练的数据量变少导致性能下降;高挑选率可以让更多数据参与训练,提升模型收敛速度和性能但是每轮的总通信开销显著增加。当C等于80%时,每轮总通信开销的减少带来的优势远没有缺少部分数据导致模型性能下降的劣势大,需要更多的轮次才能达到目的模型性能。因此,在实际应用当中,需要综合计算资源、模型性能要求等因素,灵活选择客户端挑选率。
4.3.6 不同本地迭代次数
下的通信开销
本地迭代次数也影响着通信开销,通过实验4.3.3可知,不同的本地迭代次数会影响模型收敛时间,本地迭代次数越大,虽然短期模型训练的效果更好,但是随着时间的推移,本地模型和全局模型的冲突现象出现,导致模型收敛变慢,这种现象在非独立同分布数据上尤为明显。本实验将探究不同本地迭代次数下的通信开销和训练耗时,实验设置为:通信次数
为100,
,客户端数量n为5。

图4.7 不同
设置下的通信开销以及训练耗时
图 4.7 中,三种本地选代次数模型训练的通信开销差距不大,当E等于2的时候模型 MAE 不能降到 3.0,所以并不是E越高模型训练效果越好。达到相同 MAE 模型所训练耗时差异就变大了,MAE在38之前,E等于2的用时比其余两种情况都好但随着训练继续,E等于2、3的模型训练耗时远大于E等于1的模型,时间开销巨大当通信资源充足时,可以将E设置为较小的数值,这样可使模型快速训练完成所花费的通信开销和时间开销都较小;当通信资源受限时,可以将E值稍微设置大些,以时间换取通信的稳定性,在实际应用当中,可以对通信质量以及模型性能进行综合评估合理地将E设置为动态值。
第5章 总结与展望
为解决日益严重的交通拥堵问题,智能交通系统起到至关重要的作用,交通流量预测作为其核心功能面临“数据孤岛”隐私泄露和通信成本高昂等挑战。针对这些问题,本文提出了一种基于联邦学习的时空图卷积网络交通流量预测框架,通过分布式训练与隐私保护机制的结合,实现了在数据受限场景下的高效预测。
由于传统模型在时空特征提取上具有局限性,本文引入STGCN模型,通过GCN捕捉非欧几里得路网的空间拓扑特征,并结合门控时序卷积提取动态时间依赖,实验表明,在PeMSD7-m数据集上,STGCN在15min的预测任务上MAE、RMSE和MAPE指标较传统模型(如GRU)分别降低了44.5%、39.8%和44.5%,验证了时空联合建模的有效性。
为解决数据孤岛问题,本文设计了基于联邦学习的分布式训练框架。针对Non-IID数据分布导致的模型发散问题,引入FedProx算法,通过正则化项约束本地模型与全局模型的偏离。实验表明,当客户端数量增至5时,全局模型仍能收敛,且动态设置正则化系数
的模型MAE较于FedAvg算法降低28%,进一步优化了全局模型的稳定性。在隐私保护方面,结合中心化差分隐私与高斯噪声机制,提出了DP-FedProx算法,通过梯度裁剪和噪声注入,在保证模型性能的同时满足差分隐私要求,但需要在隐私保护和模型精度上做权衡。在通信优化方面,通过改变客户端选择率
和本地迭代轮次
对通信开销进行优化,实验表明,较小的客户端选择率可以有效减小通信开销,但是模型性能损耗较大;较大的客户端选择率反而会使通信开销增大。改变本地迭代次数对通信开销影响较小,但是对训练耗时影响较大,在通信资源受限时,可以适当增加本地迭代次数,用时间开销来换取通信上的稳定。
尽管本文在联邦交通流量预测领域取得了一定成果,但仍存在以下局限性:只使用了交通流量数据来预测交通流量,实际的交通流量受突发事件、道路施工等动态因素影响显著,未来可以引入其他影响交通流量的因素;STGCN的图卷积采用的是静态邻接矩阵图,因此不能有效应对路网的实时变化,并且每个客户端邻接矩阵结构固定,不能根据结点数量灵活形成对应大小的邻接矩阵;DP-FedProx算法采用固定隐私预算,这会导致长周期训练中噪声累积的问题,后续可研究自适应差分隐私框架,根据训练阶段动态调整隐私预算,在初期采用宽松预算加速收敛,在后期逐步收紧以增强隐私;
联邦学习交通流量预测是一个充满潜力的研究方向,随着隐私计算、深度学习模型和边缘计算等技术的进步,未来能构建更安全、高效、泛化的智能交通系统,为城市治理与公众出行提供坚实支撑。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐






所有评论(0)