CN116166444B - 一种面向深度学习分层模型的协同推理方法 - Google Patents

一种面向深度学习分层模型的协同推理方法 Download PDF

Info

Publication number
CN116166444B
CN116166444B CN202310459836.7A CN202310459836A CN116166444B CN 116166444 B CN116166444 B CN 116166444B CN 202310459836 A CN202310459836 A CN 202310459836A CN 116166444 B CN116166444 B CN 116166444B
Authority
CN
China
Prior art keywords
node
layer
deep learning
edge
edge computing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310459836.7A
Other languages
English (en)
Other versions
CN116166444A (zh
Inventor
郭永安
奚城科
周金粮
王宇翱
钱琪杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing University of Posts and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University of Posts and Telecommunications filed Critical Nanjing University of Posts and Telecommunications
Priority to CN202310459836.7A priority Critical patent/CN116166444B/zh
Publication of CN116166444A publication Critical patent/CN116166444A/zh
Application granted granted Critical
Publication of CN116166444B publication Critical patent/CN116166444B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/502Proximity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明属于端边协同计算领域,公开了一种面向深度学习分层模型的协同推理方法,对深度学习分层模型采取逐层分割的方案,通过边缘计算节点处理速度这一状态信息,只需做一次统一决策,即可为节点匹配计算量合适的不同层推理子任务;还使用网络遥测技术感知节点间网络状态,当出现阻塞问题时即刻对上述整体决策做出相应调整;既降低了决策复杂度,又降低推理时延的同时,同时还提高了边缘节点的资源利用率,保证资源的合理分配。

Description

一种面向深度学习分层模型的协同推理方法
技术领域
本发明属于端边协同计算领域,具体涉及一种面向深度学习分层模型的协同推理方法。
背景技术
现如今,随着基于深度神经网络DNN的智能应用得到广泛使用,存在大量计算密集型或延迟敏感型任务。由于网络带宽限制和动态环境的不确定性问题,传统的云端处理方式难以满足用户对时延提出的高要求,且数据的安全性难以保证。而随着边缘计算和5G技术的发展,为深度学习分层模型在边缘侧推理提供可能。
通常情况下,深度学习模型计算任务量较大,由单一边缘计算节点处理往往会因其计算能力有限,无法满足低时延的要求;为此,人们根据深度学习模型分层的特性提出了一种分层卸载方法,即将深度学习模型分割为前后两个部分,分别卸载至端设备、边缘节点或云端处理。不过根据其最优节点原则,任务往往被卸载至某一或某几个计算能力较高的节点处理,随着推理任务的增多,节点的负载过大。相反,某些计算能力一般的节点往往不参与计算,这就大量计算资源空闲,没有得到充分利用。
对此,现有技术中存在新的多层分割方式的研究,如专利申请CN115562760A,公开了基于边缘计算节点打分表的深度学习模型分层卸载方法,其中决策依据的是由节点信息和模型数据生成的打分表,在降低时延的同时保证了计算资源的充分利用;但该专利申请也存在一些不足,首先,在大大的边缘集群场景下,打分表的数据显得过于庞大,且每层任务处理完需要做一次决策,决策时延较高;其次,其并未考虑到节点间网络拥塞的问题,无法克服拥塞带来的影响。
发明内容
为解决上述技术问题,本发明提供了一种面向深度学习分层模型的协同推理方法,对深度学习分层模型采取逐层分割的方案,通过边缘计算节点处理速度这一状态信息,只需做一次统一决策,即可为节点匹配计算量合适的不同层推理子任务;还使用网络遥测技术感知节点间网络状态,当出现阻塞问题时即刻对上述整体决策做出相应调整。
本发明所述的一种面向深度学习分层模型的协同推理方法,包括以下步骤为:
步骤1、对边缘集群中的各边缘计算节点及深度学习模型的离线数据进行统计并预处理,将预处理后的数据通过中心节点
Figure SMS_1
转发至各个边缘计算节点内;
步骤2、终端设备将其接收到的推理任务转发至中心节点
Figure SMS_2
,中心节点/>
Figure SMS_3
作出整体决策,并将决策信息转发给相应的边缘计算节点执行;
步骤3、中心节点
Figure SMS_4
在每次转发给相应的边缘计算节点前判断该节点是否可执行;若为是,则进行任务;若为否,则向上轮询查找更高级别的可行节点进行处理;
步骤4、所有任务完成后将最终计算结果回传至终端设备。
进一步的,边缘集群中的距离终端设备最近的边缘计算节点
Figure SMS_5
为中心节点,步骤1为前期准备工作阶段,包括边缘计算节点离线统计阶段、各层计算量离线统计阶段、排序阶段和离线数据下发阶段;
边缘计算节点离线统计阶段,统计出各个边缘计算节点的处理速度并归一化;
各层计算量离线统计阶段,统计各类参与推理的深度学习模型的每层计算任务大小情况;
排序阶段,对归一化后的节点处理速度和分层模型各层计算量大小由大到小依次向下排列;
离线数据下发阶段,对以上获得的离线数据下发至边缘集群中各个边缘计算节点处。
进一步的,边缘计算节点离线统计阶段,统计边缘集群中所有边缘计算节点处理某项计算量大小已知任务所需时间,任务大小选取时需保证任一节点处理时间不低于一秒;具体公式为:
Figure SMS_6
其中,
Figure SMS_7
表示边缘计算节点/>
Figure SMS_8
的处理速度,单位是M/s;/>
Figure SMS_9
表示所需处理的某项任务的计算量大小,单位是M;/>
Figure SMS_10
表示边缘计算节点/>
Figure SMS_11
处理该项任务所需时间;/>
Figure SMS_12
表示最快处理速度,/>
Figure SMS_13
表示最慢处理速度;
对每个边缘计算节点的处理速度进行归一化处理,归一化处理速度
Figure SMS_14
的数值范围为/>
Figure SMS_15
,归一化公式如下:
Figure SMS_16
进一步的,各层计算量离线统计阶段,将要参与推理的深度学习模型通过距离终端最近的边缘计算节点
Figure SMS_19
,统计/>
Figure SMS_20
计算每层深度学习模型时延/>
Figure SMS_27
;/>
Figure SMS_23
表示深度学习模型第/>
Figure SMS_29
层推理任务,深度学习模型总层数记为/>
Figure SMS_32
,/>
Figure SMS_33
,则第/>
Figure SMS_21
层所需计算时延为/>
Figure SMS_26
;其中最高时延用/>
Figure SMS_17
表示,最低时延用/>
Figure SMS_25
表示;由于深度学习模型第/>
Figure SMS_24
层推理任务计算量的大小/>
Figure SMS_30
与通过第/>
Figure SMS_18
层计算时延/>
Figure SMS_28
成正相关,因此对计算时延归一化得到的数值即表示其计算量的大小;归一化计算量大小/>
Figure SMS_22
,/>
Figure SMS_31
,归一化公式如下:
Figure SMS_34
进一步的,排序阶段将得到的边缘计算节点处理速度的归一化数值和深度学习模型推理的各层计算量大小的归一化数值按照从大到小的顺序进行排序。
进一步的,离线数据下发阶段将其他阶段获得的数据,通过中心节点
Figure SMS_35
下发至边缘集群中各个边缘计算节点处,为边缘计算节点决策和策略实时调整提供依据。
进一步的,所述深度学习模型为m层结构,以隐藏层各单独阵列的神经元为切割点进行分层卸载;从左至右分层卸载时,第i列、第i+1列神经元和两列神经元间的网络结构,称为深度学习模型的第i层;
Figure SMS_36
进一步的,中心节点
Figure SMS_37
将决策信息发送至第一个要处理的节点中处理第一层任务,当第一个结点处理完成之后转发至下一节点处理下一层任务,然后依次执行;
在每次执行前,中心节点
Figure SMS_38
首先判断节点间网络是否阻塞或者下一节点的进程数量是否已满;如果出现以上两种情况的任意一种,则将阻塞信息告知中心节点/>
Figure SMS_39
,由中心节点/>
Figure SMS_40
查找是否有空闲的网络顺畅的更高处理能力的节点,直到找到存在可行的节点,并做出决策调整,由该可行节点处理下一层任务。
本发明所述的有益效果为:
1)本方法在离线获取边缘集群中各边缘计算节点处理速度参数的前提下展开,可提取每个计算节点的处理速度综合分数并做归一化处理,然后按从大到小顺序向下排列,最后将数据下发至边缘集群中各个边缘计算节点处;其为后续的分层卸载决策提供依据,还可以保证分层卸载至各个节点的负载均衡,更为合理;
2)本方法同时在离线统计深度学习分层模型各层计算量大小的前提下展开,通过统计参与推理的深度学习模型每一层计算量的大小情况并对其归一化处理,然后按从大到小顺序向下排列,最后将数据下发至边缘集群中各个边缘节点处;从而合理的分配给处理速度大小相当的边缘计算节点,提高边缘集群中节点的资源利用率、降低计算时延;
3)不同于二进制卸载或单一分割点部分卸载的深度学习模型推理方法,本方法将深度学习模型分多层卸载至不同的边缘计算节点,为了防止每层任务完成后再作下一层的决策,避开决策复杂度高的问题,本发明由中心节点负责作出整体决策,充分挖掘边缘侧的计算潜力,同时降低了决策复杂度,实现计算任务时延和决策时延最小化;
4)本发明将深度学习模型推理任务分层卸载至终端设备对应边缘集群的边缘计算节点上,端边协同推理的方式可有效保证计算数据的安全性和缓解网络带宽的压力,同时提高边缘集群中节点资源利用率;
5)本方法考虑到节点间网络阻塞问题,采用网络遥测技术实时监测即将传输数据的两节点间网络状况,一旦前方发生堵塞便立即调整到网络状况良好且处理速度更快的边缘节点处理,避免了网络拥塞导致任务无法及时处理的问题。
附图说明
图1为本发明前期准备流程图;
图2为本发明的技术原理图;
图3为本发明的一般流程图;
图4为本发明的部分推理任务示意图;
图5为本发明决策实时调整流程图;
图6为本发明的整体流程图。
具体实施方式
为了使本发明的内容更容易被清楚地理解,下面根据具体实施例并结合附图,对本发明作进一步详细的说明。
如图6所示,本发明所述的一种面向深度学习分层模型的协同推理方法,包括以下步骤:
步骤1、对边缘集群中的各边缘计算节点及深度学习模型的离线数据进行统计并预处理,将预处理后的数据通过中心节点
Figure SMS_41
转发至各个边缘计算节点内;
步骤2、终端设备将其接收到的推理任务转发至中心节点
Figure SMS_42
,中心节点/>
Figure SMS_43
作出整体决策,并将决策信息转发给相应的边缘计算节点执行;
步骤3、中心节点
Figure SMS_44
在每次转发给相应的边缘计算节点前判断该节点是否可执行;若为是,则进行任务;若为否,则向上轮询查找更高级别的可行节点进行处理;
步骤4、所有任务完成后将最终计算结果回传至终端设备。
如图1所示,本发明前期准备工作包括以下四个阶段:1.边缘计算节点离线统计阶段:统计出各个节点的处理速度并归一化;2.各层计算量离线统计阶段:统计各类参与推理的深度学习模型的每层计算任务大小情况;3.排序阶段:对归一化后的节点处理速度和分层模型各层计算量大小由大到小依次向下排列;4.离线数据下发:以上获得的数据下发至边缘集群中各个边缘计算节点处。(前期准备阶段的主要工作由边缘集群中的距离终端最近的边缘计算节点
Figure SMS_45
即中心节点计算并处理)。
边缘计算节点离线统计阶段:该阶段进行离线测试,边缘集群中所有的边缘计算节点处理某项计算量大小已知的任务,统计节点处理该项任务所需时间;具体公式如下:(需要声明的是:任务大小选取时需保证任一节点处理时间不低于一秒)
Figure SMS_46
其中,
Figure SMS_47
表示第i个边缘计算节点/>
Figure SMS_48
的处理速度,处理速度单位是M/s;其中/>
Figure SMS_49
表示所需处理的某项任务的计算量大小,计算量单位是M;/>
Figure SMS_50
表示边缘计算节点/>
Figure SMS_51
处理该项任务所需时间,其中处理素的最快用/>
Figure SMS_52
表示,最慢用/>
Figure SMS_53
表示;
随后对每个边缘计算节点的处理速度进行归一化处理,由节点的处理速度减去最慢的处理速度然后除以最大和最小处理速度之差的绝对值,具体的归一化处理速度
Figure SMS_54
的数值范围为/>
Figure SMS_55
,归一化公式如下:
Figure SMS_56
各层计算量离线统计阶段:同样是离线测试阶段,该阶段将要参与推理的深度学习模型通过距离终端最近的边缘计算节点
Figure SMS_62
,统计/>
Figure SMS_60
计算每层深度学习模型时延/>
Figure SMS_73
;用/>
Figure SMS_64
表示深度学习模型第/>
Figure SMS_67
层推理任务,深度学习模型总层数记为/>
Figure SMS_58
(/>
Figure SMS_66
),则第/>
Figure SMS_59
层所需计算时延为/>
Figure SMS_69
;其中最高时延用/>
Figure SMS_57
表示,最低时延用/>
Figure SMS_65
表示。由于深度学习模型第/>
Figure SMS_61
层推理任务计算量的大小/>
Figure SMS_71
与通过第/>
Figure SMS_70
层计算时延/>
Figure SMS_72
成正相关,因此对计算时延归一化得到的数值即可表示其计算量的大小,具体的归一化计算量大小/>
Figure SMS_63
的数值范围为/>
Figure SMS_68
,归一化公式如下:
Figure SMS_74
排序阶段:本发明对上述离线测试得到的边缘计算节点处理速度的归一化数值和深度学习模型推理的各层计算量大小的归一化数值进行排序,如表1所示:
表1
Figure SMS_75
表1为离线统计边缘节点和各层计算量并排序的部分示例,按照从大到小的顺序排列即可。
离线数据下发阶段:以上获得的数据,包括统计到的边缘计算节点归一化数值和分层模型计算量大小的归一化数值,以及它们排序之后的情况,通过边缘计算中心节点
Figure SMS_76
下发至边缘集群中各个边缘计算节点处,为边缘计算节点决策和策略实时调整提供依据。
本发明采用的网络结构如图2所示,边缘集群内包含多个边缘服务器,各边缘服务器部署在基站或是WIFI接入点中,且满足单个集群内任意一个边缘计算节点与各物理终端的通信范围保持在一定范围内,尽可能保证数据传输的稳定性和及时性。
针对边缘集群中的边缘计算节点,都在一定的通信范围内,互相之间通过传输链路通信,能保证通信的即时性,一个边缘集群中边缘计算节点的总数记为n(
Figure SMS_77
)。
同一局域网内存在多个物理终端和多个边缘计算节点,且距离终端最近的边缘计算节点作为中心节点
Figure SMS_78
,与此中心节点/>
Figure SMS_79
物理距离小于x千米的其他边缘计算节点一起组成边缘集群层;多个物理终端位于边缘集群层之下,组成终端设备层。
边缘计算节点上部署有数据中心、决策中心和深度学习模型。
数据中心:下设节点数据模块、深度学习模型数据模块和网络遥测模块;首先是节点数据模块,集群内的各边缘计算节点在离线统计阶段对各自的处理速度进行统计并传输至中心节点
Figure SMS_80
,随后由中心节点/>
Figure SMS_81
的归一化数据模块对数据归一化处理并排序,并储存在本地。此外各节点实时发送当前剩余进程数至中心节点/>
Figure SMS_82
,为后续决策调整提供依据。其次是深度学习模型数据模块,中心节点/>
Figure SMS_83
在离线阶段对不同类型深度学习模型进行处理,并统计出同一类型深度学习模型的每一层计算任务所需时间,然后通过对计算时延的归一化处理,得到每层任务计算量大小,按照从大到小依次向下的顺序排列,最后将数据储存在本地即可。最后是网络遥测模块,利用网络遥测技术,每个边缘计算节点每隔1毫秒对本节点至其余节点的网络状态进行实时监测,一旦监测到网络拥塞状况,立即将拥塞路径上传至中心节点的决策中心的决策调整模块。
决策中心:下设决策模块、决策收发模块和决策调整模块。
首先是决策模块,中心节点
Figure SMS_84
根据数据中心离线统计到的集群内边缘计算节点处理速度和各层模型计算量大小,统一决策,为每层模型分配至处理能力合适的边缘计算节点。其次是决策收发模块,用于完成接收和发送决策的任务。最后是决策调整模块,当前层任务处理完之后需要将结果下发至下一节点处理下一层任务,在这之前中心节点/>
Figure SMS_85
的决策调整模块将根据下一层节点的剩余进程数和两节点间的网络状况决定是否调整决策,一旦出现剩余进程数不足或网络拥塞问题,则立即调整下一层任务的目标节点。
深度学习模型:已经训练完备并赋予智能应用程序的算法模型。
如图3所示,前期准备工作完成之后,就可以按顺序对深度学习模型进行任务卸载计算,需要声明的是,同一个边缘集群内的边缘计算节点中的深度学习模型的数据信息都是共享的。
当终端设备接收到深度学习模型推理任务时,终端设备将任务装载至中心节点
Figure SMS_87
决策中心的决策模块中,中心节点/>
Figure SMS_90
的决策模块根据深度学习模型数据模块的各层模型计算量归一化值/>
Figure SMS_92
选取数据中心的节点数据模块中的节点处理速度归一化值/>
Figure SMS_88
最接近/>
Figure SMS_89
且不小于/>
Figure SMS_91
的节点。当决策模块决策好模型各层分配情况之后将决策分发至处理第一层任务的第一个节点处。此处需要声明的是,首先该次决策为统一决策,后续无需再由其余节点做决策任务;其次由于深度学习模型的特性,下一层任务处理之前需要上一层任务的结果作为此分层任务的输入,因此需要按顺序分配每层任务至下一节点,这也给中心节点/>
Figure SMS_93
的决策调整提供了可能。在当前层任务处理完,同时即将把处理结果传输至下一节点处理之前,中心节点/>
Figure SMS_86
的决策调整模块将依据涉及到的节点状态信息,包括下一节点剩余进程数以及两节点间的网络是否阻塞为标准决定是否采取相应的决策调整方案。
以图4中的深度学习模型分层计算的部分任务为例,其中第
Figure SMS_96
层推理任务由边缘计算节点/>
Figure SMS_98
处理,整体决策方案中下一层任务,即第j+1层,由边缘计算节点/>
Figure SMS_101
处理。当第/>
Figure SMS_95
层任务处理完之后,需要将处理结果传输至下一节点/>
Figure SMS_97
处理,不过在此之前,/>
Figure SMS_100
节点将监测其到/>
Figure SMS_103
节点的网络状况N是否阻塞,一旦出现网络阻塞问题则立即将结果上传至中心节点
Figure SMS_94
的数据中心,节点/>
Figure SMS_99
到/>
Figure SMS_102
的网络状况是否阻塞表示为:
Figure SMS_104
需要声明的是,此处网络状况的检测方法为网络遥测技术,可以实现每个一毫米检测一次当前网络状况,而中心节点
Figure SMS_105
默认网络状况良好,直到当前检测到的网络状况和上一秒状况不同时才会将当前网络状况信息上传至中心节点/>
Figure SMS_106
此外,在传输处理结果至下一节点
Figure SMS_109
处理前还需监测/>
Figure SMS_112
节点的剩余进程数,一旦剩余进程数小于等于0时,立即将结果上传至中心节点/>
Figure SMS_113
的数据中心。/>
Figure SMS_108
表示边缘计算节点/>
Figure SMS_111
的剩余进程数,/>
Figure SMS_114
表示进程数有无,当剩余进程数小于等于0时/>
Figure SMS_115
,当剩余进程数大于等于1时/>
Figure SMS_107
;即第a个节点剩余进程数的有无/>
Figure SMS_110
表示为:
Figure SMS_116
默认状态下中心节点
Figure SMS_117
的数据中心节点进程信息为/>
Figure SMS_118
;直到/>
Figure SMS_119
时,立即将进程数据上传至中心节点/>
Figure SMS_120
。当/>
Figure SMS_121
数值再次发生变化时,才将节点/>
Figure SMS_122
的进程信息更新。此外,一旦对于任意边缘节点,一旦有新的任务进来,即将进程数加一,反之如果有任务结束处理即进程数加一。
也就是说,需要做出决策调整的触发条件为:当
Figure SMS_123
到/>
Figure SMS_124
节点间的网络出现堵塞或
Figure SMS_125
节点进程数为0的时候。是否决策调整用符号/>
Figure SMS_126
表示,/>
Figure SMS_127
表示节点/>
Figure SMS_128
处理完当前层任务至下一节点/>
Figure SMS_129
前是否需决策调整,具体公式如下:
Figure SMS_130
Figure SMS_133
时,表示需要做出决策调整;反之,当/>
Figure SMS_136
时,则不需要做出决策调整,按照原定的策略计算下一任任务。若需要调整策略,则根据中心节点/>
Figure SMS_140
的数据中心内节点处理能力排序表调整,以/>
Figure SMS_132
为例,向上依次查找处理速度比/>
Figure SMS_135
节点快的其他节点;若找到一个节点/>
Figure SMS_139
满足/>
Figure SMS_142
(/>
Figure SMS_131
表示x节点进程数是否剩余,/>
Figure SMS_138
表示a到x节点间的网络是否阻塞),则将下一层任务处理位置从/>
Figure SMS_141
节点调整为/>
Figure SMS_143
节点;若未找到该节点/>
Figure SMS_134
,则重新返回到/>
Figure SMS_137
节点向上查找,直到出现合适的节点并卸载至该节点为止;具体如图5所示。
以上所述仅为本发明的优选方案,并非作为对本发明的进一步限定,凡是利用本发明说明书及附图内容所作的各种等效变化均在本发明的保护范围之内。

