联邦学习框架实现难点剖析
2022-11-27董耀众褚晨曦刘文婷李济伟李伟良
董耀众,褚晨曦,刘文婷,李济伟,李伟良
(国家电网有限公司信息通信分公司,北京,100761)
1 联邦学习概述
联邦学习是一种快速发展的机器学习技术,特点是分布式和隐私保护。外围设备在不加载本地数据联合训练,由任务发布者的共享全局模型。每个终端设备接收到全局模型后,会使用私有数据在训练模型。终端设备加载新参数。每个移动设备都有本地训练数据,用作训练数据的样本。联邦学习的目标是通过最小化端节点使用本地数据集,学习到的局部函数的加权平均值,减少总损失并最小化总损失。一般联邦学习框架使用随机梯度下降法迭代,迭代地选择训练样例,计算相对于梯度值,并使用适当方向的梯度来最小化。在联邦学习中,看到具有更好质量和本地数据采样的端点,使本地损失和全局损失函数更接近。因此,高质量的边界节点可以提高联邦学习整个任务的精度和效率,降低联邦学习的时间和成本。由于联邦学习的保密性,在物联网上的也是无穷无尽的。应用包括智慧交通和5G网络。在智能交通方面,联邦学习用作工人,单位用作任务发布。车辆充当更新数据的工作者,路边单位充当收集更新的发布。可用于智能交通中的车辆预测和路线规划。数据分析是5G中的一个重要问题,数据分析是关键问题。直接获取信息进行分析会导致机密性泄漏,在线数据可能包含机密内容。因此,在区域网络中使用联邦技术进行学习,只将模型上传到中心,保护了数据的机密性,提高了运行的使用安全性。
2 联邦学习系统框架
为基于联邦区块链的物联网系统制定功能需求和非功能需求。功能需求包括:本地服务器模型学习,基于局部模型创建全局模型,并且无需加载局部数据。采用全局合并模型分类,基于客户对模型学习的贡献报酬。维护边界数据的机密性,有良好的模型精度。保证资料的完整性,维护区块链设施的可用性。提供基本的系统架构,满足联邦学习框架和区块链的功能性要求。客户端数据稳定协议,以确保使用数据的完整性,并鼓励积极参与模型学习。各个联邦培训系统的所有者作为组织,负责根据系统测试支持所有行业服务,组织负责提供数据和本地训练的计算资源模型,客户端组织有传感器、客户端设备、服务器和完整的区块链节点。中心组织包含中心服务器和区块完整的区块节点。设备通过数据采集器采集传感器接收到的数据,通过客户端数据预处理器对数据处理。所有收集的环境数据都存储在数据库中。选择客户端组时,服务器从中央服务器下载模型最新版本并传输模型。更新数据集和模型参数,将更新后的参数传递给服务器上,结合从客户端接收的参数,最终返回新的全局模型。当检测到设备缺陷时,将结果加密并发送到机构,操作员将通过解码器获得的结果解密,并做出处理决策。每个服务器定期创建节点数据记录,在联邦训练中,参与训练的客户端的信息使用的数据量,因为训练模型存储在合约中,由于数据的绑定,智能合约部署在区块链中,存储在各种组织。
3 联邦学习框设计
保护客户端组织的机密业务数据,在本地进行训练,服务器负责迁移合并设备。区块链存储容量有限,服务器定期创建记录,并通过数据链接将节点存储在智能合同。为了鼓励积极参与模型学习,架构开发基于智能激励机制。根据使用的数据大小,客户组织奖励客户组织本地培训。奖励记录在智能合约中。在这种情况下,每个参与组织都拥有完整的区块链节点,每个组织都拥有用于审计的数据的精确副本,确保整个系统的可用性。
4 联邦学习框架实现难点
4.1 纵向联邦学习框架难以实施
大多数研究都是基于横向联邦学习,但横向联邦只能解决机器学习实例数量不足的问题,对于实际应用很少。大多数实际场景是学习的纵向问题,意味着联邦学习参与者都有足够的例子来联合建模大小。在联邦学习框架的横向问题中,参与者都拥有功能。训练所需的数据标签数据,以便参与者可以在迭代模型将迭代结果上传到服务器更新,这相对容易实现。在纵向联邦训练中,每个参与者的特征不同,多数参与者没有标记数据。由于学习要求并非所有参与者都能共享数据,导致了垂直联合。在训练过程中,并不是每个参与者能在完成模型的迭代学习。为了实现垂直学习系统,需要针对机器学习模型在算法层面对模型进行细化,以确保机器学习都基于参与者下载的数据。目前,纵向联邦训练所有研究都是针对机器学习算法的,很难建立通用的系统结构。
4.2 联邦学习速度难点
联邦学习在解决机器学习程中的安全问题,即学习是否安全。除了源模型的参数外,任何数据信息都不应在流动,数据信息的结果不应发生变化。在联邦学习框架学习中,模型的迭代都需要经过训练来解密和加密。每次迭代都必须与服务器交互,数据无法聚合,经常出现沟通问题。为减少涉及的系统中加解密的压力,加密算法是目前联邦学习框架中使用广泛的算法,但会增加数量。需要传输字节的数据,但需要传输千字节,导致联邦学习学习速度比传统的机器学习降低。由于算法在学习中通常有大量的数据进行交互,需要考虑真实情况下的稳定性,从而提高联邦学习框架速度[1]。
5 业务模型
5.1 学习规划流程
加密学习规划是确保分布式协作机制学习影响和计算效率的重要部分。在此背景下研究规划方法,从时间组件到每个模型,在时间分量中加载加密损失函数的加密估计值,其他模型的处理相同。将网络层数据中心加载到规划组件中,局部模型得到总损失函数后才能更新,规划组件必须取局部模型加载的参数,用同态加密计算和规划总函数。根据损失函数,每个局部模型更新组件传递。网络层数据中心业务必须更新各个子模型,而本地模型根据等式需要网络层数据加密参数,重现联邦培训的机制。通过使用协作机制获取和总结参与者的计算结果,完成局部模型的更新。由于网络级数据中心在样本量接受二次统计,网络级数据中心覆盖了各用户群体。根据联邦机制,各数据就职能规模达成一致,但样本组不同。网络层面的数据提供了满足业务的标签,作为参与者在联合演习中的相同,与附属不匹配的唯一数据。通过合作机制,分析整个联邦学习过程的信息安全问题。每个本地模型的学习不会将自己的模型和训练数据发送到组件,因此其他参与者无法获得。由于同态加密计算的不变性,损失函数的初值和加密后可以给出相同的计算结果。参与者下载的都是同态加密的,不能了解参与者内容。合作组件将整体损失传递给每个参与者,访问协作组中的设置,内容本身不会透露本地数据的模型[2]。
5.2 奖励机制
联邦学习的重要特征是不同的机构参与联合学习。这种机制与奖励机制进行比较。联邦学习框架中涉及的数据主体越多,模型就越好。对于网格系统,传统的运行是数据中心在网络层保持数据层的通信,将最终信息传输到网络层。数据中心和网络层中心使用数据。执行整个系统中的数据任务,网络级数据中心承担了大部分的工作。随着数据的增长,中心大数据模型对应用并不大。去中心化学习的思想,将计算负载转化为分布式,供多个参与者完成给定任务。多个所有者提供自己的本地数据,每个数据所有者提供计算能力,而不是数据本身。保护了各信息安全,还提高了业务处理能力。由于模型是通用的,结构与所有其他模型相似,实际测量可以在网络数据中心中进行,意味着其他员工可以通过联邦从提高处理效率中受益。多个参与者共享总计算负载,根据运营模式,网络层的数据中心必须合作,会产生不必要的资源。大部分计算负载集中在网络层中心。使用联邦学习框架机制,可以将计算负载配给每个参与者,提高了模型的计算能力[3]。
5.3 联邦仿真框架系统和基本算法
通过模拟训练,模仿学习通常被称为克隆或回溯学习。模拟训练通过消除训练缺点,如研究和奖励率,提高了机器训练的有效性。使用获取本地机器人知识是行为克隆,使用受控学习来训练专家的策略。行为克隆为了演示这项工作,这些对作为学习示例,应用监督学习获取知识。在云机器人系统中实现,由本地机器人、云服务器和计算机组成。通过模拟学习技能,服务器整合知识。基于联邦学习框架的方法,将私有模型集成到云中的共享模型。通过共享模型,可以根据本地机器人生成合适的引导模型。本地机器人根据模型执行瞬态学习,达成最终的策略。使用模拟训练获得异构数据的策略模型,包含了RGB图像和语义分割图像。输出数据不能在本地机器人传输,也不能在机器人和云之间传输。只有策略参数会被加载和集成,云端会根据机器人的要求提供引导模型。基于自动任务,通常会收集类型数据。本地作业使用不同类型的数据集,机器人数据集标记但未发送到云端。机器人的动作由输出决定,输出是一些动作或参数。每个模型都有不同的输入,将模型的设置上传到合并云。云将能够为不同的输入创建指南模型。当机器人请求服务时,云端会提供与传感器数型匹配的引导模型[4]。
5.4 FIL中的云计算
信息融合算法部署在云端,本地机器人通过模拟训练获得模型。云为场景存储不同类型的传感器数据。从云数据中收集的适当传感器数据输入到模型中。计算自定义模型的输出,是场景的数字属性。这个数据不是本地下载,而是云端收集的,数据集比本地数据集都要大很多。使用多种传感器数据,可以创建与本地机器人类型匹配的模型。通过集中存储数据来整合知识,由于通信有限,不能用于具有大规模数据集的云机器人系统。引入联邦学习框架体系,移动设备根据模型发布的模型对学习数据进行学习的本地计算。这种设计允许设备通过研究模型和共享模型协作,将所有数据存储在设备上。许多机器人任务也需要将数据与多个传感器合并。无法将传感器数据上传到云端,在云机器人系统中提供了通用的模拟系统,以提高机器人能力。在框架和算法中,不需要将传感器加载到云端,只需在云端使用模型参数。云的职责是标记场景,先收集一些数据用于云训练,数据类型必须覆盖本地数据集。必须为云端收集RGB图像和语义分割图像。因此,场景具有传感器。每个模型都有对应的特殊下载模型,提供了标记云的建议。结合这些以获得场景的最终标签。标记的计算可以从根据应用场景定义的集群训练中学习,在这种情况下选择初始决策作为标签。根据模型给出一个预测,使用云中的共享作为本地机器人引导模型。共享模型是智能策略模型,意味着在特殊的非结构化环境中不会产生严重的错误,但所采取的行动不是最好的。因此,本地机器人必须基于云端的通用模型训练模型。通过源区分布与目标区分布关系,需要来自本地机器人数据,是一种迁移学习,可以在限制下执行层迁移。层迁移是模型中由源数据的某些层直接复制,其他层由目标数据。目标数据只需要用较少的参数训练,避免了重新装备。具有更高的学习速度和准确率。在不同的任务中,传输层通常不同。在语音识别中,通常会复制最后一层并训练第一层。因为语音识别神经网络是识别说话人发音,最后一层是识别。在识别图像时,通常复制前层并训练后层[5]。