一种基于自动机器学习的边缘计算模型训练方法技术

技术编号:36567972 阅读:8 留言:0更新日期:2023-02-04 17:24
本发明专利技术公开了一种基于自动机器学习的边缘计算模型训练方法,包括以下步骤:在边缘服务器训练计算模型前获取当前的计算任务信息和服务器计算资源情况;通过NAS(Neural Architecture Search)根据计算任务信息和计算资源情况,对自动机器学习算法的超参数进行学习和约束;在确定自动机器学习算法的超参数后,通过自动机器学习算法根据输入数据自动训练出最优的计算模型。与当前边缘服务器上的计算模型不同,本方法的模型采用了自动机器学习技术,可以减轻模型开发和维护成本,在自动生成模型时考虑到边缘服务器的异构性、资源有限性以及计算任务对计算时延的要求问题,使生成的计算模型更具有泛化能力。的计算模型更具有泛化能力。的计算模型更具有泛化能力。

【技术实现步骤摘要】
一种基于自动机器学习的边缘计算模型训练方法


[0001]本专利技术涉及边缘计算领域,特别涉及一种基于自动机器学习的边缘计算模型训练方法。

技术介绍

[0002]为了克服传统IT技术所面临的资源利用率低、生产成本高、网络利用率低、能源消耗高等问题,云计算技术应运而生。企业可以利用分布式计算和虚拟化技术搭建数据中心或超级计算机,以无偿或按需求租用的形式向技术人员或企业用户提供硬件资源(服务器、存储器、CPU等)和软件资源(应用软件、集成开发环境等),企业用户只需按照自身的实际需求选择相应的业务,而无须购置、拥有和维修物理的资料设备和数据库。另外,云计算还拥有广泛的网络接入、资源池化、快速弹性伸缩和可计量服务等优势。
[0003]然而,随着近几年5G技术和物联网技术的快速发展,万物互联时代的到来,网络中接入了大量的终端设备,计算需求出现爆发式增长。其中不乏对计算服务实时性要求高的计算任务,例如无人驾驶、VR游戏和智能家居等。当面对海量数据计算、新兴计算场景、小数据实时处理等方面的挑战时,受限于距离、网络带宽等因素的传统云计算架构难以满足这些计算任务的要求。
[0004]因此,将云计算的能力下沉到边缘侧、终端侧,通过云端进行统一的交付、运维、管控将会是重要的发展趋势。随着算力从云端下沉到边缘端,一套新的计算体系

云边端协同计算架构也因此而生。其中“云”是传统云数据中心,是边缘计算的管控端;“边”是云数据中心和终端设备之间的边缘节点组成的边缘网络;“端”则是智能终端设备,比如手机、智能家电、各类传感器等。与传统的云计算架构相比,云边端协同计算架构不需要将终端设备产生的计算任务和数据全部上传到云端,只需将小规模、实时的智能分析任务交给就近端的边缘节点处理,拉近了计算资源与客户的距离,可以产生更快的网络服务响应,满足各行业在实时业务、应用智能、安全与隐私保护等方面的需求。
[0005]尽管如此,由于边缘服务器上的计算资源有限、异构芯片不能协同统一利用、计算资源利用率低等原因,实际上还是会出现计算延迟高等问题。因此,近年来技术人员基于各种技术提出了优化边缘服务器资源利用率、保护数据隐私性、降低计算时延的模型和方法。
[0006]例如,北京交通大学提出的“一种基于边缘计算的神经网络模型训练方法”(申请号为202210176214.9),通过使用非学习层的方式对模型进行改进,优化边缘端和终端设备间的数据传输,减少通信时延。
[0007]重庆理工大学提出的“分层边缘计算环境中基于深度强化学习的任务调度方法”(申请号为202111012837.4),以提升调度决策的质量并能在效率与质量之间得到平衡。
[0008]上海交通大学提出的“一种基于边缘计算的任务调度方法”(申请号为202210007565.7),通过在各区域维护一个策略网络,基于联邦学习的深度强化学习算法进行在线更新网络参数,各区域独立对本区域内实时接收到的任务进行调度,以增强模型扩展性、保护数据隐私性、提高系统性能。
[0009]上述模型方法都在一定程度上提升了边缘服务器的性能,但没考虑到边缘服务器的异构性和边缘服务器上计算资源有限的问题。为此,本专利技术将自动机器学习技术运用在边缘计算上,自动训练计算模型,从而得到最优计算模型,减轻了模型开发和维护的成本。同时,考虑到边缘服务器计算资源有限和计算任务对计算时延有要求的问题,通过根据计算任务信息和计算资源情况,对自动机器学习算法的超参数进行学习和约束,使生成的计算模型更具有泛化能力。

技术实现思路

[0010]本专利技术的目的在于克服现有技术的缺点与不足,提供一种基于自动机器学习的边缘计算模型训练方法,该方法能考虑边缘服务器的异构性、资源有限性以及计算任务对计算时延的要求,使生成的计算模型更具有泛化能力,同时减轻模型开发和维护的成本。
[0011]本专利技术的目的通过以下的技术方案实现:
[0012]一种基于自动机器学习的边缘计算模型训练方法,包括以下步骤:
[0013]步骤1:边缘服务器在训练计算模型之前,获取当前任务队列中每个计算任务的信息矩阵Job,以及当前服务器的计算资源矩阵Source;
[0014]步骤2:将计算任务的信息矩阵x1=Job与服务器的计算资源矩阵x2=Source组成X={x1,x2},将X作为后续神经网络模型的输入;
[0015]步骤3:将步骤2中的X输入到已经训练好的神经网络模型,最后神经网络模型输出自动机器学习算法的超参数Hyperparameters;
[0016]步骤4:根据步骤3中的超参数Hyperparameters,设置好自动机器学习算法的超参数,然后使用输入数据通过自动机器学习算法自动训练出最优机器学习计算模型Best
model