Claims (6)

1.一种面向深度学习分层模型的协同推理方法,其特征在于,所述方法包括以下步骤:
步骤1、对边缘集群中的各边缘计算节点及深度学习模型的离线数据进行统计并预处理,将预处理后的数据通过中心节点
Figure QLYQS_1
转发至各个边缘计算节点内;
边缘集群中的距离终端设备最近的边缘节点
Figure QLYQS_2
为中心节点,步骤1为前期准备工作阶段,包括边缘节点离线统计阶段、各层计算量离线统计阶段、排序阶段和离线数据下发阶段;
边缘计算节点离线统计阶段,统计出各个边缘计算节点的处理速度并归一化;
各层计算量离线统计阶段,统计各类参与推理的深度学习模型的每层计算任务大小情况;
排序阶段,对归一化后的节点处理速度和分层模型各层计算量大小由大到小依次向下排列;
离线数据下发阶段,对以上获得的离线数据下发至边缘集群中各个边缘节点处;
步骤2、终端设备将其接收到的推理任务转发至中心节点
Figure QLYQS_3
,中心节点/>
Figure QLYQS_4
作出整体决策,并将决策信息转发给相应的边缘计算节点执行;
步骤3、中心节点
Figure QLYQS_5
根据统计到的集群内边缘计算节点处理速度和各层模型计算量大小,统一决策,为每层模型分配处理能力合适的边缘计算节点;
中心节点
Figure QLYQS_6
将决策信息发送至第一个要处理的节点中处理第一层任务,当第一个结点处理完成之后转发至下一节点处理下一层任务,然后依次执行;
在每次执行前,中心节点
Figure QLYQS_7
首先判断节点间网络是否阻塞或者下一节点的进程数量是否已满;如果出现以上两种情况的任意一种,则将阻塞信息告知中心节点/>
Figure QLYQS_8
,由中心节点/>
Figure QLYQS_9
查找是否有空闲的网络顺畅的更高处理能力的节点,直到找到存在可行的节点,并做出决策调整,由该可行节点处理下一层任务;
步骤4、所有任务完成后将最终计算结果回传至终端设备。
2.根据权利要求1所述的一种面向深度学习分层模型的协同推理方法,其特征在于,边缘节点离线统计阶段,统计边缘集群中所有边缘计算节点处理某项计算量大小已知任务所需时间,任务大小选取时需保证任一节点处理时间不低于一秒;具体公式为:
Figure QLYQS_10
其中,
Figure QLYQS_11
表示边缘计算节点/>
Figure QLYQS_12
的处理速度,单位是M/s;/>
Figure QLYQS_13
表示所需处理的某项任务的计算量大小,单位是M;/>
Figure QLYQS_14
表示边缘计算节点/>
Figure QLYQS_15
处理某项任务所需时间;/>
Figure QLYQS_16
表示最快处理速度,/>
Figure QLYQS_17
表示最慢处理速度;
对每个边缘计算节点的处理速度进行归一化处理,归一化处理速度
Figure QLYQS_18
的数值范围为
Figure QLYQS_19
,归一化公式如下:
Figure QLYQS_20
3.根据权利要求2所述的一种面向深度学习分层模型的协同推理方法,其特征在于,各层计算量离线统计阶段,将要参与推理的深度学习模型通过距离终端最近的边缘节点
Figure QLYQS_28
,统计/>
Figure QLYQS_24
计算每层深度学习模型时延/>
Figure QLYQS_30
;/>
Figure QLYQS_25
表示深度学习模型第/>
Figure QLYQS_31
层推理任务,深度学习模型总层数记为/>
Figure QLYQS_32
,/>
Figure QLYQS_36
,则第/>
Figure QLYQS_27
层所需计算时延为/>
Figure QLYQS_35
;其中最高时延用/>
Figure QLYQS_26
表示,最低时延用/>
Figure QLYQS_37
表示;由于深度学习模型第/>
Figure QLYQS_22
层推理任务计算量的大小/>
Figure QLYQS_34
与通过第/>
Figure QLYQS_23
层计算时延/>
Figure QLYQS_29
成正相关,因此对计算时延归一化得到的数值即表示其计算量的大小;归一化计算量大小/>
Figure QLYQS_21
Figure QLYQS_33
,归一化公式如下:
Figure QLYQS_38
4.根据权利要求3所述的一种面向深度学习分层模型的协同推理方法,其特征在于,排序阶段将得到的边缘计算节点处理速度的归一化数值和深度学习模型推理的各层计算量大小的归一化数值按照从大到小的顺序进行排序。
5.根据权利要求4所述的一种面向深度学习分层模型的协同推理方法,其特征在于,离线数据下发阶段将其他阶段获得的数据,通过边缘计算中心节点
Figure QLYQS_39
下发至边缘集群中各个边缘节点处,为边缘节点决策和策略实时调整提供依据。
6.根据权利要求1所述的一种面向深度学习分层模型的协同推理方法,其特征在于,所述深度学习模型为m层结构,以隐藏层各单独阵列的神经元为切割点进行分层卸载;从左至右分层卸载时,第i列、第i+1列神经元和两列神经元间的网络结构,称为深度学习模型的第i层;
Figure QLYQS_40
CN202310459836.7A 2023-04-26 2023-04-26 一种面向深度学习分层模型的协同推理方法 Active CN116166444B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310459836.7A CN116166444B (zh) 2023-04-26 2023-04-26 一种面向深度学习分层模型的协同推理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310459836.7A CN116166444B (zh) 2023-04-26 2023-04-26 一种面向深度学习分层模型的协同推理方法

