CN111176820B - 一种基于深度神经网络的边缘计算任务的分配方法及装置 - Google Patents

一种基于深度神经网络的边缘计算任务的分配方法及装置 Download PDF

Info

Publication number
CN111176820B
CN111176820B CN201911421262.4A CN201911421262A CN111176820B CN 111176820 B CN111176820 B CN 111176820B CN 201911421262 A CN201911421262 A CN 201911421262A CN 111176820 B CN111176820 B CN 111176820B
Authority
CN
China
Prior art keywords
layer
calculated
neural network
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
CN201911421262.4A
Other languages
English (en)
Other versions
CN111176820A (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.)
Zhongxuan Shulian Technology (Henan) Co.,Ltd.
Original Assignee
Big Data Research Institute Institute Of Computing Technology Chinese Academy Of Sciences
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 Big Data Research Institute Institute Of Computing Technology Chinese Academy Of Sciences filed Critical Big Data Research Institute Institute Of Computing Technology Chinese Academy Of Sciences
Priority to CN201911421262.4A priority Critical patent/CN111176820B/zh
Publication of CN111176820A publication Critical patent/CN111176820A/zh
Application granted granted Critical
Publication of CN111176820B publication Critical patent/CN111176820B/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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • 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
    • 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/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent

Abstract

本发明提供了一种基于深度神经网络的边缘计算任务的分配方法,其步骤包括:获得参数量数据,分别计算神经网络中,待计算网络层的参数量;获得计算量数据,根据待计算网络层的参数量获得计算量数据;计算任务分配,根据计算量数据获得终端设备计算任务;根据终端设备计算任务获得边缘服务器的计算任务;判断剩余计算任务是否需要在云服务器执行。此外,本发明还提供了一种基于深度神经网络的边缘计算任务的分配装置、存储介质,可以充分考虑各层设备的实时剩余计算资源情况,并在此基础上计算各层的参数量与计算量,得到对应的部署方案,实现各层设备计算能力的充分利用。

Description

