CN115906941A - 神经网络自适应退出方法、装置、设备及可读存储介质 - Google Patents
神经网络自适应退出方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN115906941A CN115906941A CN202211433435.6A CN202211433435A CN115906941A CN 115906941 A CN115906941 A CN 115906941A CN 202211433435 A CN202211433435 A CN 202211433435A CN 115906941 A CN115906941 A CN 115906941A
- Authority
- CN
- China
- Prior art keywords
- exit
- image data
- network model
- branch
- point
- 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.)
- Granted
Links
Images
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请公开了一种神经网络自适应退出方法、装置、设备及可读存储介质,该方法包括步骤:获取待处理的图像数据,以及获取场景要求;将所述图像数据输入至多退出点网络模型;所述多退出点网络模型为基于图像训练样本和所述图像训练样本的信息标签对待训练的多分支网络模型进行迭代训练得到的,所述多分支网络模型共有预设数量个退出分支;选取所述多退出点网络模型中符合所述场景要求的退出分支,并基于所述退出分支,完成对所述图像数据的分类处理任务。本申请实现了获取待处理的图像数据,以及获取场景要求,将图像数据输入至多退出点网络模型,并选取该网络模型中符合场景要求的退出分支,以完成对所述图像数据的分类处理任务。
Description
技术领域
本申请涉及神经网络模型领域,尤其涉及一种神经网络自适应退出方法、装置、设备及可读存储介质。
背景技术
相比传统的机器学习,神经网络能提取更多有效的特征数据,并展现更出色的精度性能,但需要耗费大量的计算和存储资源。同时随着神经网络方面的不断发展,出现越来越多复杂的神经网络模型,虽然该类神经网络模型的精度提升了,但是其推理时间同样延长了。
针对需要神经网络模型极短时间响应的场景时,当前神经网络模型执行全部的神经网络的计算层时,该神经网络模型的推理效率无法满足当前场景的响应要求。
发明内容
有鉴于此,本申请提供一种神经网络自适应退出方法、装置、设备及可读存储介质,旨在提高神经网络模型对不同场景的适应性。
为实现上述目的,本申请提供一种神经网络自适应退出方法,所述神经网络自适应退出方法包括以下步骤:
获取待处理的图像数据,以及获取场景要求;
将所述图像数据输入至多退出点网络模型;所述多退出点网络模型为基于图像训练样本和所述图像训练样本的信息标签对待训练的多分支网络模型进行迭代训练得到的,所述多分支网络模型共有预设数量个退出分支;
选取所述多退出点网络模型中符合所述场景要求的退出分支,并基于所述退出分支,完成对所述图像数据的分类处理任务。
示例性的,所述选取所述多退出点网络模型中符合所述场景要求的退出分支,包括:
计算所述多退出点网络模型的各退出分支的退出时延,以及计算所述各退出分支的退出精度;
选取所述退出时延和/或所述退出精度符合所述场景要求的退出分支;
若不存在符合所述场景要求的退出分支,则选取所述各退出分支中退出时延最低的退出分支。
示例性的,所述选取所述退出时延和/或所述退出精度符合所述场景要求的退出分支,包括:
在所述场景要求包括时延要求和精度要求时,确定所述各退出分支的退出精度是否满足所述精度要求;
若不满足,则选取所述各退出分支中退出时延最低的退出分支。
示例性的,所述计算所述多退出点网络模型的各退出分支的退出时延,包括:
计算所述图像数据压缩过程所需的压缩时延,以及计算回复压缩后的图像数据的恢复时延;
计算所述多退出点网络模型中本地设备网络层和服务器端网络层之间的数据传输延迟;
计算所述多退出点网络模型的各退出分支的网络推理时延;
基于所述压缩时延、所述恢复时延、所述数据传输延迟和所述网络推理时延,计算所述各退出分支的退出时延。
示例性的,所述多退出点网络模型包括本地设备网络层和服务器端网络层,所述将所述图像数据输入至多退出点网络模型,包括:
将所述图像数据输入至本地设备网络层,并基于所述本地设备网络层,对所述图像数据进行压缩处理,以降低所述设备网络层与服务器端网络层之间数据传输的时延;
将压缩后的图像数据输入至所述服务器端网络层,并基于所述服务器端网络层,对所述压缩后的图像数据进行恢复处理,并对所述恢复后的数据进行分类处理任务。
示例性的,所述将压缩后的图像数据输入至所述服务器端网络层,包括:
提取所述图像数据的张量数据;
将所述张量数据转化为字节类型数据,并将所述字节类型数据转化为灰度图;
将所述灰度图输入至所述服务器端网络层。
示例性的,所述将所述图像数据输入至多退出点网络模型之前,包括:
获取所述图像数据组成的训练集;
将所述训练集输入至预设的多退出点网络模型;
基于所述多退出点网络模型,计算各退出点的输出值,并基于所述输出值,并计算所述各退出点的损失值的加权和;
基于所述损失值的加权和,计算所述各退出点的精度值;
若所述各退出点中的最后一个退出点的精度值大于当前网络精度值,则保存所述最后一个退出点的精度值,直至迭代训练结束。
示例性的,为实现上述目的,本申请还提供一种神经网络自适应退出装置,所述装置包括:
获取模块,用于获取待处理的图像数据,以及获取场景要求;
输入模块,用于将所述图像数据输入至多退出点网络模型;所述多退出点网络模型为基于图像训练样本和所述图像训练样本的信息标签对待训练的多分支网络模型进行迭代训练得到的,所述多分支网络模型共有预设数量个退出分支;
选取模块,用于选取所述多退出点网络模型中符合所述场景要求的退出分支,并基于所述退出分支,完成对所述图像数据的分类处理任务。
示例性的,为实现上述目的,本申请还提供一种神经网络自适应退出设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的神经网络自适应退出程序,所述神经网络自适应退出程序配置为实现如上所述的神经网络自适应退出方法的步骤。
示例性的,为实现上述目的,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有神经网络自适应退出程序,所述神经网络自适应退出程序被处理器执行时实现如上所述的神经网络自适应退出方法的步骤。
与现有技术中,针对需要神经网络模型极短时间响应的场景时,复杂的神经网络模型因其运算网络层的层数多,计算和推理的时延无法满足场景中的响应要求的情况相比,在本申请中,获取待处理的图像数据,以及获取场景要求,将图像数据输入至多退出点网络模型,该多退出点模型基于图像训练样本和图像训练样本的信息标签对待训练的多分支网络模型进行迭代训练得到的,在该多分支网络模型共设有预设数量个退出分支,并根据场景要求,从多推出点网络模型中选取出符合场景要求的退出分支,并根据该退出分支,完成对图像数据的分类处理任务,即选择多退出点网络模型,并根据场景要求,从该网络模型中选取出符合要求的退出分支,并使用该网络模型中的符合要求的退出分支对图像数据进行分类处理,以完成分类处理任务,从而使得通过多退出点网络模型中符合场景要求的退出分支执行相应的分类处理任务,进而达到提高神经网络模型对不同场景的适应性的效果。
附图说明
图1为本申请神经网络自适应退出方法第一实施例的流程示意图;
图2为本申请神经网络自适应退出方法第二实施例的流程示意图;
图3为本申请多退出点网络模型的部署结构示意图;
图4为本申请压缩图像数据和恢复图像数据的压缩单元流程示意图;
图5为本申请神经网络自适应退出方法第二实施例的流程示意图;
图6为本申请压缩图像数据和恢复图像数据时的数据类型变化流程图;
图7为本申请实施例方案涉及的硬件运行环境的结构示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供一种神经网络自适应退出方法,参照图1,图1为本申请神经网络自适应退出方法第一实施例的流程示意图。
本申请实施例提供了神经网络自适应退出方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。为了便于描述,以下省略执行主体描述神经网络自适应退出方法的各个步骤,神经网络自适应退出方法包括:
步骤S110:获取待处理的图像数据,以及获取场景要求;
待处理的图像数据为待进行识别、分类的图像数据。
示例性的,获取到一定数量的图像数据,该图像数据的来源为监控设备,需从图像数据中识别出包含特定物体的图像,此时,该图像数据即为待进行识别处理的图像数据,又例如,获取到一定数量的图像数据,该图像数据涵盖了多种场景,此时需从该图像数据中分类出包含特定场景一、特定场景二和特定场景三等类别的图像,此时,该图像数据即为待进行分类处理的图像数据。
其中,特定场景或特定物体可为任一设定的场景或物体。
场景要求为上述特定场景中,需要神经网络模型对图像数据进行分类处理的处理时间要求或精度要求,或处理时间与精度要求。即可大体分为时延要求和精度要求。
步骤S120:将所述图像数据输入至多退出点网络模型;所述多退出点网络模型为基于图像训练样本和所述图像训练样本的信息标签对待训练的多分支网络模型进行迭代训练得到的,所述多分支网络模型共有预设数量个退出分支;
将图像数据输入至多退出点网络模型时,即可通过该多退出点网络模型的网络运算层对图像数据进行特征提取、分类等过程,最终在退出点退出的结果即为对图像数据进行分类的结果。
其中,多退出点网络模型基于图像训练样本和图像训练样本的信息标签对待训练的多分支网络模型进行训练得到的,其中,涉及相关的图像分类过程中标签生成、生成的标签与信息标签比对、和梯度运算的过程,此类过程为通用技术,在此不再赘述。
示例性的,多退出点网络模型存在预设数量个退出分支,即通过该多退出点网络模型,可得到不同退出时间和不同退出精度的预设数量个退出结果。
其中,退出时间和退出精度根据预设数量个的退出分支而确定,退出分支的退出时延越短,该退出分支的退出结果的输出越快,退出时延速度最快的退出分支的退出精度会比其他退出时延长一点的退出分支处理的数据精度低。
其中,预设数量为三个、四个或五个均可,具体的分支数量根据实际场景的要求而定。
示例性的,所述将所述图像数据输入至多退出点网络模型之前,包括:
步骤a:获取所述图像数据组成的训练集;
训练集为用于训练模型的数据集,该数据集由图像数据组成。
图像数据可为任一形式的图像,例如,监控采集到的图像、移动终端采集到的图像、物联网设备采集到的图像等。
步骤b:将所述训练集输入至预设的多退出点网络模型;
将训练集输入至预设的多退出点网络模型,其中,预设的多退出点网络模型即为待训练的多分支网络模型,对该待训练的多分支网络模型进行训练,即可得到能够对图像进行分类处理的多退出点网络模型。
图像分类任务简单分为特征提取和分类两个步骤,因此,训练内容也针对该两个过程进行。
步骤c:基于所述多退出点网络模型,计算各退出点的输出值,并基于所述输出值,并计算所述各退出点的损失值的加权和;
步骤d:基于所述损失值的加权和,计算所述各退出点的精度值;
深度学习的分类任务通常采用交叉熵损失函数计算输出向量与标签值的误差,并通过反向传播将误差传递至前一层网络,同时采用梯度下降等算法更新网络模型的参数。交叉熵损失函数的计算式如(1-1)所示:
对于多退出点网络模型,需要进一步计算每个损失点的损失值,并在之后计算其加权和,以该多退出点网络模型的退出点为4个为例进行阐述,其损失值Lm是4个退出点损失值的加权和,Lm的计算式如(1-2)所示:
其中,w1+w2+w3+w4=1,yi表示退出点i的输出向量,Li表示yi与标签之间的损失值,且i={1,2,3,4}。为了保证每个退出点的损失值加权具有公平性,设定w1=w2=w3=w4=0.25。
在计算得到损失值的加权和之后,进一步地对输出的向量和标签值误差,执行计算梯度的算法等,均为通用技术,在此不再赘述。
步骤e:若所述各退出点中的最后一个退出点的精度值大于当前网络精度值,则保存所述最后一个退出点的精度值,直至迭代训练结束。
针对多退出点网络模型,需要保证模型的整体精度,即需要保证该网络模型最后输出的结果的精准度符合要求,该要求根据实际应用场景下的实际精度要求而定,例如,物联网设备需要高精度毫米级的操作,在对图像数据分类后,所需的分类精度需对应物联网设备的所需的精度。
而该多退出点网络模型存在多个退出分支,退出分支的主要目的为提前退出,以结束相应的推理过程,因此,提前结束推理过程退出分支以牺牲了推理过程的时延,从而提前退出,提前退出的退出分支的退出精度并不能作为该网络模型的整体精度,在这里限定用多退出点网络模型的最后一个退出点的精度,作为整个网络模型的最高精度要求。
因此,在计算各退出点的精度值后,进一步比对各退出点中最后一个退出点的精度值和当前网络精度值之间的大小,并选取比对后,数值最大的精度值作为整个网络模型的精度值,不断对精度值进行更新,直至整个模型的迭代训练结束。
步骤S130:选取所述多退出点网络模型中符合所述场景要求的退出分支,并基于所述退出分支,完成对所述图像数据的分类处理任务。
多退出点网络模型中存在多个退出点,每个退出点的退出时延和退出精度都存在不同,因此,可根据场景要求的所需,选择不同的退出分支,例如,选取最快完成分类任务的退出分支,又例如,选取精度最高的退出分支,又例如,选取出精度高且时延低的退出分支等。
根据选取出的符合场景要求的退出分支,对图像数据进行相应分类处理,从而完成对所述图像数据的分类处理任务。
与现有技术中,针对需要神经网络模型极短时间响应的场景时,复杂的神经网络模型因其运算网络层的层数多,计算和推理的时延无法满足场景中的响应要求的情况相比,在本申请中,获取待处理的图像数据,以及获取场景要求,将图像数据输入至多退出点网络模型,该多退出点模型基于图像训练样本和图像训练样本的信息标签对待训练的多分支网络模型进行迭代训练得到的,在该多分支网络模型共设有预设数量个退出分支,并根据场景要求,从多推出点网络模型中选取出符合场景要求的退出分支,并根据该退出分支,完成对图像数据的分类处理任务,即选择多退出点网络模型,并根据场景要求,从该网络模型中选取出符合要求的退出分支,并使用该网络模型中的符合要求的退出分支对图像数据进行分类处理,以完成分类处理任务,从而使得通过多退出点网络模型中符合场景要求的退出分支执行相应的分类处理任务,进而达到提高神经网络模型对不同场景的适应性的效果。
示例性的,参照图2,图2是本申请神经网络自适应退出方法第二实施例的流程示意图,基于上述本申请神经网络自适应退出方法第一实施例,提出第二实施例,所述方法还包括:
步骤S210:计算所述多退出点网络模型的各退出分支的退出时延,以及计算所述各退出分支的退出精度;
在根据场景要求中的时延要求选择退出分支时,需要计算各退出分支的退出时延,从而可从中选取出符合场景要求的退出分支。
同时,退出分支的时延计算包括诸多方面,例如,多退出点网络模型的部署方式为本地设备部署与服务器端部署结合的方式,因此,需要计算本地设备与服务器端之间的数据传输延迟,又例如,各退出分支的计算延迟等。
参照图3,图3为多退出点网络模型的部署结构示意图。
在本地设备处部署部分网络层,以及在服务器端部署主要进行分类运算的网络层和多退出分支,例如,在图3中的四个退出点,分别对应着三个退出分支和网络模型的主干退出点,以先后顺序的方式,分别命名为退出点1、退出点2、退出点3和退出点4。
本地设备和服务器端之间设置为卸载点,即数据传输点,在该卸载点处的前后分别设置对图像数据进行压缩的网路层,以及对压缩后图像进行恢复的网络层,从而降低数据从本地设备传输至服务器端的传输时延。
同时,在服务器端会根据不同的场景要求,制定出不同的模型退出策略,即根据场景要求在多退出点网络模型中选取适合的退出点。其中,退出策略即为应对不同场景要求时而制定的策略,其本质即为选取退出点的判断条件。
参照图4,图4为压缩图像数据和恢复图像数据的压缩单元流程示意图。根据设置在卸载点前后的压缩单元,分别为卷积层和转置卷积层,对应着图像数据的压缩和恢复。其本质即为降低数据传输时的大小,从而降低传输时延。
而在根据场景要求中的精度要求选择退出分支时,需要对各退出分支的退出精度进行计算,从而可从中选取出符合场景要求的退出分支。
示例性的,所述计算所述多退出点网络模型的各退出分支的退出时延,包括:
步骤f:计算所述图像数据压缩过程所需的压缩时延,以及计算回复压缩后的图像数据的恢复时延;
步骤g:计算所述多退出点网络模型中本地设备网络层和服务器端网络层之间的数据传输延迟;
步骤h:计算所述多退出点网络模型的各退出分支的网络推理时延;
示例性的,多退出点网络模型的部署方式为本地设备和服务器端结合的部署方式,该部署方式将产生两部分额外的计算时延,其分别为本地设备对图像数据进行压缩所造成的计算时延和服务器复原成输入图像数据所造成的计算时延。因此,该网络模型结束推理时延T的计算公式如(1-3)所示。
其中,Te表示本地设备压缩图像数据的计算时延,即压缩时延,Tu表示数据传输的通信时延,即从本地设备将数据传输至服务器端的传输时延,表示服务器复原压缩后的图像数据的计算时延,即恢复时延,表示服务器端执行网络层运算的计算时延,即各退出分支的网络推理时延。
因此,为计算该网络模型结束推理时延T的计算时,需先计算出上述压缩时延、恢复时延、传输时延和网络推理时延。
步骤i:基于所述压缩时延、所述恢复时延、所述数据传输延迟和所述网络推理时延,计算所述各退出分支的退出时延。
上述四个时延可根据网络运算层的理论所需时间进行计算,也可对该网络模型的各退出分支的时延分别进行计算。
步骤S220:选取所述退出时延和/或所述退出精度符合所述场景要求的退出分支;
根据不同的场景要求,选取不同的退出时延和/或退出精度所对应的退出分支。
示例性的,场景要求包括:时延要求、精度要求、时延和精度双要求。
即,场景要求存在三种情况,保证退出时延、保证退出精度,以及在保证退出精度的同时保证退出时延。
其中,在保证退出精度的同时保证退出时延中,两个要求之间存在先后顺序,即需先确保退出精度满足要求,后确保时延要求。
示例性的,所述选取所述退出时延和/或所述退出精度符合所述场景要求的退出分支,包括:
步骤j:在所述场景要求包括时延要求和精度要求时,确定所述各退出分支的退出精度是否满足所述精度要求;
在场景要求包括时延要求和精度要求时,需根据退出精度和退出时延的要求的重要程度,按照先后的顺序,先后判断,即先判断是否有退出分支满足退出精度的要求,若存在满足退出精度的要求的退出分支,则进一步确定是否有满足退出时延的要求的退出分支,若有,则选择该符合两条要求的退出分支。
步骤k:若不满足,则选取所述各退出分支中退出时延最低的退出分支。
而当各退出分支中无任一分支满足退出精度的要求时,无需判断退出分支的退出时延是否满足要求,而直接选取各退出分支中退出时延最低的退出分支进行执行相应的分类处理任务。
即保证在选取退出分支时,必须保证退出分支的精度要求,而退出时延则是可选择的忽视的,当精度不足时,无论退出时延的大小,最后得到的退出结果并不能满足当前场景要求的精度,即无论时延大小,退出结果均不符合预期,退出结果是无意义的,因此,需保证在退出精度满足要求后,进一步确定退出分支的时延。
步骤S230:若不存在符合所述场景要求的退出分支,则选取所述各退出分支中退出时延最低的退出分支。
在上述判断各退出分支中是否存在满足场景要求的退出分支时,存在各退出分支均无法满足场景要求的情况,包括场景要求中的三种要求均无法满足的情况,此时,为避免产生响应异常,则在此时选取各退出分支中时延最低的退出分支,以最短的时间,结束当前分类处理任务,避免时延太大,响应后续处理。
在本实施例中,针对不同的场景要求,从各退出分支中选取出最为符合的退出分支,以筛选出退出时延和/或退出精度符合场景要求的退出分支,从而保证应对不同的场景而选取不同的退出分支,从而保证应对场景不同时,该多退出点网络模型的灵活性。
示例性的,参照图5,图5是本申请神经网络自适应退出方法第三实施例的流程示意图,基于上述本申请神经网络自适应退出方法第一实施例和第二实施例,提出第三实施例,所述方法还包括:
步骤S310:将所述图像数据输入至本地设备网络层,并基于所述本地设备网络层,对所述图像数据进行压缩处理,以降低所述设备网络层与服务器端网络层之间数据传输的时延;
在深度学习的图像分类任务中,输入数据通常是由R、G、B分量构成的彩色图像,且多数神经网络模型的输入格式为3*224*224,导致云计算部署模式的数据传输时延较高于神经网络的计算时延。因此,通过对原始输入采用数据压缩方案从而降低数据传输造成的时延开销。
在输入数据与第一层网络层之间嵌入由卷积层和转置卷积层组成的压缩单元结构。压缩单元的卷积层以特征提取的形式降低输入张量的通道和面积大小,从而达到数据压缩的效果。而其转置卷积层则将压缩后的数据复原为原始图像的张量格式,并将该张量数据作为神经网络模型的输入。
参照图6,图6为压缩图像数据和恢复图像数据时的数据类型变化流程图。
根据图6的内容所示,在压缩图像数据时,首先将图像所对应的张量数据输入至卷积层,从而对该张量数据进行卷积,从而得到浮点型的张量数据,进一步对该浮点型数据进行字节类型数据的转化,从而最终存储得到灰度图,将该灰度图传输至服务器后,需要用到转置卷积层对灰度图进行恢复,即恢复至节点类型数据,随后恢复至浮点类型数据,最后复原为张量数据,即完成对图像数据的恢复,恢复后的图像数据即可正常输入至网络运算层,从而通过多退出点网络模型对图像数据进行分类处理。
示例性的,当前使用的模型具有清晰的网络结构,其包含13层卷积层、5层池化层和3层全连接层。通过对该模型每层网络执行的特点和卷积网络特征提取能力的特性分析,在该模型的池化层之后新增网络分支以构建多退出点网络模型。由于该模型的第1层池化层前仅含2层卷积层,且较少的卷积层对输入数据的特征提取效果较差,因此,该模型未在第1层池化层后新增模型退出点。
该网络模型的卸载点在压缩的卷积层和转置卷积层之间,且该卸载点是固定的,该卸载点位于本地设备网络层和服务器端网络层之间。
通过在输入数据的第一层网络层之间嵌入压缩单元结构,并将模型卸载点固定在该结构的卷积层和转置卷积层之间,使边缘设备仅执行少量的卷积运算并仅传输数据量较小且隐藏输入图像特征的灰度图,从而降低终端设备网络层计算和数据传输所造成的时延。
步骤S320:将压缩后的图像数据输入至所述服务器端网络层,并基于所述服务器端网络层,对所述压缩后的图像数据进行恢复处理,并对所述恢复后的数据进行分类处理任务。
通过本地设备和服务器端的数据传输动作,将压缩后的图像数据输入至所服务器端网络层,但是在将数据进行传输后,需要将压缩后的图像进行还原,即把压缩后的格式恢复成图像数据的原本的格式。
并在将压缩后的图像数据恢复后,即可对图像数据进行相应的分类处理任务。
示例性的,所述将压缩后的图像数据输入至所述服务器端网络层,包括:
步骤l:提取所述图像数据的张量数据;
在边缘设备中,压缩单元的卷积层通过特征提取的方式将输入图像的张量数据c*w*h转换为c'*w'*h'格式,从而降低特征数据的张量大小。
步骤m:将所述张量数据转化为字节类型数据,并将所述字节类型数据转化为灰度图;
将32位浮点类型转换为8位字节类型数据,从而降低近4倍的数据大小。对于转换后的特征数据,通过采用PNG无损压缩,进一步将其转换成位深度为8的灰度图。由于神经网络推理具有容错性,当输出分量最大值所对应的类别与无压缩方案的结果一致时,该压缩方案将不损失模型精度。张量数据的转换公式如(1-7)所示。
其中,V表示卸载点处的特征数据,其张量形式为c*w*h,max(V)表示该特征张量的最大值元素,min(V)表示该特征张量的最小值元素,且取n为4。
步骤n:将所述灰度图输入至所述服务器端网络层。
通过对中间特征数据采用近无损的压缩方案,将其转换为PNG灰度图,极大的降低数据传输开销。然而,在边缘服务器接收PNG灰度图后,需采用数据恢复方案将其还原为压缩前的张量形式c*w*h。数据恢复方案将灰度图转换为byte类型的张量数据,并利用公式(1-8)将该张量数据转换为浮点类型的张量数据通过将与压缩前张量形式一致的特征张量作为输入,执行服务器端网络层。
虽然近无损的压缩方案需额外传输max(V)和min(V)两个参数,但相比压缩前的特征数据大小具有明显的压缩效果。而在将压缩后的数据和卸载点卸载至主干网络后,需要将原本已经压缩的数据进行复原处理,恢复成压缩前的张量形式,并执行之后的服务器端网络层。
在本实施例中,多退出点网络模型针对一些特殊响应场景而建立,分别在本地设备处和服务器端处部署相应的神经网络层,而在响应本地设备处传来的数据时,需要满足一定的响应时间要求,即需要降低数据从本地设备传输至服务器端所需要的时间,从而降低传输数据的时延,进而降低该模型整体的响应时延。
此外,本申请还提供一种神经网络自适应退出装置,所述一种神经网络自适应退出装置包括:
获取模块,用于获取待处理的图像数据,以及获取场景要求;
输入模块,用于将所述图像数据输入至多退出点网络模型;所述多退出点网络模型为基于图像训练样本和所述图像训练样本的信息标签对待训练的多分支网络模型进行迭代训练得到的,所述多分支网络模型共有预设数量个退出分支;
选取模块,用于选取所述多退出点网络模型中符合所述场景要求的退出分支,并基于所述退出分支,完成对所述图像数据的分类处理任务。
示例性的,所述选取模块包括:
第一计算子模块,用于计算所述多退出点网络模型的各退出分支的退出时延,以及计算所述各退出分支的退出精度;
选取子模块,用于选取所述退出时延和/或所述退出精度符合所述场景要求的退出分支;
判断子模块,用于若不存在符合所述场景要求的退出分支,则选取所述各退出分支中退出时延最低的退出分支。
示例性的,所述选取子模块包括:
确定单元,用于在所述场景要求包括时延要求和精度要求时,确定所述各退出分支的退出精度是否满足所述精度要求;
判断单元,用于若不满足,则选取所述各退出分支中退出时延最低的退出分支。
示例性的,所述计算子模块包括:
第一计算单元,用于计算所述图像数据压缩过程所需的压缩时延,以及计算回复压缩后的图像数据的恢复时延;
第二计算单元,用于计算所述多退出点网络模型中本地设备网络层和服务器端网络层之间的数据传输延迟;
第三计算单元,用于计算所述多退出点网络模型的各退出分支的网络推理时延;
第四计算单元,用于基于所述压缩时延、所述恢复时延、所述数据传输延迟和所述网络推理时延,计算所述各退出分支的退出时延。
示例性的,所述输入模块包括:
压缩子模块,用于将所述图像数据输入至本地设备网络层,并基于所述本地设备网络层,对所述图像数据进行压缩处理,以降低所述设备网络层与服务器端网络层之间数据传输的时延;
处理子模块,用于将压缩后的图像数据输入至所述服务器端网络层,并基于所述服务器端网络层,对所述压缩后的图像数据进行恢复处理,并对所述恢复后的数据进行分类处理任务。
示例性的,所述处理子模块包括:
提取单元,用于提取所述图像数据的张量数据;
转化单元,用于将所述张量数据转化为字节类型数据,并将所述字节类型数据转化为灰度图;
输入单元,用于将所述灰度图输入至所述服务器端网络层。
示例性的,所述输入模块包括:
获取子模块,用于获取所述图像数据组成的训练集;
输入子模块,用于将所述训练集输入至预设的多退出点网络模型;
第二计算子模块,用于基于所述多退出点网络模型,计算各退出点的输出值,并基于所述输出值,并计算所述各退出点的损失值的加权和;
第三计算子模块,用于基于所述损失值的加权和,计算所述各退出点的精度值;
第四计算子模块,用于若所述各退出点中的最后一个退出点的精度值大于当前网络精度值,则保存所述最后一个退出点的精度值,直至迭代训练结束。
本申请神经网络自适应退出装置具体实施方式与上述神经网络自适应退出方法各实施例基本相同,在此不再赘述。
此外,本申请还提供一种神经网络自适应退出设备。如图7所示,图7是本申请实施例方案涉及的硬件运行环境的结构示意图。
示例性的,图7即可为神经网络自适应退出设备的硬件运行环境的结构示意图。
如图7所示,该神经网络自适应退出设备可以包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701、通信接口702和存储器703通过通信总线704完成相互间的通信,存储器703,用于存放计算机程序;处理器701,用于执行存储器703上所存放的程序时,实现神经网络自适应退出方法的步骤。
上述神经网络自适应退出设备提到的通信总线704可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(ExtendedIndustry Standard Architecture,EISA)总线等。该通信总线704可以分为地址总线、数据总线和控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口702用于上述神经网络自适应退出设备与其他设备之间的通信。
存储器703可以包括随机存取存储器(Random Access Memory,RMD),也可以包括非易失性存储器(Non-Volatile Memory,NM),例如至少一个磁盘存储器。可选的,存储器703还可以是至少一个位于远离前述处理器701的存储装置。
上述的处理器701可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请神经网络自适应退出设备具体实施方式与上述神经网络自适应退出方法各实施例基本相同,在此不再赘述。
此外,本申请实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有神经网络自适应退出程序,所述神经网络自适应退出程序被处理器执行时实现如上所述的神经网络自适应退出方法的步骤。
本申请计算机可读存储介质具体实施方式与上述神经网络自适应退出方法各实施例基本相同,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种神经网络自适应退出方法,其特征在于,所述神经网络自适应退出方法包括以下步骤:
获取待处理的图像数据,以及获取场景要求;
将所述图像数据输入至多退出点网络模型;所述多退出点网络模型为基于图像训练样本和所述图像训练样本的信息标签对待训练的多分支网络模型进行迭代训练得到的,所述多分支网络模型共有预设数量个退出分支;
选取所述多退出点网络模型中符合所述场景要求的退出分支,并基于所述退出分支,完成对所述图像数据的分类处理任务。
2.如权利要求1所述的神经网络自适应退出方法,其特征在于,所述选取所述多退出点网络模型中符合所述场景要求的退出分支,包括:
计算所述多退出点网络模型的各退出分支的退出时延,以及计算所述各退出分支的退出精度;
选取所述退出时延和/或所述退出精度符合所述场景要求的退出分支;
若不存在符合所述场景要求的退出分支,则选取所述各退出分支中退出时延最低的退出分支。
3.如权利要求2所述的神经网络自适应退出方法,其特征在于,所述选取所述退出时延和/或所述退出精度符合所述场景要求的退出分支,包括:
在所述场景要求包括时延要求和精度要求时,确定所述各退出分支的退出精度是否满足所述精度要求;
若不满足,则选取所述各退出分支中退出时延最低的退出分支。
4.如权利要求2所述的神经网络自适应退出方法,其特征在于,所述计算所述多退出点网络模型的各退出分支的退出时延,包括:
计算所述图像数据压缩过程所需的压缩时延,以及计算回复压缩后的图像数据的恢复时延;
计算所述多退出点网络模型中本地设备网络层和服务器端网络层之间的数据传输延迟;
计算所述多退出点网络模型的各退出分支的网络推理时延;
基于所述压缩时延、所述恢复时延、所述数据传输延迟和所述网络推理时延,计算所述各退出分支的退出时延。
5.如权利要求1所述的神经网络自适应退出方法,其特征在于,所述多退出点网络模型包括本地设备网络层和服务器端网络层,所述将所述图像数据输入至多退出点网络模型,包括:
将所述图像数据输入至本地设备网络层,并基于所述本地设备网络层,对所述图像数据进行压缩处理,以降低所述设备网络层与服务器端网络层之间数据传输的时延;
将压缩后的图像数据输入至所述服务器端网络层,并基于所述服务器端网络层,对所述压缩后的图像数据进行恢复处理,并对所述恢复后的数据进行分类处理任务。
6.如权利要求5所述的神经网络自适应退出方法,其特征在于,所述将压缩后的图像数据输入至所述服务器端网络层,包括:
提取所述图像数据的张量数据;
将所述张量数据转化为字节类型数据,并将所述字节类型数据转化为灰度图;
将所述灰度图输入至所述服务器端网络层。
7.如权利要求1所述的神经网络自适应退出方法,其特征在于,所述将所述图像数据输入至多退出点网络模型之前,包括:
获取所述图像数据组成的训练集;
将所述训练集输入至预设的多退出点网络模型;
基于所述多退出点网络模型,计算各退出点的输出值,并基于所述输出值,并计算所述各退出点的损失值的加权和;
基于所述损失值的加权和,计算所述各退出点的精度值;
若所述各退出点中的最后一个退出点的精度值大于当前网络精度值,则保存所述最后一个退出点的精度值,直至迭代训练结束。
8.一种神经网络自适应退出装置,其特征在于,所述神经网络自适应退出装置包括:
获取模块,用于获取待处理的图像数据,以及获取场景要求;
输入模块,用于将所述图像数据输入至多退出点网络模型;所述多退出点网络模型为基于图像训练样本和所述图像训练样本的信息标签对待训练的多分支网络模型进行迭代训练得到的,所述多分支网络模型共有预设数量个退出分支;
选取模块,用于选取所述多退出点网络模型中符合所述场景要求的退出分支,并基于所述退出分支,完成对所述图像数据的分类处理任务。
9.一种神经网络自适应退出设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的神经网络自适应退出程序,所述神经网络自适应退出程序配置为实现如权利要求1至7中任一项所述的神经网络自适应退出方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有神经网络自适应退出程序,所述神经网络自适应退出程序被处理器执行时实现如权利要求1至7中任一项所述的神经网络自适应退出方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211433435.6A CN115906941B (zh) | 2022-11-16 | 2022-11-16 | 神经网络自适应退出方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211433435.6A CN115906941B (zh) | 2022-11-16 | 2022-11-16 | 神经网络自适应退出方法、装置、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115906941A true CN115906941A (zh) | 2023-04-04 |
CN115906941B CN115906941B (zh) | 2023-10-03 |
Family
ID=86474048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211433435.6A Active CN115906941B (zh) | 2022-11-16 | 2022-11-16 | 神经网络自适应退出方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115906941B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109635934A (zh) * | 2018-12-27 | 2019-04-16 | 深圳云天励飞技术有限公司 | 一种神经网络推理结构优化方法及装置 |
CN109978283A (zh) * | 2019-04-25 | 2019-07-05 | 中国人民解放军国防科技大学 | 一种基于分支进化神经网络的光伏发电功率预测方法 |
CN110309914A (zh) * | 2019-07-03 | 2019-10-08 | 中山大学 | 基于边缘服务器与移动端设备协同的深度学习模型推理加速方法 |
CN111091175A (zh) * | 2018-10-23 | 2020-05-01 | 北京嘀嘀无限科技发展有限公司 | 神经网络模型训练方法、分类方法、装置和电子设备 |
CN111950723A (zh) * | 2019-05-16 | 2020-11-17 | 武汉Tcl集团工业研究院有限公司 | 神经网络模型训练方法、图像处理方法、装置及终端设备 |
US20210019628A1 (en) * | 2018-07-23 | 2021-01-21 | Intel Corporation | Methods, systems, articles of manufacture and apparatus to train a neural network |
US20210056357A1 (en) * | 2019-08-19 | 2021-02-25 | Board Of Trustees Of Michigan State University | Systems and methods for implementing flexible, input-adaptive deep learning neural networks |
CN113537400A (zh) * | 2021-09-14 | 2021-10-22 | 浙江捷瑞电力科技有限公司 | 一种基于分支神经网络的边缘计算节点的分配与退出方法 |
US20220164665A1 (en) * | 2020-11-20 | 2022-05-26 | Montage Technology Co., Ltd. | Method and device for compressing neural network |
CN114556366A (zh) * | 2019-07-11 | 2022-05-27 | 三星电子株式会社 | 用于实现可变精度神经网络的方法和系统 |
CN114972850A (zh) * | 2022-05-11 | 2022-08-30 | 清华大学 | 多分支网络的分发推理方法、装置、电子设备及存储介质 |
CN115169561A (zh) * | 2022-05-16 | 2022-10-11 | 清华大学 | 一种用于物联网的多分支网络协同推理方法及系统 |
-
2022
- 2022-11-16 CN CN202211433435.6A patent/CN115906941B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210019628A1 (en) * | 2018-07-23 | 2021-01-21 | Intel Corporation | Methods, systems, articles of manufacture and apparatus to train a neural network |
CN111091175A (zh) * | 2018-10-23 | 2020-05-01 | 北京嘀嘀无限科技发展有限公司 | 神经网络模型训练方法、分类方法、装置和电子设备 |
CN109635934A (zh) * | 2018-12-27 | 2019-04-16 | 深圳云天励飞技术有限公司 | 一种神经网络推理结构优化方法及装置 |
CN109978283A (zh) * | 2019-04-25 | 2019-07-05 | 中国人民解放军国防科技大学 | 一种基于分支进化神经网络的光伏发电功率预测方法 |
CN111950723A (zh) * | 2019-05-16 | 2020-11-17 | 武汉Tcl集团工业研究院有限公司 | 神经网络模型训练方法、图像处理方法、装置及终端设备 |
CN110309914A (zh) * | 2019-07-03 | 2019-10-08 | 中山大学 | 基于边缘服务器与移动端设备协同的深度学习模型推理加速方法 |
CN114556366A (zh) * | 2019-07-11 | 2022-05-27 | 三星电子株式会社 | 用于实现可变精度神经网络的方法和系统 |
US20210056357A1 (en) * | 2019-08-19 | 2021-02-25 | Board Of Trustees Of Michigan State University | Systems and methods for implementing flexible, input-adaptive deep learning neural networks |
US20220164665A1 (en) * | 2020-11-20 | 2022-05-26 | Montage Technology Co., Ltd. | Method and device for compressing neural network |
CN113537400A (zh) * | 2021-09-14 | 2021-10-22 | 浙江捷瑞电力科技有限公司 | 一种基于分支神经网络的边缘计算节点的分配与退出方法 |
CN114972850A (zh) * | 2022-05-11 | 2022-08-30 | 清华大学 | 多分支网络的分发推理方法、装置、电子设备及存储介质 |
CN115169561A (zh) * | 2022-05-16 | 2022-10-11 | 清华大学 | 一种用于物联网的多分支网络协同推理方法及系统 |
Non-Patent Citations (3)
Title |
---|
孙毅等: "深度自适应动态神经网络进展综述", 《激光与光电子学进展》, vol. 59, no. 14, pages 2 * |
李聪;潘丽丽;陈蓉玉;周燕;邵伟志;: "采用融合卷积网的图像分类算法", 计算机工程与科学, no. 12 * |
林培群;徐建闽;傅惠;梁俊斌;: "多分支BP网络模型及其在车型分类中的应用", 微计算机信息, no. 25 * |
Also Published As
Publication number | Publication date |
---|---|
CN115906941B (zh) | 2023-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7218805B2 (ja) | ソフトクロスエントロピー損失を用いたセマンティックセグメンテーション | |
CN109816009B (zh) | 基于图卷积的多标签图像分类方法、装置及设备 | |
US20240119286A1 (en) | Adaptive artificial neural network selection techniques | |
CN108009625B (zh) | 人工神经网络定点化后的微调方法和装置 | |
CN111242071B (zh) | 一种基于锚框的注意力遥感图像目标检测方法 | |
JP2018055259A (ja) | 情報処理装置、情報処理方法及びプログラム | |
EP3255586A1 (en) | Method, program, and apparatus for comparing data graphs | |
CN112862681B (zh) | 一种超分辨率方法、装置、终端设备及存储介质 | |
CN114549369B (zh) | 数据修复方法、装置、计算机及可读存储介质 | |
CN110633735A (zh) | 基于小波变换的渐进式深度卷积网络图像识别方法及装置 | |
CN115841590B (zh) | 神经网络推理优化方法、装置、设备及可读存储介质 | |
CN110414593B (zh) | 图像处理方法及装置、处理器、电子设备及存储介质 | |
CN115906941B (zh) | 神经网络自适应退出方法、装置、设备及可读存储介质 | |
CN113792804B (zh) | 图像识别模型的训练方法、图像识别方法、装置及设备 | |
CN113989569B (zh) | 图像处理方法、装置、电子设备和存储介质 | |
JP2020027604A (ja) | 情報処理方法、及び情報処理システム | |
WO2021037174A1 (zh) | 一种神经网络模型训练方法及装置 | |
KR102305981B1 (ko) | 신경망 압축 훈련 방법 및 압축된 신경망을 이용하는 방법 | |
CN112084371A (zh) | 一种电影多标签分类方法、装置、电子设备以及存储介质 | |
CN112861979A (zh) | 商标识别方法、装置、计算设备及计算机存储介质 | |
KR102408189B1 (ko) | 인공 신경망의 학습을 위해 표 형태의 데이터를 전처리 하는 방법 | |
CN111815658A (zh) | 一种图像识别方法及装置 | |
CN116205283B (zh) | 数据处理方法、装置、电子设备和计算机可读存储介质 | |
CN112102193B (zh) | 图像增强网络的训练方法、图像处理方法及相关设备 | |
JP7376812B2 (ja) | データ生成方法、データ生成装置及びプログラム |
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 |