段昕汝, 陈桂茸, 姬伟峰, 申秀雨
(空军工程大学信息与导航学院,西安,710077)
随着云计算、大数据、物联网、无人技术等为代表的现代信息技术在军事领域的广泛应用,未来战争呈现信息化、智能化、协同化发展趋势,联合作战成为打赢现代和未来战争的必然要求。在联合作战体系中,数据作为支撑高效指挥决策的战略资源,发挥着重要的底层支撑作用,数据妥善管理和高效利用成为推动作战能力整体跃迁和作战样式深度变革的重要动力。实现不同作战系统间的数据安全互联对进一步发挥数据资源在指挥决策中的支撑作用,实现高速计算、存储、检索的智能数据融合体系,构建大数据驱动的智能化模型,对加快推进智能化复杂网络信息系统建设、助力军事智能化发展具有重要意义。
由于前期系统建设的阶段性和独立性,以及战略目的的针对性,不同系统间隔离程度较高,数据孤岛成为军事数据建设的关键掣肘因素。军事数据的特殊战略性地位,使得大数据在军事领域的应用如同双刃剑,在加快国防军队现代化的同时也要充分考虑信息化过程中隐藏的信息泄露的风险[1-2]。
现有研究依托于“网-端-云”结构理论结合统一体系结构框架方法,对后勤与装备保障指挥信息系统进行建模,建立全域联通的信息网,然而这种大规模通信网络并不能满足对于安全需求较高的重要数据交互业务[3]。基于区块链的军事数据安全治理方法实现数据的安全共享,并对交互过程执行访问控制[4],然而在实现了高质量的数据安全同时也受到区块链技术特性的限制,对于大数据业务交互效率较低。文献[5]结合联邦学习技术在联合作战场景下的应用进行分析建模,通过联邦学习跨域安全互联方法帮助不同作战域进行信息整合,保障数据安全的前提下充分利用保存在各作战域的数据资源,进而安全可靠的实施作战任务协同,然而该方法尚未充分考虑数据结构、特征、分布的差异性。
本文基于联邦学习技术开展进一步研究,提出多源异构网络无数据融合方法,从交互媒介层面对传统方法进行改进,弱化其对于局部模型和全局模型间的同构需求,同时已无数据方式知识迁移,保持对模型结构的不完全可知,一定程度上遏制了系统中的不安全因素。
联邦学习(federated learning,FL)这一技术概念由Google公司首先提出并用于分布式语言模型的训练中以保护用户原始数据安全与隐私,在不共享原始数据的情况下通过模型梯度的周期性交互完成协同训练(见图1),利用FedAvg算法最小化全局目标函数优化模型(见式(1)),解决了大规模分布式训练网络中的数据交互需求和隐私问题,同时实现了计算资源和数据分散化[6]。
(1)
式中:n为参与训练的客户端总数;f(ω)为全局目标函数;fi(ω)=(xi,yi;ω)表示局部参数化模型的损失函数。
图1 移动终端上的联邦学习方法原理
为进一步适应不同系统和数据分布的异构性,Li等人改进的FedProx算法允许在不同的设备之间局部执行不同数量的工作,并在局部子问题上添加一个近端项以限制变量局部更新的影响[7]。如式(2)所示:
式中:ωi为第i个客户端的局部参数化模型;Fi(ωi)为对应的损失函数。
以上方法在模型更新上具有相似的原理,均采用了梯度平均的思想,通过聚合边缘节点上传的局部模型梯度实现全局模型的训练,此类方法要求各局部模型完全同构,一定程度上限制了模型对于本地数据的适应性。为解决联邦学习中跨设备数据集的非独立同分布(Non-IID)问题,Jeong等[8]首次提出了联邦蒸馏(federated distillation,FD)的思想,打破了基于更新梯度传统方法,以模型输出代替模型梯度进行交互。Seo等[9]设计了一种交换模型输出的分布式框架,从局部模型中提取logit输出向量的统计量,并以元数据形式进行共享,提取局部模型知识同时提高了模型的通信效率。
知识蒸馏(knowledge distillation,KD)可在神经网络模型之间传递知识[10-11]。区别于标准神经网络通过匹配样本的预测与真实标签进而优化模型参数,知识蒸馏利用转移集,通过匹配教师模型与学生模型的软间隔优化模型,将教师模型中的规律传递到学生模型上来改善模型性能。该方法不强调教师模型和学生模型之间同构,将其与联邦学习相结合可以在保障本地数据安全的同时满足多源网络的异构性[12-16]。
生成对抗网络(generative adversarial network,GAN)是一种基于零和博弈理论的生成式模型,该模型由2个同时训练的模型构成,即生成器G和鉴别器D,通过2个模型的动态博弈训练网络模型其达到纳什均衡,具体结构见图2。近年来这一技术不断进化,在数据增广、迁移学习等领域展现出了巨大的潜力,在军事领域具有广阔的应用前景[17]。
图2 条件生成对抗网络结构图
条件生成对抗网络(conditional generative adversarial network,CGAN)[18]在GAN基础上添加了条件标签y,其结构见图2。生成器使用噪声向量z和条件标签y合成一个伪样本x*,鉴别器接收带标签的真实样本(x,y)及带生成标签的伪样本(x*|y,y),利用真实样本-标签对训练鉴别器完成识别配对,同时利用伪样本-标签对学习识别伪样本并与真实样本区分开来,其目标函数为:
Ez~p(z)[log(1-D(G(z|y)))]
(3)
CGAN用于样本增强可以在不依赖先验假设的情况下实现数据复杂分布特征的学习,生成与原始数据分布相似的高质量样本,通过扩充数据集提升模型在现有样本上的识别率。Lee等[19]利用CGAN实现了虹膜图像数据增强,并使用这种增强方法提高了识别性能,缓解了神经网络训练中缺少标记样本的问题,解决了生物特征隐私问题。Souibgui等[20]针对文档退化导致的读取困难问题,提出了一种有效的文档增强生成对抗网络(DE-GAN),使用CGANs来恢复严重退化的文档图像,生成高质量的降级文档。Yang等[21]对于噪声鲁棒语音识别问题,利用CGAN实现音频数据增强,提高在噪声环境下的语音识别能力。Roheda等[22]提出使用CGAN从传感器数据中提取知识,并增强低分辨率的目标检测。
信息化战争制胜的关键在于能否及时有效地对海量作战数据进行整合,将信息优势转化为作战优势。在联合作战场景中,样本数据来源广泛、特征迥异且具有战略特殊性,整合时需要重点考虑以下问题:
1)系统安全性。在进行信息融合的过程中通常涉及多个作战域的信息交互,作战数据中可能包含关键战略信息,此类数据在使用时需全面考虑交互过程中存在的安全风险,在保证数据安全的情况下对数据资源进行合理、高效、充分的利用。
2)数据异构性。用于训练的各单位数据往往普遍存在异构性。首先,全局数据与局部数据分布存在差异,即Pk≠Pjoint,用户k的损失函数的期望可能不满足EPk[Fk(ω)]=f(ω),导致直接全局共享模型可能比单独训练私有数据的本地模型表现差;其次,各单位数据规模存在不平衡问题,基于数据安全设定,系统中的各单位不直接进行数据交互,可能导致收敛缓慢、全局模型飘移等问题。
3)目标差异性。针对不同的本地数据表示、不同的硬件能力、不同的任务,各作战域设计模型的目标和提取结构可能存在较大差异。其中服务器的目标是适合Pjoint(x,y)的广义模型,而客户端的目标是适合Pk(x,y)的个性化模型,可能存在更新对联合模型训练有害但对本地模型有益的情况,因此基于本地数据训练单一可用的模型对各单位具体情况缺乏适用性。
为了解决以上问题,本文深入分析了联邦学习系统框架及模型训练流程,并从以下2个维度加以改进:
1)联邦学习机制中的信息交互介质。现有方法大多基于模型梯度完成信息共享,通过数学运算完成对局部模型的聚合。本文通过加密共享本地服务器上训练的完整网络模型,同时限制聚合时对局部网络结构的可知性。
2)联邦学习的聚合方法。通过局部教师模型-全局模型的架构对局部模型知识进行提取,允许局部模型与全局模型之间的差异性,允许各单位针对性细化模型及训练算法,独立地训练个性化模型,并利用局部模型的集成知识丰富全局模型,缓解局部模型中由异构性引起的模型漂移,细化全局模型。
本文考虑了典型的联邦学习设置,即包括一个聚合服务器和N个持有本地数据集的私有域,这些本地数据集共享相同的特征空间且样本不重叠。在不进行数据互通前提下协同训练模型实现信息交互,基于联邦学习系统模型见图3。
图3 总体框架
具体来说,为了保证数据的安全性,在进行模型训练时通过设置一个私有特征提取器对原始数据进行特征提取,从而避免模型直接接触原始数据,保护源数据的隐私,进而保证了源数据在系统内的安全性。通过特征提取减少数据的维度,去除冗余信息,同时保留数据的重要特征,从而提高模型的精度和效率。其次,通过联合训练一个轻量级生成器,以无数据的方式集成用户信息,作为归纳偏差来调节局部数据并转移知识,以获得更好的收敛性能,缓解数据的异构性。最后利用知识蒸馏的方法进行模型聚合,将局部教师模型的知识转移到全局模型中,允许多个教师模型之间异构,即不同类型的模型可以参与知识蒸馏,从而实现在保证模型准确性的同时提高模型的效率和对局部目标的适用性。
D为所有数据样本的集合,X为数据集中所包含的特征集合,Y为样本X对应的标签集,Dk为本地客户端数据子集,其中k∈K,K为参与训练的客户端集合。X⊂d表示数据集D中的样本对应特征空间,Z⊂c表示潜在空间,其中c CGAN参数化模型(θG,θD),其中θG为生成器G(z,y)=x*|y,θD为判别器D(x*|y,x)。 在教师-学生架构中,ωk为教师模型,ω为学生模型,Dt为知识蒸馏转移集。 本算法通过训练CGAN网络提取关于数据分布的全局视图,向本地用户传达多方共识知识,指导局部模型的训练,并从给定的教师网络中生成图像,通过局部教师模型-全局模型的框架对各单位异构网络的知识进行迁移以训练全局模型。具体的算法如表1所示。 表1 联邦无数据蒸馏算法(FedND)流程 首先由中央服务器初始化并广播CGAN参数化模型,并由各客户端基于可用的本地数据训练CGAN网络使其达到纳什平衡。其目标函数: Ez~pk(z){log[1-D(G(z|y))]} (4) 中央服务器利用各单位学习到的生成器以聚合来自不同本地客户端的信息,计算全局最小化损失拟合局部模型使模型的损失降到最低。并通过训练生成网络,利用其潜在空间恢复一个诱导分布G*:Y→Z(见式(5)以缓解训练过程中的相关数据安全问题。 学习一个参数化条件生成器θG提取知识以优化以下目标: 式中:g(·)和σ(·)是logit输出和激活函数。给定任意的目标标签y,生成器可以产生特征z~G(·|y)。从用户模型的集合中诱导理想的预测,这与来自全局视图的用户数据是一致的。 局部设备利用生成器聚合知识识别出本地数据样本中缺少的目标标签,基于目标标签生成与全局数据分布相似的高质量样本,以实现样本增强直至满足IID特性,使全局数据分布Pjoint与局部数据分布Pk满足Pk=Pjoint(见图4)。 图4 数据增强 其次,通过局部教师模型-全局模型的框架,利用生成器生成转移集Dt蒸馏细化全局模型(见图5),最小化教师模型和学生模型softmax层对应输出向量的差距,具体计算方式如下: σ(g((G(x*|y),ω)))]} (7) (8) 图5 联邦无数据蒸馏聚合 与现有方法相比,本文方法具有以下优点: 1)将局部模型的训练从全局中解耦出来,以便根据局部目标调整训练算法与网络模型结构,允许多个数据源针对性训练局部模型; 2)利用教师-全局模型架构提取知识而不是直接对局部模型参数进项加权平均,允许对局部训练算法和模型结构保持一定的不可知性; 3)利用CGAN实现数据增强,提高模型训练效率和收敛速度,减小通信开销。 4)使用无数据融合的方法,用生成数据代替本地小批量样本作为转移集,保证了本地数据源的安全性。 实验选取了不同数据集用以验证方法的有效性,包含广泛用于机器学习任务研究和评估的MNIST、EMNIST、CELEBA数据集和真实FOQA数据集。其中,MNIST数据集包含了70 000个灰度图像样本,每个样本的维度为28像素×28像素,对应10类样本标签;EMNIST数据集是基于MNIST数据集扩展而来的一个数据集,包含大写字母、小写字母、数字和符号等6类样本;CELEBA数据集包含10 177个名人身份的202 599张图片样本,并且都做好了特征标记,每个图像都附带了40个不同的属性标签。FOQA数据集是NASA研究团队开源的真实数据集,包括99 837个不同航线的样本数据,对应4类标签,每个数据样本为160×20维。 实验基于中心化的系统架构开展,包括1个聚合服务器和20个边缘训练节点,将训练集和测试集分成20组分发至不同的模拟边缘训练节点,以还原实际应用场景中不同节点间数据相互隔离的设定。实验设置了200轮迭代,并对所有边缘节点使用相同的超参进行设置,批处理大小epochs为32,学习率η为0.01,优化器为Adam,蒸馏温度参数为10。 为了验证本方法的有效性及可用性,实验结合卷积神经网络将本文的FedND算法与FedAvg算法[6]、FedProx算法[7]、FedDistill算法[8]性能进行对比,并采用如下指标对实验结果进行评估:①准确率accuracy:分类正确的样本占全部测试样本的比例;②模型损失loss:衡量全局模型的预测结果与真实标签之间的差异程度,记录全局模型的损失函数变化趋势。 首先验证算法对于异构样本的有效性。对于MNIST和EMNIST数据集,本文使用dirichlet函数将数据集划分为20组,通过调整Dirichlet分布参数来控制生成的每组分配的样本数,使得每个数据子集的样本分布不同,满足数据异构性设定,并用于训练本地模型;对于CELEBA数据集,随机将属于不同名人的图片聚集成不相交的组来增加了数据的异构性;对于FOQA数据集,随机划分不同样本数据来表现数据子集的异构性。 在4个数据集上不同算法下模型训练收敛过程对比见图6,实验结果显示,在迭代轮数小于200时本算法能够更快地进行学习使全局模型收敛,且从模型精度上来看本方法略优于其他3个对照组。图中结果表明了在相同的条件下,本方法以更小的通信轮数达到更优的训练效果,减小了模型收敛所需的交互次数,从而减少实际应用中的通信开销和信息暴露面。 (a) MNIST (b) EMNIST (c) CELEBA (d) FOQA 图7给出了不同算法下模型训练过程的损失对比,可以看出,随着迭代轮数的增加,FedND在实验数据集上损失更低。 (a) MNIST (b) EMNIST (c) CELEBA 为进一步探讨数据异构性对模型精度的影响,本文利用MNIST和EMNIST数据集开展进一步验证。利用numpy库中的Dirichlet分布函数对数据子集的异构性程度进行量化,通过设置超参数α的值控制分布的形状,进而验证本方法下数据分布的异构程度与模型精度之间的关系。实验结果如表2所示,其中α值越大表示数据子集间的分布异构性越弱;α值越小则概率分布更分散,数据子集间的分布异构性越强。首先实验结果表明,在同样的超参数条件下本文所提出的方法在模型精度上略高于其他对照组。其次,实验结果反映了数据异构性对模型性能的影响:FedND对不同量级的异构性具有鲁棒性,特别是当数据分布高度异构时,本方法对全局模型的增益效果更为显著。 本文提出了一种基于联邦学习的多源异构网络无数据融合方法,在传统的联邦优化算法的基础上加以改进,引入知识蒸馏用于解决各单位普遍存在的数据异构性问题,同时使用聚合知识细化服务器模型代替直接聚合的模型参数,强化了联邦学习系统的安全性,通过保持聚合服务器对局部模型的不可知性,减少安全风险保护代理数据;利用CGAN网络集成代理信息和数据成分布知识调节模型训练,实现不依赖于任何外部数据模型知识蒸馏。通过基于MNIST数据集和CELEBA数据集验证了方法的有效性,实验结果表明,对比于其他3种联邦学习算法,本文方法可以使用更少聚合轮数达到更好的效果,在收敛速度和模型精度上优于现有的联邦学习算法,可以有效减少边缘服务器和中央服务器之间的通信。3.2 联邦无数据蒸馏算法
4 实验及分析
4.1 数据集及实验设置
4.2 实验结果及分析
5 结语