一种基于深度神经网络的边缘计算任务的分配方法及装置
技术领域:
本发明涉及计算机技术领域,具体的,涉及一种基于深度神经网络的边缘计算任务的分配方法及装置。
背景技术:
近些年人工智能取得了很大的进展,它的应用随着相关技术的成熟逐渐渗透进入了生活。神经网络作为人工智能中常用的手段,它虽然有很好的性能(准确率等),但它的训练和推导都需要很大的计算量,在边缘计算框架下,就单个终端设备来说,很难快速的完成训练或者得到推理(一次执行)的结果。尤其是卷积神经网络(CNN),由于其参数众多,推理计算资源需求大,一般的终端设备难以快速获取推理结果。
分布式技术对机器学习也有很大的帮助,将不同位置的设备通过网络结合在一起,整合算力,从而得到更快的任务响应速度。这样的分布式思想衍生出了云计算、边缘计算、物联网等新的领域。云计算的出现使得普通用户可以得到廉价而巨大的计算资源,但传统的云计算需要完整的任务输入,而且数据传输距离很长,这会导致通信带宽消耗大、响应时延不可估计以及隐私难以保护等缺点。在这样的环境下,渐渐发展出了雾计算、边缘计算等新的非本地计算模式。边缘计算中,终端将数据发送给离用户较近的边缘服务器,边缘服务器将接收的数据进行处理,并返回结果给用户。这样的计算方式虽然没有和云一样强大的计算能力,但是保证了低延迟、高可靠性和用户隐私不被侵犯,另外还有非常高的鲁棒性和可扩展性。一般来说,边缘计算的延迟大约在10毫秒之内,而云计算的延迟大约在100毫秒。面对神经网络的推理任务,虽然边缘计算延迟够低,但是其总体计算性能不够高,云服务器计算能力够强,但是不可控的延迟和隐私问题成为最大的隐患。
因此,本领域亟需一种任务分配方法及装置,以更好的结合终端、边缘、云三部分,从而取得更好的效果和体验。
发明内容:
有鉴于此,本发明的目的在于提供一种基于深度神经网络的边缘计算任务的分配方法及装置,以解决背景技术中所述的至少一个技术问题。
具体的,本发明的第一方面,提供了一种基于深度神经网络的边缘计算任务的分配方法,其步骤包括:
获得参数量数据,分别计算神经网络中,待计算网络层的参数量;
获得计算量数据,根据待计算网络层的参数量获得计算量数据;
计算任务分配,根据计算量数据获得终端设备计算任务;根据终端设备计算任务获得边缘服务器的计算任务;判断剩余计算任务是否需要在云服务器执行,如需要,则将剩余计算任务分配至云服务器,如不需要,则将剩余计算任务分配至边缘服务器。
采用上述技术方案,可以充分考虑各层设备的实时剩余计算资源情况,并在此基础上计算各层的参数量与计算量,得到对应的部署方案,通过计算任务的优化分配,实现各层设备计算能力的充分利用,提高处理效率。
优选地,所述基于深度神经网络的边缘计算任务的分配方法,还包括步骤:
获得内存占用数据,根据待计算网络层的参数量获得内存占用数据。
优选地,所述待计算网络层的参数量包括卷积层参数量、全连接层参数量;所述计算量数据包括卷积层计算量、全连接层计算量。
优选地,所述基于深度神经网络的边缘计算任务的分配方法,还包括步骤:
识别卷积层、全连接层,对神经网络中的各层进行分析,获得卷积层、全连接层。
采用上述技术方案,由于卷积层的计算量很大,而全连接层的参数量或内存占用很高,通过对卷积层、全连接层的计算,可以更为快速准确的计算神经网络的参数量或内存占用和计算量。
优选地,所述卷积层参数量为,
Figure GDA0002997277680000021
,
其中,Pl1为卷积层参数量,k1为卷积核的宽,k2为卷积核的高,
Figure GDA0002997277680000023
为卷积层输入通道数,
Figure GDA0002997277680000024
为卷积层输出通道数。
优选地,所述全连接层参数量为,
Figure GDA0002997277680000025
,
其中,Pl2为全连接层参数量,
Figure GDA0002997277680000027
为全连接层输入的宽,
Figure GDA0002997277680000028
为全连接层输出的宽。
优选地,所述内存占用为该层参数量的4倍。
优选地,所述卷积层计算量为,
Figure GDA0002997277680000029
,
其中,Fl1为卷积层计算量,
Figure GDA00029972776800000211
为卷积层输出的宽,
Figure GDA00029972776800000212
为卷积层输出的高,Pl1为卷积层参数量。
优选地,所述全连接层计算量为,
Fl2=2*Pl2,
其中,Fl2为全连接层计算量,Pl2为全连接层参数量。
优选地,所述终端设备计算任务的获得方法为,
Figure GDA0002997277680000031
,
其中,Fl为终端设备各网络层的计算量,sum(Fl)为分配到终端设备网络层的总计算量,α为可变参数,可以根据实际情况进行设定或调整,
Figure GDA0002997277680000033
为终端设备的计算能力。
采用上述技术方案,可以通过设置α以控制内存的占用,以避免内存成为计算瓶颈的情况发生,提高了处理效率。
优选地,sum(Fl)=Fl1+Fl2
优选地,
Figure GDA0002997277680000034
优选地,所述边缘服务器计算任务的获得方法为,
Figure GDA0002997277680000035
其中,Fe是分配到边缘服务器的计算任务,Fd是分配到设备的计算任务,N为边缘服务器连接的终端设备数量,K为所述边缘服务器CPU计算能力与相连的终端设备平均CPU计算能力之比。
优选地,Fd=Fl1+Fl2
优选地,所述判断剩余计算任务是否需要在云服务器执行的方法为:
判断剩余计算任务在边缘服务器的处理时间与在云服务器的处理时间,若边缘服务器的处理时间大于云服务器的处理时间,则所述剩余计算任务需要在云服务器执行,若边缘服务器的处理时间小于等于云服务器的处理时间,则所述剩余计算任务不需要在云服务器执行。
优选地,所述云服务器的处理时间为T1,云服务器的执行时间为T2,边缘服务器与云服务器之间的通信延迟时间为T3,则T1=T2+T3
采用上述技术方案,可以准确快速的对剩余计算任务作出判断,进行设备的最优分配。
优选地,所述通信延迟的获得方法为:
Figure GDA0002997277680000036
,
其中,
Figure GDA0002997277680000038
为通信延迟,M为数据包的大小,Tj为通信信道的建立时间,β为传输带宽。
优选地,所述基于深度神经网络的边缘计算任务的分配方法,还包括步骤:
方案部署,根据计算任务分配结果,将分配的网络层映射到对应设备上。
本发明的第二方面,本发明提供了一种基于深度神经网络的边缘计算任务的分配装置,所述装置包括:
参数量数据获取模块,用于计算神经网络中,待计算网络层的参数量;
计算量数据获取模块,用于根据待计算网络层的参数量获得计算量数据;
计算任务分配模块,用于根据计算量数据获得终端设备计算任务;根据终端设备计算任务获得边缘服务器的计算任务;判断剩余计算任务是否需要在云服务器执行,如需要,则将剩余计算任务分配至云服务器,如不需要,则将剩余计算任务分配至边缘服务器。
优选地,所述基于深度神经网络的边缘计算任务的分配装置,还包括:
内存占用数据获取模块,用于根据待计算网络层的参数量获得内存占用数据。
优选地,所述待计算网络层的参数量包括卷积层参数量、全连接层参数量;所述计算量数据包括卷积层计算量、全连接层计算量。
优选地,所述基于深度神经网络的边缘计算任务的分配装置,还包括:
识别模块,用于对神经网络中的各层进行分析,获得卷积层、全连接层。
优选地,所述卷积层参数量为,
Figure GDA0002997277680000041
,
其中,P11为卷积层参数量,k1为卷积核的宽,k2为卷积核的高,
Figure GDA0002997277680000043
为卷积层输入通道数,
Figure GDA0002997277680000044
为卷积层输出通道数。
优选地,所述全连接层参数量为,
Figure GDA0002997277680000045
,
其中,Pl2为全连接层参数量,
Figure GDA0002997277680000047
为全连接层输入的宽,
Figure GDA0002997277680000048
为全连接层输出的宽。
优选地,所述内存占用为该层参数量的4倍。
优选地,所述卷积层计算量为,
Figure GDA0002997277680000049
,
其中,Fl1为卷积层计算量,
Figure GDA00029972776800000411
为卷积层输出的宽,
Figure GDA00029972776800000412
为卷积层输出的高,Pl1为卷积层参数量。
优选地,所述全连接层计算量为,
Fl2=2*Pl2,
其中,Fl2为全连接层计算量,Pl2为全连接层参数量。
优选地,所述终端设备计算任务的获得方法为,
Figure GDA00029972776800000413
,
其中,Fl为终端设备各网络层的计算量,sum(Fl)为分配到终端设备网络层的总计算量,α为可变参数,可以根据实际情况进行设定或调整,
Figure GDA00029972776800000415
为终端设备的计算能力。
优选地,sum(Fl)=Fl1+Fl2
优选地,
Figure GDA00029972776800000416
优选地,所述边缘服务器计算任务的获得方法为,
Figure GDA0002997277680000051
其中,Fe是分配到边缘服务器的计算任务,Fd是分配到设备的计算任务,N为边缘服务器连接的终端设备数量,K为所述边缘服务器CPU计算能力与相连的终端设备平均CPU计算能力之比。
优选地,Fd=Fl1+Fl2
优选地,所述判断剩余计算任务是否需要在云服务器执行的方法为:
判断剩余计算任务在边缘服务器的处理时间与在云服务器的处理时间,若边缘服务器的处理时间大于云服务器的处理时间,则所述剩余计算任务需要在云服务器执行,若边缘服务器的处理时间小于等于云服务器的处理时间,则所述剩余计算任务不需要在云服务器执行。
优选地,所述云服务器的处理时间为T1,云服务器的执行时间为T2,边缘服务器与云服务器之间的通信延迟时间为T3,则T1=T2+T3
优选地,所述通信延迟的获得方法为:
Figure GDA0002997277680000052
,
其中,
Figure GDA0002997277680000054
为通信延迟,M为数据包的大小,Tj为通信信道的建立时间,β为传输带宽。
优选地,所述基于深度神经网络的边缘计算任务的分配装置,还包括:
方案部署模块,用于根据计算任务分配结果,将分配的网络层映射到对应设备上。
本发明的第三方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时能够实现如上所述的基于深度神经网络的边缘计算任务的分配方法。
本发明的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时能够实现如上所述的基于深度神经网络的边缘计算任务的分配方法。
本发明的有益效果:
1.本发明所提供的基于深度神经网络的边缘计算任务的分配方法,可以充分考虑各层设备的实时剩余计算资源情况,并在此基础上计算各层的参数量与计算量,得到对应的部署方案,通过计算任务的优化分配,实现各层设备计算能力的充分利用,提高处理效率。
2.本发明所提供的基于深度神经网络的边缘计算任务的分配方法,可以通过设置α以控制终端设备内存的占用,以避免内存成为计算瓶颈的情况发生,提高了处理效率。
3.本发明所提供的基于深度神经网络的边缘计算任务的分配方法,通过判断边缘服务器的处理时间与云服务器的处理时间的关系,可以准确快速的对剩余计算任务作出判断,进行设备的最优分配。
附图说明:
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一个优选实施方式中边缘计算任务分配方法的流程图;
图2为本发明另一个优选实施方式中边缘计算任务分配方法的的流程图;
图3为本发明一个优选实施方式中计算任务分配的流程图;
图4为本发明一个实施例中网络拓扑示意图;
图5为本发明一个实施例中参数量和计算量示意图。
具体实施方式:
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
以下将通过实施例对本发明进行详细描述。
以下对本申请涉及的一些概念进行解释:
1.神经网络:进行分布式并行信息处理的算法数学模型;
2.边缘服务器:与用户直接发生联系的前端服务器,为用户提供一个进入网络的通道和与其它服务器设备通讯的功能,通常边缘服务器是一组完成单一功能的服务器,如防火墙服务器,高速缓存服务器,负载均衡服务器,DNS服务器等;
3.卷积层:卷积神经网络中每层卷积层由若干卷积单元组成,每个卷积单元的参数都是通过反向传播算法最佳化得到的;
4.卷积核:又称滤波器,即图像处理时,给定输入图像,输入图像中一个小区域中像素加权平均后成为输出图像中的每个对应像素,其中权值由一个函数定义,这个函数称为卷积核;
5.全连接层:每一个结点都与上一层的所有结点相连,用于把前边提取到的特征综合起来。
本发明通过提供的一种基于深度神经网络的边缘计算任务的分配方法、装置、设备及存储介质,解决了现有技术中至少一项技术问题,达到了使各层设备的计算能力得到充分利用的效果。
本申请实施例的技术方案为解决上述技术问题,总体思路如下:
获得参数量数据,分别计算神经网络中,待计算网络层的参数量;获得计算量数据,根据待计算网络层的参数量获得计算量数据;计算任务分配,根据计算量数据获得终端设备计算任务;根据终端设备计算任务获得边缘服务器的计算任务;判断剩余计算任务是否需要在云服务器执行,如需要,则将剩余计算任务分配至云服务器,如不需要,则将剩余计算任务分配至边缘服务器。
采用上述技术方案,可以充分考虑各层设备的实时剩余计算资源情况,并在此基础上计算各层的参数量与计算量,得到对应的部署方案,通过计算任务的优化分配,实现各层设备计算能力的充分利用,提高处理效率。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
具体的,在本发明的一些实施例中,提供了一种基于深度神经网络的边缘计算任务的分配方法,如图1-图2所示,其步骤包括:
S102,获得参数量数据,分别计算神经网络中,待计算网络层的参数量;
在具体实施过程中,所述神经网络可以为卷积神经网络(Convolutional NeuralNetworks,CNN)、循环神经网络(Recurrent Neural Network,RNN)、深度置信网络(DeepBelief Networks,DBN)、生成式对抗网络(Generative Adversarial Networks,GAN)等神经网络模型,其中,待计算网络层为网络层中需要计算参数量的层,可以包括卷积层、全连接层、池化层、激活层中的一种或几种,并根据各个待计算网络层的特点对各层的参数量进行计算。
在本发明的一个可选实施方式中,所述待计算网络层的参数量包括卷积层参数量、全连接层参数量;所述计算量数据包括卷积层计算量、全连接层计算量。
在具体实施过程中,所述神经网络可以为卷积神经网络,其中,待计算网络层为卷积层、全连接层。其中,卷积层的计算量很大,而全连接层的内存占用很高,通过对卷积层、全连接层的计算,可以更为快速准确的计算神经网络的内存占用和计算量。
在本发明的一个可选实施方式中,所述基于深度神经网络的边缘计算任务的分配方法,还包括步骤S101,识别卷积层、全连接层,对神经网络中的各层进行分析,获得卷积层、全连接层。
采用上述技术方案,可以对卷积神经网络中的卷积层、全连接层进行快速识别,提高了本方法的计算效率。
在本发明的一个可选实施方式中,所述卷积层参数量为,
Figure GDA0002997277680000081
其中,Pl1为卷积层参数量,k1为卷积核的宽,k2为卷积核的高,
Figure GDA0002997277680000083
为卷积层输入通道数,
Figure GDA0002997277680000084
为卷积层输出通道数。
在具体实施过程中,卷积层通过逐像素点的计算,提取出一个区域内的特征。因此它的参数量与卷积核的大小直接相关,这四个参数分别是卷积核的四个维度。采用上述计算方法,可以更准确的计算出卷积层的参数量。
在本发明的一个可选实施方式中,所述全连接层参数量为,
Figure GDA0002997277680000085
其中,Pl2为全连接层参数量,
Figure GDA0002997277680000087
为全连接层输入的宽,
Figure GDA0002997277680000088
为全连接层输出的宽。
在具体实施过程中,所述全连接层每个输出都有与每个输入的连接,因此全连接层的参数量就是这个由输入和输出组成的二维矩阵的参数。
在本发明的一个可选实施方式中,所述基于深度神经网络的边缘计算任务的分配方法,还包括步骤S104,获得内存占用数据,根据待计算网络层的参数量获得内存占用数据;
在具体实施过程中,由于在计算机系统中,每个类型的数据有固定的内存占用。浮点数的默认字长为32,也就是4个字节,因此一个网络层的内存占用(字节)就是参数量*4,因此,所述内存占用为该层参数量的4倍。
S106,获得计算量数据,根据待计算网络层的参数量获得计算量数据;
在具体实施过程中,计算量指的是浮点计算次数,全连接层和卷积层的浮点计算次数可以根据参数量计算得出。
在本发明的一个可选实施方式中,所述卷积层计算量为,
Figure GDA0002997277680000089
其中,Fl1为卷积层计算量,
Figure GDA00029972776800000811
为卷积层输出的宽,
Figure GDA00029972776800000812
为卷积层输出的高,Pl1为卷积层参数量。
在具体实施过程中,由于卷积操作是逐像素的,它的计算量与输出的宽和高直接相关。
在本发明的一个可选实施方式中,所述全连接层计算量为,
Fl2=2*Pl2
其中,Fl2为全连接层计算量,Pl2为全连接层参数量。
S108,计算任务分配,参照图3所示,根据计算量数据获得终端设备计算任务;根据终端设备计算任务获得边缘服务器的计算任务;判断剩余计算任务是否需要在云服务器执行,如需要,则将剩余计算任务分配至云服务器,如不需要,则将剩余计算任务分配至边缘服务器。
在本发明的一个可选实施方式中,所述终端设备计算任务的获得方法为,
Figure GDA0002997277680000091
其中,Fl为终端设备各网络层的计算量,sum(Fl)为分配到终端设备网络层的总计算量,α为可变参数,可以根据实际情况进行设定或调整,
Figure GDA0002997277680000093
为终端设备的计算能力。
在具体实施过程中,继续参照图3,在计算任务分配时,可以先对终端设备的计算任务进行分配。进行终端设备的内存和计算能力均较小,内存更容易成为计算过程中的瓶颈。针对上述神经网络的特点,本发明提供了上述算法,在终端设备分配浅层的、参数少的网络,在使用很少的内存下完成部分神经网络的推理。进一步地,终端设备的计算能力可以表示为设备CPU的计算能力,即设备CPU的主频*核心数,采用上述技术方案,可以通过设置α以控制内存的占用,以避免内存成为计算瓶颈的情况发生,提高了处理效率。
在本发明的一个可选实施方式中,sum(Fl)=Fl1+Fl2
在具体实施过程中,当所述神经网络为卷积神经网络时,分配到终端设备网络层的总计算量可以表示为卷积层计算量与全连接层计算量之和。
在本发明的一个可选实施方式中,所述边缘服务器计算任务的获得方法为,
Figure GDA0002997277680000094
其中,Fe是分配到边缘服务器的计算任务,Fd是分配到设备的计算任务,N为边缘服务器连接的终端设备数量,K为所述边缘服务器CPU计算能力与相连的终端设备平均CPU计算能力之比。
在具体实施过程中,在计算任务分配时,可以在对终端设备的计算任务进行分配后,对边缘服务器的任务进行分配。系统中边缘服务器可能会接收多个终端设备的输出,云服务器可能会接收多个边缘服务器的输出。进一步地,如果Fe大于等于剩余计算任务的计算量,那么将剩余计算任务全部分配给边缘服务器,如果Fe小于剩余计算任务的计算量,则将Fe对应的计算任务分配给边缘服务器。采用上述技术方案,可以更合理的对边缘服务器进行计算任务的分配,防止出现超出边缘服务器计算力限制的情况。
在本发明的一个可选实施方式中,Fd=Fl1+Fl2
在具体实施过程中,当所述神经网络为卷积神经网络时,分配到终端设备网络层的总计算量可以表示为卷积层计算量与全连接层计算量之和。
在本发明的一个可选实施方式中,所述判断剩余计算任务是否需要在云服务器执行的方法为:
判断剩余计算任务在边缘服务器的处理时间与在云服务器的处理时间,若边缘服务器的处理时间大于云服务器的处理时间,则所述剩余计算任务需要在云服务器执行,若边缘服务器的处理时间小于等于云服务器的处理时间,则所述剩余计算任务不需要在云服务器执行。
在具体实施过程中,在计算任务分配时,可以在对边缘服务器的任务进行分配后,对云服务器的计算任务进行分配。一般情况下,边缘与云的通信时延对神经网络的推理速度有影响,因此本发明所提供的技术方案中,对剩余计算任务在边缘服务器的处理时间与在云服务器的处理时间进行比较,以获得计算任务分配的最优选择。
在本发明的一个可选实施方式中,所述云服务器的处理时间为T1,云服务器的执行时间为T2,边缘服务器与云服务器之间的通信延迟时间为T3,则T1=T2+T3
在具体实施过程中,所述云服务器的执行时间为该计算任务在云服务器中计算所需的时间;其中,所述通信延迟的计算方法可以为:
Figure GDA0002997277680000101
,
其中,
Figure GDA0002997277680000103
为通信延迟,M为数据包的大小,Tj为通信信道的建立时间,β为传输带宽。采用上述技术方案,可以准确快速的对剩余计算任务作出判断,进行设备的最优分配。
在本发明的一个可选实施方式中,所述基于深度神经网络的边缘计算任务的分配方法,还包括步骤:
S109,方案部署,根据计算任务分配结果,将分配的网络层映射到对应设备上。
在具体实施过程中,当上述计算任务在对应设备上装载完成后,即可以执行网络的推理。
具体地,本发明以一个卷积神经网络VGG16的分配为例,描述一次资源调度过程。在本实施例中,共有11个设备,其中有8个终端设备,2个边缘设备,1个云服务器,其中4个终端设备连接1个边缘设备,2个边缘设备连接云服务器。这三种设备的性能参数如表1所示:
表1
设备 内核数 内存空间(M)
终端设备 1 512
边缘设备 4 4096
云服务器 10 10240
S101,识别卷积层、全连接层,对目标神经网络的拓扑进行分析,如图4所示,其中,Conv表示卷积层,FC表示全连接层,Input表示输入层,Output表示输出层,Maxpool表示池化层,Softmax表示激活层。识别出VGG16共有13个卷积层和3个全连接层。
S102,获得参数量数据,对上述步骤中识别的13个卷积层和3个全连接层进行参数量计算。根据卷积层和全连接层的参数量计算公式进行参数量的计算,VGG16各层的参数占用如表2所示:
表2
Figure GDA0002997277680000111
Figure GDA0002997277680000121
S106,获得计算量数据,对VGG16中的卷积层和全连接层进行浮点计算次数的统计,网络各层的浮点计算次数如表3所示:
表3
网络层 MFLOPS
Conv1 82.69
Conv2 1,764
Conv3 882
Conv4 1,764
Conv5 882
Conv6 1,764
Conv7 1,764
Conv8 882
Conv9 1,764
Conv10 1,764
Conv11 441
Conv12 441
Conv13 441
FC1 98
FC2 16
FC3 4.096
其中,该网络的参数量和计算量如图5所示,其中,Parameters size(M)表示参数量,Mflops(accumulated)表示累计计算量。
S108,计算任务分配,得到VGG16的参数量、计算量以及设备通信延迟后,按照预设的方案进行网络的分割。首先计算终端设备承担的计算任务,接下来计算边缘设备承担的计算任务与云服务器是否承担计算任务。通过手动设置α的值为1、2、3,得到三种分配方案。
S109,方案部署,网络分割做完后,按照方案将VGG16的网络层分配给对应的设备。装在完成后,便可以执行网络的推理。
本发明的另一些实施例提供了一种基于深度神经网络的边缘计算任务的分配装置,所述装置包括:
参数量数据获取模块,用于计算神经网络中,待计算网络层的参数量;
内存占用数据获取模块,用于根据待计算网络层的参数量获得内存占用数据;
计算量数据获取模块,用于根据待计算网络层的参数量获得计算量数据;
计算任务分配模块,用于根据计算量数据获得终端设备计算任务;根据终端设备计算任务获得边缘服务器的计算任务;判断剩余计算任务是否需要在云服务器执行,如需要,则将剩余计算任务分配至云服务器,如不需要,则将剩余计算任务分配至边缘服务器。
在本发明的一个可选实施方式中,所述待计算网络层的参数量包括卷积层参数量、全连接层参数量;所述计算量数据包括卷积层计算量、全连接层计算量。
在本发明的一个可选实施方式中,所述基于深度神经网络的边缘计算任务的分配装置,还包括:
识别模块,用于对神经网络中的各层进行分析,获得卷积层、全连接层。
在本发明的一个可选实施方式中,所述卷积层参数量为,
Figure GDA00029972776800001311
其中,Pl1为卷积层参数量,k1为卷积核的宽,k2为卷积核的高,
Figure GDA00029972776800001312
为卷积层输入通道数,
Figure GDA00029972776800001313
为卷积层输出通道数。
在本发明的一个可选实施方式中,所述全连接层参数量为,
Figure GDA0002997277680000131
其中,Pl2为全连接层参数量,
Figure GDA0002997277680000133
为全连接层输入的宽,
Figure GDA0002997277680000134
为全连接层输出的宽。
在本发明的一个可选实施方式中,所述内存占用为该层参数量的4倍。
在本发明的一个可选实施方式中,所述卷积层计算量为,
Figure GDA0002997277680000135
其中,Fl1为卷积层计算量,
Figure GDA0002997277680000137
为卷积层输出的宽,
Figure GDA0002997277680000138
为卷积层输出的高,Pl1为卷积层参数量。
在本发明的一个可选实施方式中,所述全连接层计算量为,
Fl2=2*Pl2
其中,Fl2为全连接层计算量,Pl2为全连接层参数量。
在本发明的一个可选实施方式中,所述终端设备计算任务的获得方法为,
Figure GDA0002997277680000139
其中,Fl为终端设备各网络层的计算量,sum(Fl)为分配到终端设备网络层的总计算量,α为可变参数,可以根据实际情况进行设定或调整,
Figure GDA0002997277680000141
为终端设备的计算能力。
在本发明的一个可选实施方式中,sum(Fl)=Fl1+Fl2
在本发明的一个可选实施方式中,
Figure GDA0002997277680000142
在本发明的一个可选实施方式中,所述边缘服务器计算任务的获得方法为,
Figure GDA0002997277680000143
其中,Fe是分配到边缘服务器的计算任务,Fd是分配到设备的计算任务,N为边缘服务器连接的终端设备数量,K为所述边缘服务器CPU计算能力与相连的终端设备平均CPU计算能力之比。
在本发明的一个可选实施方式中,Fd=Fl1+Fl2
在本发明的一个可选实施方式中,所述判断剩余计算任务是否需要在云服务器执行的方法为:
判断剩余计算任务在边缘服务器的处理时间与在云服务器的处理时间,若边缘服务器的处理时间大于云服务器的处理时间,则所述剩余计算任务需要在云服务器执行,若边缘服务器的处理时间小于等于云服务器的处理时间,则所述剩余计算任务不需要在云服务器执行。
在本发明的一个可选实施方式中,所述云服务器的处理时间为T1,云服务器的执行时间为T2,边缘服务器与云服务器之间的通信延迟时间为T3,则T1=T2+T3
在本发明的一个可选实施方式中,所述通信延迟的获得方法为:
Figure GDA0002997277680000144
其中,
Figure GDA0002997277680000146
为通信延迟,M为数据包的大小,Tj为通信信道的建立时间,β为传输带宽。
在本发明的一个可选实施方式中,所述基于深度神经网络的边缘计算任务的分配装置,还包括:
方案部署模块,用于根据计算任务分配结果,将分配的网络层映射到对应设备上。
在上述实施例中,通过参数量数据获取模块、内存占用数据获取模块、计算量数据获取模块、计算任务分配模块等实现上述实施例中所述的方法,因而具有上述任一实施例中的全部有益效果,在此不再赘述。
本发明的另一些实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时能够实现如上所述的基于深度神经网络的边缘计算任务的分配方法。
在这些实施例中,所述电子设备包括存储器及处理器,所述存储器上至少有一条指令,所述至少一条指令由所述处理器加载并执行,以实现上述实施例中所述的方法,因而具有上述任一实施例中的分配方法的全部有益效果,在此不再赘述。
本发明的另一些实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时能够实现如上所述的基于深度神经网络的边缘计算任务的分配方法。
在这些实施例中,计算机可读存储介质上存储有计算机程序,在计算机被处理器执行时实现上述任一实施例中的分配方法的步骤,因而具有上述任一实施例中的分配方法的全部有益效果,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
应当理解,本申请实施例中,从权、各个实施例、特征可以互相组合结合,都能实现解决前述技术问题。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例无埋点数据采集方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例无埋点数据采集装置中的单元可以根据实际需要进行合并、划分和删减。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种基于深度神经网络的边缘计算任务的分配方法,其特征在于:其步骤包括:
获得参数量数据,分别计算神经网络中,待计算网络层的参数量;
获得计算量数据,根据待计算网络层的参数量获得计算量数据;
计算任务分配,根据计算量数据获得终端设备计算任务;根据终端设备计算任务获得边缘服务器的计算任务;判断剩余计算任务是否需要在云服务器执行,如需要,则将剩余计算任务分配至云服务器,如不需要,则将剩余计算任务分配至边缘服务器。
2.根据权利要求1所述的基于深度神经网络的边缘计算任务的分配方法,其特征在于:所述待计算网络层的参数量包括卷积层参数量、全连接层参数量;所述计算量数据包括卷积层计算量、全连接层计算量。
3.根据权利要求2所述的基于深度神经网络的边缘计算任务的分配方法,其特征在于:所述卷积层参数量为,
Figure FDA0002997277670000011
其中,Pl1为卷积层参数量,k1为卷积核的宽,k2为卷积核的高,
Figure FDA0002997277670000012
为卷积层输入通道数,
Figure FDA0002997277670000013
为卷积层输出通道数。
4.根据权利要求2或3所述的基于深度神经网络的边缘计算任务的分配方法,其特征在于:所述全连接层参数量为,
Figure FDA0002997277670000014
其中,Pl2为全连接层参数量,
Figure FDA0002997277670000015
为全连接层输入的宽,
Figure FDA0002997277670000016
为全连接层输出的宽。
5.根据权利要求4所述的基于深度神经网络的边缘计算任务的分配方法,其特征在于:所述卷积层计算量为,
Figure FDA0002997277670000017
其中,Fl1为卷积层计算量,
Figure FDA0002997277670000018
为卷积层输出的宽,
Figure FDA0002997277670000019
为卷积层输出的高,Pl1为卷积层参数量。
6.根据权利要求5所述的基于深度神经网络的边缘计算任务的分配方法,其特征在于:所述全连接层计算量为,
Fl2=2*Pl2
其中,Fl2为全连接层计算量,Pl2为全连接层参数量。
7.根据权利要求5或6所述的基于深度神经网络的边缘计算任务的分配方法,其特征在于:所述终端设备计算任务的获得方法为,
Figure FDA00029972776700000110
其中,Fl为终端设备各网络层的计算量,sum(Fl)为分配到终端设备网络层的总计算量,α为可变参数,
Figure FDA00029972776700000111
为终端设备的计算能力。
8.根据权利要求7所述的基于深度神经网络的边缘计算任务的分配方法,其特征在于:所述边缘服务器计算任务的获得方法为,
Figure FDA0002997277670000021
其中,Fe是分配到边缘服务器的计算任务,Fd是分配到设备的计算任务,N为边缘服务器连接的终端设备数量,K为所述边缘服务器CPU计算能力与相连的终端设备平均CPU计算能力之比。
9.一种基于深度神经网络的边缘计算任务的分配装置,所述装置包括:
参数量数据获取模块,用于计算神经网络中,待计算网络层的参数量;
计算量数据获取模块,用于根据待计算网络层的参数量获得计算量数据;
计算任务分配模块,用于根据计算量数据获得终端设备计算任务;根据终端设备计算任务获得边缘服务器的计算任务;判断剩余计算任务是否需要在云服务器执行,如需要,则将剩余计算任务分配至云服务器,如不需要,则将剩余计算任务分配至边缘服务器。
10.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时能够实现如权利要求1-8任一项所述的基于深度神经网络的边缘计算任务的分配方法。
CN201911421262.4A 2019-12-31 2019-12-31 一种基于深度神经网络的边缘计算任务的分配方法及装置 Active CN111176820B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911421262.4A CN111176820B (zh) 2019-12-31 2019-12-31 一种基于深度神经网络的边缘计算任务的分配方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911421262.4A CN111176820B (zh) 2019-12-31 2019-12-31 一种基于深度神经网络的边缘计算任务的分配方法及装置