Publications (2)

Publication Number Publication Date
CN116166444A CN116166444A (zh) 2023-05-26
CN116166444B true CN116166444B (zh) 2023-07-04

Family

ID=86416805

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310459836.7A Active CN116166444B (zh) 2023-04-26 2023-04-26 一种面向深度学习分层模型的协同推理方法

Country Status (1)

Country Link
CN (1) CN116166444B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117834643B (zh) * 2024-03-05 2024-05-03 南京邮电大学 一种面向工业物联网的深度神经网络协同推理方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108901046B (zh) * 2018-06-14 2020-10-09 北京大学 面向移动边缘计算的协同任务卸载算法及系统设计方案
CN111242282B (zh) * 2020-01-09 2023-03-28 中山大学 基于端边云协同的深度学习模型训练加速方法
CN113326002A (zh) * 2021-05-22 2021-08-31 清华大学 基于计算迁移的云边协同控制系统及迁移决策生成方法
CN115460710A (zh) * 2022-08-30 2022-12-09 西北工业大学 基于深度强化学习的车辆边缘计算场景中的智能计算卸载方法
CN115562760B (zh) * 2022-11-22 2023-05-30 南京邮电大学 基于边缘计算节点打分表的深度学习模型分层卸载方法

Also Published As

Publication number Publication date
CN116166444A (zh) 2023-05-26

