一种基于云端服务器和IoT设备协同的联合学习框架制造技术

技术编号:25521244 阅读:35 留言:0更新日期:2020-09-04 17:11
本发明专利技术公开了一种基于云端服务器和IoT设备协同的联合学习框架,其特点是采用分布式AI系统架构的云端服务器和IoT设备协同的联合学习框架,具体包括:云端离线训练、IoT设备和云端协同在线联合训练和IoT设备和云端协同推理等步骤。本发明专利技术与现有技术相比具有适应不同IoT使用环境或者用户的使用偏好,达到更好的本地设备模型和云端模型的性能效果,有效提高IoT设备中的神经网络的预测准确率和平均推理执行时间,同时保护本地设备用户的数据隐私,尤其适合数据分布多样化的分布式应用场景中使用。

【技术实现步骤摘要】
一种基于云端服务器和IoT设备协同的联合学习框架
本专利技术涉及神经网络及联邦学习
,尤其是一种基于BranchyNet的云端服务器和终端IoT设备群协同推理和联合学习框架。
技术介绍
随着物联网技术的发展和5G通信的到来以及各种IoT设备日益普及,未来IoT端产生的海量数据将很快超过现有互联网的数据体量。边缘和终端智能越来越受到人们的关注,人工智能技术能有效用于处理海量设备端产生的数据。近年来,IoT设备计算能力不断提升,特别是专门用于神经网络计算的AI芯片逐渐成为中高端设备的标配,人工智能逐渐出现了从云端向终端迁移的趋势。智能+是社会未来发展的趋势,赋予IoT设备智能化可以为人们提供更好的服务,越来越多的人工智能应用开始部署在这些IoT设备中,人工智能将成为IoT设备的重要组成部分。深度神经网络由于其卓越的性能已经成为人工智能的主流技术,广泛应用在计算机视觉、自然语言处理和语音识别等领域。深度神经网络的性能很大程度上取决于网络的深度,越深越复杂的网络通常有更好的性能,带来的代价就是提高了网络的计算量和存储开销,增加了运行时间和能量消耗。随着IoT设备计算和存储能力的逐步提高,在IoT设备中部署小型深度神经网络模型将越来越普遍,它能显著提高IoT设备的智能水平。然而,深度神经网络推理需要满足快速和低功耗的要求。IoT设备的计算和存储资源毕竟有限,绝大多数IoT设备是为了低成本和低功耗设计的,特别是小型物联网设备,如嵌入式传感器,通常芯片计算能力弱,只有极少的内存和电量存储。而高性能的深度神经网络模型通常需要高昂的计算、存储和能耗开销,这让直接在这些IoT设备上部署高性能机器深度神经网络模型成为一大难题。物联网端产生的数据呈指数级增加,由于云端服务器网络带宽和计算、存储成本的限制,将物联网和用户设备产生的海量数据全部上传云端服务器存储和处理不切实际。终端计算可以规避网络延迟和无网络或弱网络情况,提供更好的体验服务。研究者预测未来90%的数据会被处理和存储在终端设备本地。同时,行业对数据保护和用户隐私越来越重视,使得非必要数据可以不必通过上传到云端服务器就能服务用户。用户数据存储在自己的设备上,如智能手机和平板电脑中,不向服务端上传,模型的训练都在用户设备端完成。用户之间通过交互非原始数据信息来完成模型的协同训练,这样解决了集中式训练造成的计算和存储资源浪费。这种本地IoT设备节点参与深度神经网络的训练会逐渐成为趋势,特别是在强化学习的场景中,本地设备能与环境实时交互获得反馈,无需人工统一标注数据集就能产生大量能供训练的数据集。在未来海量且多样的IoT设备需要管理和维护的情况下,在线训练IoT设备的本地模型更具有灵活性和可扩展性,能够持续完善模型,并能很好适应使用场景不断发生变化的情况。现有技术不能使低硬件成本的IoT设备更好地利用深度神经网络提供智能服务,存在着神经网络性能差,预测准确率低以及平均执行时间长等问题。
技术实现思路
本专利技术的目的是针对现有技术的不足而提出的一种基于云端服务器和IoT设备协同的联合学习框架,采用基于BranchyNet的云端服务器和终端IoT设备群协同推理和联合学习的分布式AI系统框架,能有效改善神经网络在IoT设备上的应用和性能,提高了物联网设备中神经网络的预测准确率和平均推理执行的速度,同时能保护IoT设备的用户本地数据隐私,尤其适合数据分布多样化的分布式应用场景中使用。本专利技术的目的是这样实现的:一种基于云端服务器和IoT设备协同的联合学习框架,其特点是采用分布式AI系统架构的云端服务器和IoT设备协同的联合学习框架,其联合学习具体包括以下步骤:步骤一:设计神经网络模型根据云端服务器和IoT设备的计算和存储资源,设计包含云端和IoT设备共享结构及其权重的Trunk部分、IoT设备端的Branch部分和云端的Branch部分的BranchyNet神经网络模型。步骤二:云端离线训练在云端使用公共公开的数据集训练BranchyNet模型,得到该模型的初始权重。步骤三:部署神经网络模型将Trunk部分、IoT设备端的Branch部分部署到各个IoT设备中,将Trunk部分、云端的Branch部分部署到云服务器中。步骤四:IoT设备和云端协同在线联合训练各个IoT设备利用本地持续产生的私有数据进行联合训练,持续地优化并更新Trunk部分、IoT设备端Branch部分和云端Branch部分的权重,得到能适应不同IoT使用环境或使用偏好的个性化IoT设备端神经网络模型。步骤五:IoT设备和云端协同推理本地IoT设备独立进行模型推理得到预测结果,并将本地处理效果不好的推理任务交付云端得到更准确的预测结果。所述步骤四和步骤五是一个在线、持续的过程,当使用环境变化时可由步骤五的协同推理返回到步骤四,重新进行协同在线联合训练,然后将改善后的模型用于步骤五的协同推理。所述联合学习框架将BranchyNet的不同部分(Trunk和多个Branch)分别部署到云服务器和各个IoT设备。云端和各个IoT设备拥有相同结构和权重的Trunk部分。受限于IoT设备计算和存储资源,IoT设备的Branch部分神经网络模型简单、体积小、计算量少,因此模型预测性能弱。云端服务器拥有强大的计算能力,云端的Branch部分神经网络模型复杂、体积大、计算量大,同时性能也更强,能得到准确的预测结果。所述联合学习框架在执行推理时,IoT设备模型对本地数据进行预测,数据输入本地设备的Trunk模型。对IoT设备的Branch模型输出的预测值计算正则信息熵来表示输出结果的置信度。如果置信度小于阈值T,则直接将预测值作为最终结果输出;否则将Trunk模型输出的中间结果(即提取的浅层特征)发送云端。由于云和IoT设备的Trunk部分始终保持相同的结构和权重,云端模型直接将接收到的中间结果输入云端的Branch模型,无需重新要求IoT设备发送原始私有数据重新经过Trunk部分的处理,之后将预测结果返回给IoT设备。所述联合学习框架在第一阶段云端离线训练时,训练的前向传播过程中,训练样本数据输入Trunk模型,将Trunk模型输出的中间结果同时输入IoT设备端Branch模型和云端Branch模型,分别根据交叉熵损失函数计算出两个IoT设备端和云端模型的loss值,并加权相加得到最终的loss值。反向传播过程中,使用梯度下降优化算法最小化loss值,计算梯度并更新Trunk模型、IoT设备端Branch模型和云端Branch模型。其目的是预训练得到初始BranchyNet神经网络模型的权重,能够有效提高第二阶段的联合训练速度,同时一定程度上解决了IoT设备训练数据单一、数据量少的问题。所述联合学习框架的第二阶段IoT设备和云端协同在线联合训练用于将IoT设备模型差异化,得到个性化的定制模型。为了提高本地的提前退出比例和联合学习的训练效率,在该过程把IoT设备端的Branch的预测结果的正则信息熵也作为本文档来自技高网
...