Publications (2)

Publication Number Publication Date
CN111176820A CN111176820A (zh) 2020-05-19
CN111176820B true CN111176820B (zh) 2021-06-25

Family

ID=70657770

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911421262.4A Active CN111176820B (zh) 2019-12-31 2019-12-31 一种基于深度神经网络的边缘计算任务的分配方法及装置

Country Status (1)

Country Link
CN (1) CN111176820B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111738084A (zh) * 2020-05-21 2020-10-02 山东大学 基于cpu-gpu异构多处理器片上系统的实时目标检测方法及系统
CN111782359B (zh) * 2020-06-23 2022-03-11 平安科技(深圳)有限公司 分布式计算系统任务分配方法及相关设备
CN112084017B (zh) * 2020-07-30 2024-04-19 北京聚云科技有限公司 一种内存管理方法、装置、电子设备及存储介质
CN111814967B (zh) * 2020-09-11 2021-02-23 鹏城实验室 神经网络模型的推理运算量计算方法、设备及存储介质
CN111814978A (zh) * 2020-09-11 2020-10-23 鹏城实验室 神经网络模型的训练计算量计算方法、设备及介质
CN113938957A (zh) * 2021-12-06 2022-01-14 太平洋电信股份有限公司 网络边缘设备的计算分配方法及系统
CN115858131B (zh) * 2023-02-22 2023-05-16 山东海量信息技术研究院 一种任务执行方法、系统、设备及可读存储介质
CN116166341A (zh) * 2023-04-25 2023-05-26 中国人民解放军军事科学院系统工程研究院 一种基于深度学习的静态云边协同架构函数计算卸载方法
CN117114113B (zh) * 2023-10-24 2023-12-29 南京邮电大学 一种基于排队论的协同推理加速方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108847981A (zh) * 2018-06-26 2018-11-20 咸宁职业技术学院 分布式计算机云计算处理方法
CN109343942A (zh) * 2018-09-03 2019-02-15 北京邮电大学 基于边缘计算网络的任务调度方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10095552B2 (en) * 2016-02-05 2018-10-09 Sas Institute Inc. Automated transfer of objects among federated areas
US20190114548A1 (en) * 2017-10-17 2019-04-18 Xilinx, Inc. Static block scheduling in massively parallel software defined hardware systems
CN108399362B (zh) * 2018-01-24 2022-01-07 中山大学 一种快速行人检测方法及装置
US10942767B2 (en) * 2018-02-27 2021-03-09 Microsoft Technology Licensing, Llc Deep neural network workload scheduling
CN109995860B (zh) * 2019-03-29 2022-03-04 南京邮电大学 一种vanet中基于边缘计算的深度学习任务分配算法
CN110516606A (zh) * 2019-08-28 2019-11-29 北京观微科技有限公司 高分辨率卫星影像任意方向舰船目标检测方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108847981A (zh) * 2018-06-26 2018-11-20 咸宁职业技术学院 分布式计算机云计算处理方法
CN109343942A (zh) * 2018-09-03 2019-02-15 北京邮电大学 基于边缘计算网络的任务调度方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"移动边缘计算中能耗优化的多重资源计算卸载策略";徐佳等;《计算机集成制造系统》;20190430;第25卷(第4期);第954-961页 *