[0017]一种基于自动机器学习的边缘计算模型训练方法,包括以下步骤:
[0018]S1.针对电表读数的图像识别计算任务,提前在Atlas 200DK边缘设备上部署能够自动获取不同计算任务在CPU和NPU上运行时产生的计算任务的信息矩阵Job和服务器的计算资源矩阵Source的脚本;
[0019]S2.在Atlas 200DK边缘设备上定期采集m个电表读数的图像识别任务及其产生的信息Job,其中Job={j1,j2,...,j
m
},其中j=[Runtime,Energy,Node,T];以及脚本获取到的对应历史数据信息Trace={Source1,Source2,...,Source
m
},其中Source=[Fnode,Fmemory,Energy];
[0020]S3.在Atlas 200DK边缘设备上部署基于深度学习框架TensorFlow的NAS自动训练脚本;
[0021]S4.使用步骤S3中的NAS自动训练脚本训练一个最大层数不超过10层,每层宽度不超过300个神经元的DNN神经网络模型Model,其输入为X={Job,Source},输出为识别电表读数的CNN模型的NAS自动训练算法预设值超参数Hyperparameters=[Layers,Filters,Kernel,Loss,Seed],其中Layers代表CNN的搜索最大层数,Filters、Kernel代表CNN模型每一层卷积层最大的Filters通道数与最大卷积核大小,Loss代表选择的损失函数,Seed代表CNN的初始种子编号;
[0022]S5.Atlas 200DK边缘设备在训练识别电表读数的CNN模型之前,获取当前任务队列中每个计算任务的信息矩阵Job_now,其属性特征包括:计算任务在CPU和NPU上运行所需
的大概时间、计算任务在CPU和NPU上运行所造成的大概能耗、计算任务在CPU和NPU上运行所需的计算节点数量、计算任务的计算时延要求;以及当前Atlas 200DK边缘设备的计算资源矩阵Source_now,其属性特征包括:Atlas 200DK边缘设备上两块NPU和C本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于自动机器学习的边缘计算模型训练方法,其特征在于,包括以下步骤:步骤1:边缘服务器在训练计算模型之前,获取当前任务队列中每个计算任务的信息矩阵Job,以及当前服务器的计算资源矩阵Source;步骤2:将计算任务的信息矩阵x1=Job与服务器的计算资源矩阵x2=Source组成X={x1,x2},将X作为后续神经网络模型的输入;步骤3:将步骤2中的X输入到已经训练好的神经网络模型,最后神经网络模型输出自动机器学习算法的超参数Hyperparameters;步骤4:根据步骤3中的超参数Hyperparameters,设置好自动机器学习算法的超参数,然后使用输入数据通过自动机器学习算法自动训练出最优机器学习计算模型Best
model
。2.一种基于自动机器学习的边缘计算模型训练方法,其特征在于,包括以下步骤:S1.针对电表读数的图像识别计算任务,提前在Atlas 200DK边缘设备上部署能够自动获取不同计算任务在CPU和NPU上运行时产生的计算任务的信息矩阵Job和服务器的计算资源矩阵Source的脚本;S2.在Atlas 200DK边缘设备上定期采集m个电表读数的图像识别任务及其产生的信息Job,其中Job={j1,j2,...,j
m
},其中j=[Runtime,Energy,Node,T];以及脚本获取到的对应历史数据信息Trace={Source1,Source2,...,Source
m
},其中Source=[Fnode,Fmemory,Energy];S3.在Atlas 200DK边缘设备上部署基于深度学习框架TensorFlow的NAS自动训练脚本;S4.使用步骤S3中的NAS自动训练脚本训练一个最大层数不超过10层,每层宽度不超过300个神经元的DNN神经网络模型Model,其输入为X={Job,Source},输出为识别电表读数的CNN模型的NAS自动训练算法预设值超参数Hyperparameters=[Layers,Filters,Kernel,Loss,Seed],其中Layers代表CNN的搜索最大层数,Filters、Kernel代表CNN模型每一层卷积层最大的Filters通道数与最大卷积核大小,Loss代表选择的损失函数,Seed代表CNN的初始种子编号;S5.Atlas 200DK边缘设备在训练识别电表读数的CNN模型之前,获取当前任务队列中每个计算任务的信息矩阵Job_now,其属性特征包括:计算任务在CPU和NPU上运行所需的大概时间、计算任务在CPU和NPU上运行所造成的大概能耗、计算任务在CPU和NPU上运行所需的计算节点数量、计算任务的计算时延要求;以及当前Atlas 200DK边缘设备的计算资源矩阵Source_now,其属性特征包括:Atlas 200DK边缘设备上两块NPU和CPU上空闲计算节点情况、两块NPU和CPU上空闲计算内存、设备当前时间段的平均能耗;S6.将步...

【专利技术属性】
技术研发人员:林伟伟周智勇沈王博
申请(专利权)人:华南理工大学
类型:发明
国别省市:

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

1