【技术保护点】
1.一种基于云端服务器和IoT设备协同的联合学习框架,其特征在于采用分布式AI系统架构的云端服务器和IoT设备协同的联合学习框架,其联合学习具体包括以下步骤:/n步骤一:设计神经网络模型/n 根据云端服务器和IoT设备的计算和存储资源,设计包含云端和IoT设备共享结构及其权重的Trunk部分、IoT设备端的Branch部分和云端的Branch部分的BranchyNet神经网络模型;/n步骤二:云端离线训练/n 在云端使用公共公开的数据集训练BranchyNet模型,得到该模型的初始权重;/n步骤三:部署神经网络模型/n将Trunk部分、IoT设备端的Branch部分部署到各个IoT设备中,将Trunk部分、云端的Branch部分部署到云服务器中;/n步骤四:IoT设备和云端协同在线联合训练/n各个IoT设备利用本地持续产生的私有数据进行联合训练,持续地优化并更新Trunk部分、IoT设备端Branch部分和云端Branch部分的权重,得到能适应不同IoT使用环境或使用偏好的个性化IoT设备端神经网络模型;/n步骤五:IoT设备和云端协同推理/n本地IoT设备独立进行模型推理得到预测结果,并将本地处理效果不好的推理任务交付云端得到更准确的预测结果。/n...

【技术特征摘要】
1.一种基于云端服务器和IoT设备协同的联合学习框架,其特征在于采用分布式AI系统架构的云端服务器和IoT设备协同的联合学习框架,其联合学习具体包括以下步骤:
步骤一:设计神经网络模型
根据云端服务器和IoT设备的计算和存储资源,设计包含云端和IoT设备共享结构及其权重的Trunk部分、IoT设备端的Branch部分和云端的Branch部分的BranchyNet神经网络模型;
步骤二:云端离线训练
在云端使用公共公开的数据集训练BranchyNet模型,得到该模型的初始权重;
步骤三:部署神经网络模型
将Trunk部分、IoT设备端的Branch部分部署到各个IoT设备中,将Trunk部分、云端的Branch部分部署到云服务器中;
步骤四:IoT设备和云端协同在线联合训练
各个IoT设备利用本地持续产生的私有数据进行联合训练,持续地优化并更新Trunk部分、IoT设备端Branch部分和云端Branch部分的权重,得到能适应不同IoT使用环境或使用偏好的个性化IoT设备端神经网络模型;
步骤五:IoT设备和云端协同推理
本地IoT设备独立进行模型推理得到预测结果,并将本地处理效果不好的推理任务交付云端得到更准确的预测结果。


2.根据权利要求1所述基于云端服务器和IoT设备协同的联合学习框架,其特征在于所述联合学习框架将BranchyNet的不同部分部署到云服务器和各个IoT设备,通过云端服务器的计算,能得到准确的预测结果,所述不同部分为Trunk和多个Branch。


3.根据权利要求1所述基于云端服务器和IoT设备协同的联合学习框架,其特征在于所述IoT设备和云端协同推理时,IoT设备模型对本地数据进行预测,数据输入本地设备的Trunk模型,对IoT设备的B...

【专利技术属性】
技术研发人员:陈铭松张心潜
申请(专利权)人:华东师范大学
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1