Also Published As

Publication number Publication date
CN111176820A (zh) 2020-05-19

Similar Documents

Publication Publication Date Title
CN111176820B (zh) 一种基于深度神经网络的边缘计算任务的分配方法及装置
Wang et al. Computation offloading in multi-access edge computing using a deep sequential model based on reinforcement learning
CN113950066B (zh) 移动边缘环境下单服务器部分计算卸载方法、系统、设备
WO2020094060A1 (zh) 推荐方法及装置
CN107038064B (zh) 虚拟机管理方法及装置、存储介质
US11348004B2 (en) Method of managing data representation for deep learning, method of processing data for deep learning and deep learning system performing the same
CN109843401B (zh) 一种ai对象行为模型优化方法以及装置
US20190114541A1 (en) Method and system of controlling computing operations based on early-stop in deep neural network
CN110968423A (zh) 使用机器学习将工作负荷分配给加速器的方法和设备
CN112162861B (zh) 线程分配方法、装置、计算机设备及存储介质
CN109325530B (zh) 一种图像分类方法、存储装置和处理装置
CN111931901A (zh) 一种神经网络构建方法以及装置
CN114265631A (zh) 一种基于联邦元学习的移动边缘计算智能卸载方法及装置
CN111985597A (zh) 模型压缩方法及装置
CN114494553B (zh) 基于渲染时间估计和lod选择的实时渲染方法、系统及设备
Xu et al. Computation offloading algorithm for cloud robot based on improved game theory
CN116541106A (zh) 计算任务卸载方法、计算设备及存储介质
CN111158893B (zh) 应用于雾计算网络的任务卸载方法、系统、设备及介质
CN117311998B (zh) 一种大模型部署方法及系统
CN114118403A (zh) 神经网络架构搜索方法、装置、存储介质及电子设备
CN111160516A (zh) 一种深度神经网络的卷积层稀疏化方法及装置
CN116932086A (zh) 一种基于哈里斯鹰算法的移动边缘计算卸载方法及系统
CN113254215B (zh) 数据处理方法和装置、存储介质及电子设备
CN113992520B (zh) 一种虚拟网络资源的部署方法和系统
CN115665869A (zh) 基于边缘计算和有向无环图的多用户协作平台及其方法

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
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 450000 8 / F, creative island building, no.6, Zhongdao East Road, Zhengdong New District, Zhengzhou City, Henan Province

Patentee after: China Science and technology big data Research Institute

Address before: 450000 8 / F, creative island building, no.6, Zhongdao East Road, Zhengdong New District, Zhengzhou City, Henan Province

Patentee before: Big data Research Institute Institute of computing technology Chinese Academy of Sciences

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240115

Address after: No. 1815, 18th Floor, Building A, Kelly International, No. 50 Shoufeng Street, Zhengzhou Area (Zhengdong), Henan Pilot Free Trade Zone, Zhengzhou City, Henan Province, 450000

Patentee after: Zhongxuan Shulian Technology (Henan) Co.,Ltd.

Address before: 450000 8 / F, creative island building, no.6, Zhongdao East Road, Zhengdong New District, Zhengzhou City, Henan Province

Patentee before: China Science and technology big data Research Institute