Similar Documents

Publication Publication Date Title
CN112181666A (zh) 一种基于边缘智能的设备评估和联邦学习重要性聚合方法、系统、设备和可读存储介质
CN110717300B (zh) 面向电力物联实时在线监测业务的边缘计算任务分配方法
CN116166444B (zh) 一种面向深度学习分层模型的协同推理方法
CN110933157A (zh) 一种面向工业物联网的边缘计算任务卸载方法
WO2022237086A1 (zh) 一种基于机器学习模型的控制方法和装置
CN112486690A (zh) 一种适用于工业物联网的边缘计算资源分配方法
CN113315669B (zh) 基于云边协同的吞吐量优化的机器学习推断任务部署方法
CN110996365B (zh) 一种基于多目标优化模型的异构网络垂直切换算法及系统
CN113328953B (zh) 网络拥塞调整的方法、装置和存储介质
CN116050540A (zh) 一种基于联合双维度用户调度的自适应联邦边缘学习方法
CN110601916A (zh) 一种基于机器学习的流量采样和应用感知的系统
CN113676357A (zh) 面向电力物联网中边缘数据处理的决策方法及其应用
CN115562760B (zh) 基于边缘计算节点打分表的深度学习模型分层卸载方法
CN112084034A (zh) 一种基于边缘平台层调节系数的mct调度方法
CN106789163A (zh) 一种网络设备用电信息监测方法、装置和系统
CN116170881A (zh) 一种基于边缘计算的跨域资源分配与卸载方法及系统
CN113992595B (zh) 一种基于优先经验回放dqn的sdn数据中心拥塞控制方法
CN114781598A (zh) 一种基于分层神经网络分布式训练的故障预测方法
CN115438722A (zh) 一种基于分布式聚类的大数据产品指标聚类方法
Khedkar A deep learning method for effective channel allotment for SDN based IoT
CN112906745A (zh) 基于边缘协同的诚信智能网络训练方法
CN112685176A (zh) 一种改进ddnn的资源受限边缘计算方法
CN116257361B (zh) 无人机辅助的易故障移动边缘计算资源调度优化方法
Razmara et al. A Hybrid Neural Network Approach for Congestion Control in TCP/IP Networks
CN117880605B (zh) 基于5g技术的短信视频快速播放方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant