CN114358257A - 神经网络剪枝方法及装置、可读介质和电子设备 - Google Patents
神经网络剪枝方法及装置、可读介质和电子设备 Download PDFInfo
- Publication number
- CN114358257A CN114358257A CN202210158744.0A CN202210158744A CN114358257A CN 114358257 A CN114358257 A CN 114358257A CN 202210158744 A CN202210158744 A CN 202210158744A CN 114358257 A CN114358257 A CN 114358257A
- Authority
- CN
- China
- Prior art keywords
- pruning
- neural network
- convolutional neural
- search
- network
- 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.)
- Pending
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
本公开提供一种神经网络剪枝方法及装置、计算机可读介质和电子设备,涉及人工智能技术领域。该方法包括:获取待剪枝的初始卷积神经网络对应的剪枝搜索空间,所述剪枝搜索空间包括所述初始卷积神经网络中各卷积层对应的可选剪枝率;通过预训练的搜索网络在所述可选剪枝率中搜索确定用于所述初始卷积神经网络的目标剪枝率组合;根据所述目标剪枝率组合对所述初始卷积神经网络进行剪枝处理,得到目标卷积神经网络。本公开能够结合剪枝搜索空间以及搜索网络实现卷积神经网络的搜索式结构化剪枝,自动化搜索并能够找到最优的剪枝率组合,不需要引入人工设计规则,操作更加简单,适用范围广。
Description
技术领域
本公开涉及人工智能技术领域,具体涉及一种神经网络剪枝方法、神经网络剪枝装置、计算机可读介质和电子设备。
背景技术
深度学习在计算机视觉(Computer Vision,CV)、语音识别、自然语言处理(Natural Language Processing,NLP)等领域取得较显著的成绩。在不同类型的深度神经网络中,卷积神经网络(Convolutional Neural Networks,CNN)得到了最广泛的研究,同时卷积神经网络往往伴随着海量计算量,这对于深度学习落地带来挑战,而人工设计的网络模型往往在处理具体深度学习任务的时候具有计算冗余,因此针对卷积神经网络的模型压缩近年来成为研究热点。
针对人工设计的网络结构,常用的模型压缩方法包括量化(Quantization)、剪枝(Pruning)、蒸馏(Distillation),此外自动设计网络模型(Neural Architecture Search,NAS)技术可实现卷积神经网络结构的自学习设计,也属于模型压缩领域的范畴。其中,剪枝可以通过减少模型计算量实现模型压缩,目前常用的剪枝技术按照剪枝颗粒度可以分为结构化剪枝(以卷积层通道或卷积核为维度)与非结构化剪枝(以卷积层卷积核的元素为维度)。
目前,相关的结构化剪枝方案中,一般采用度量值Metric来评估通道或卷积核的重要程度,度量值Metric的训练分布及选择均需要人工参与,常用的度量Metric包括卷积核的范数或梯度、批量归一化层的Scale参数等。但是,这种引入大量人工操作的结构化剪枝方法操作难度较大,并且对CV任务的泛化能力较差,剪枝效率较低。
发明内容
本公开的目的在于提供一种神经网络剪枝方法、神经网络剪枝装置、计算机可读介质和电子设备,进而至少在一定程度上提高结构化剪枝方法的自动搜索能力,避免人工参与,降低操作难度,提升剪枝效率,并且提升对CV任务的泛化能力。
根据本公开的第一方面,提供一种神经网络剪枝方法,包括:
获取待剪枝的初始卷积神经网络对应的剪枝搜索空间,所述剪枝搜索空间包括所述初始卷积神经网络中各卷积层对应的可选剪枝率;
通过预训练的搜索网络在所述可选剪枝率中搜索确定用于所述初始卷积神经网络的目标剪枝率组合;
根据所述目标剪枝率组合对所述初始卷积神经网络进行剪枝处理,得到目标卷积神经网络。
根据本公开的第二方面,提供一种神经网络剪枝装置,包括:
剪枝搜索空间获取模块,用于获取待剪枝的初始卷积神经网络对应的剪枝搜索空间,所述剪枝搜索空间包括所述初始卷积神经网络中各卷积层对应的可选剪枝率;
剪枝率组合确定模块,用于通过预训练的搜索网络在所述可选剪枝率中搜索确定用于所述初始卷积神经网络的目标剪枝率组合;
卷积神经网络剪枝模块,用于根据所述目标剪枝率组合对所述初始卷积神经网络进行剪枝处理,得到目标卷积神经网络。
根据本公开的第三方面,提供一种计算机可读介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的方法。
根据本公开的第四方面,提供一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述的方法。
本公开的一种实施例所提供的神经网络剪枝方法,可以获取预先设计的待剪枝的初始卷积神经网络对应的剪枝搜索空间,该剪枝搜索空间可以包括初始卷积神经网络中各卷积层对应的可选剪枝率,然后可以通过预训练的搜索网络在可选剪枝率中搜索确定用于初始卷积神经网络的目标剪枝率组合,进而可以根据目标剪枝率组合对初始卷积神经网络进行剪枝处理,得到目标卷积神经网络。一方面,通过剪枝搜索空间以及预训练的搜索网络能够自动完成对初始卷积神经网络的结构化剪枝,全程不需要人工的参与,简化剪枝操作,有效提升剪枝效率;另一方面,通过预训练的搜索网络实现自动结构化剪枝,自动搜索求解出限定计算量下每个卷积层的最优卷积核个数的组合方式,提升对计算机视觉任务的泛化能力,同时有效降低剪枝后得到的目标卷积神经网络的计算量,减小卷积神经网络的性能消耗。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了可以应用本公开实施例的一种示例性***架构的示意图;
图2示意性示出本公开示例性实施例中一种神经网络剪枝方法的流程示意图;
图3示意性示出本公开示例性实施例中一种剪枝率表的示意图;
图4示意性示出本公开示例性实施例中一种剪枝搜索空间中状态-动作空间转移的示意图;
图5示意性示出本公开示例性实施例中一种在剪枝搜索空间中确定目标剪枝率组合的流程示意图;
图6示意性示出本公开示例性实施例中一种训练搜索网络的流程示意图;
图7示意性示出本公开示例性实施例中一种通过ε贪恋策略采样状态-动作空间的流程示意图;
图8示意性示出本公开示例性实施例中一种对搜索网络进行强化学习训练的流程图;
图9示意性示出本公开示例性实施例中神经网络剪枝装置的组成示意图;
图10示出了可以应用本公开实施例的一种电子设备的示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
图1示出了可以应用本公开实施例的一种神经网络剪枝方法及装置的示例性应用环境的***架构的示意图。
如图1所示,***架构100可以包括终端设备101、102、103中的一个或多个,网络104和服务器105、服务器集群106。网络104用以在终端设备101、102、103和服务器105或者服务器集群106之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。终端设备101、102、103可以是各种具有人工智能(ArtificialIntelligence,AI)处理器的电子设备,包括但不限于边缘计算设备101、智能手机102和智能服务型机器人103等等。应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的,根据实现需要,可以具有任意数目的终端设备、网络和服务器或者服务器集群。
本公开实施例所提供的神经网络剪枝方法一般由服务器105或者服务器集群106执行,相应地,神经网络剪枝装置一般设置于服务器105或者服务器集群106中。但本领域技术人员容易理解的是,本公开实施例所提供的神经网络剪枝方法也可以由终端设备101、102、103执行,相应的,神经网络剪枝装置也可以设置于终端设备101、102、103中,本示例性实施例中对此不做特殊限定。举例而言,在一种示例性实施例中,可以是用户通过终端设备101、102、103将待剪枝的初始卷积神经网络以及该初始卷积神经网络对应的剪枝搜索空间上传至服务器105或者服务器集群106,服务器105或者服务器集群106通过本公开实施例所提供的神经网络剪枝方法对初始卷积神经网络进行剪枝处理后,将剪枝后得到的目标卷积神经网络传输给终端设备101、102、103等。
目前,相关的一种技术方案中,针对卷积神经网络已训练好的卷积核参数,首先利用最佳排序张量对网络中的卷积核张量对应需要排序的维度进行排序,输出新的卷积核张量,然后使用结构化压缩算法处理新的卷积核张量并获得掩膜信息,最后基于掩膜信息实现结构化剪枝。但是,该方案使用最佳排序张量对卷积核权重进行排序,而最佳排序张量的获取是通过迭代循环至最大交换收益函数收敛得到,其中最大交换函数及收敛阈值均是人工设计的,导致按照最佳排序张量排序的卷积核与客观排序后的卷积核之间的具有一定的差异,容易剪去重要卷积核,而且面对不同任务,阈值和交换函数均需要调整,泛化能力较差。
相关的另一种技术方案中,首先选择训练原始模型的卷积核的权值参数,并计算得到对应卷积层的重要性分数,按照重要性分数对卷积层进行分区,经过模型再训练得到各分区卷积层的稀疏值配置,然后利用得到的稀疏值选择卷积过滤器实现卷积神经网络的结构化剪枝。但是,该技术方案设计重要性分数进行卷积层分区,而重要性分数是通过对该卷积层卷积核的元素平方和均值来描述,然后按照重要性分数对卷积层分区并进行稀疏配置,可见度量重要性分数的Metric是人工设计的,但客观上还存在其它度量重要性分数的Metric(如L1范数、方差等),此外稀疏配置过程需要不断经过“稀疏值改变-训练-评估”操作,整个过程操作难度较大。因此,该技术方案引入大量人工操作的结构化剪枝方法不易操作,对计算机视觉任务的泛化能力较差。
基于相关技术中的一个或者多个问题,本公开首先提供一种神经网络剪枝方法,下面以服务器执行该方法为例,对本公开示例性实施方式的神经网络剪枝方法进行具体说明。
图2示出了本示例性实施方式中一种神经网络剪枝方法的流程示意图,可以包括一下步骤S210至步骤S230:
在步骤S210中,获取待剪枝的初始卷积神经网络对应的剪枝搜索空间,所述剪枝搜索空间包括所述初始卷积神经网络中各卷积层对应的可选剪枝率。
在一示例性实施例中,卷积神经网络是指包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),卷积神经网络具有表征学***移不变分类(Shift-invariant Classification)。卷积神经网络可以仿造生物的视知觉(Visual perception)机制构建,可以进行监督学习和非监督学习,其隐含层内的卷积核参数共享和层间连接的稀疏性使得卷积神经网络能够以较小的计算量对格点化特征(如像素、音频)进行学习。
初始卷积神经网络是指针对深度学习任务构建并训练完成的卷积神经网络,例如,初始卷积神经网络可以是用于人脸识别任务的卷积神经网络,也可以是用于语音识别任务的卷积神经网络,本示例实施例对此不做特殊限定。一般而言,由人工设计并训练完成的初始卷积神经网络在处理具体深度学习任务的时候具有计算冗余,往往伴随着海量计算量,然而受到终端设备或者服务器的计算处理能力的限制,导致计算量较大的初始卷积神经网络难以落地。
剪枝搜索空间是指根据初始卷积神经网络的卷积层层数以及各卷积层的通道数预先设计的状态-动作空间,用于解决后续的组合优化问题。
举例而言,假设初始卷积神经网络有多个卷积层,然后可以为每个卷积层设计绑定一个剪枝率表,该剪枝率表可以包含各卷积层对应的可选剪枝率,例如,每个卷积层对应的可选剪枝率可以是0.2、0.4、0.6、0.8、1.0,当然,也可以是0.1、0.3、0.5、0.7、0.9、1.0,具体可以根据实际情况进行自定义设置,本示例实施例对此不做特殊限定。
图3示意性示出本公开示例性实施例中一种剪枝率表的示意图。
参考图3所示,假设初始卷积神经网络310的卷积层有N层,从第1层至第N层对应的通道个数依次为{c1,c2,c3...,ci,ci+1,...cN},然后可以为每个卷积层设计绑定一个剪枝率表320,剪枝率表320中每个卷积层对应的可选剪枝率为0.2、0.4、0.6、0.8、1.0。
在每次搜索过程中,仅从每层的可选剪枝率中选择一个剪枝率,其中,剪枝率是指对第i层有ci个卷积输出通道的卷积层,动作为选择剪枝率0.2,则该动作对应的状态为剪枝后第i层卷积层的输出通道个数为0.2*ci。当然,此处仅是示意性举例说明,并不应对本示例实施例造成任何特殊限定。
继续参考图2所示,在步骤S220中,通过预训练的搜索网络在所述可选剪枝率中搜索确定用于所述初始卷积神经网络的目标剪枝率组合。
在一示例性实施例中,搜索网络是指基于强化学习训练得到的用于对各卷积层的剪枝率进行贪婪搜索的深度学习网络,例如,搜索网络可以是用于贪婪搜索的搜索智能体(Agent),当然,也可以是其他类型的具有贪婪搜索能力的深度学习网络,本示例实施例不以此为限。
搜索网络可以通过一套策略输出一个行为(Action)作用到环境,环境则反馈状态值,和奖励值Reward到搜索网络,同时环境会转移到下一个状态;如此不断循环,最终找到一个最优的策略,使得搜索网络可以尽可能多的获得来自环境的奖励,可以有效解决计算量约束条件下的组合优化问题。
目标剪枝率组合是指通过搜索网络搜索确定的初始卷积神经网络中各卷积层对应的最佳剪枝率构成的集合。
搜索网络可以循环选择初始卷积神经网络中的卷积层,并以最大化状态-动作价值(Value)为目标,进行贪婪搜索,在迭代若干次后,可以得到状态-动作价值为最大值对应的状态,即初始卷积神经网络中所有卷积层的最佳剪枝率构成的目标剪枝率组合。
在步骤S230中,根据所述目标剪枝率组合对所述初始卷积神经网络进行剪枝处理,得到目标卷积神经网络。
在一示例性实施例中,剪枝处理是指根据搜索网络确定的目标剪枝率组合对初始卷积神经网络中各卷积层的通道数量进行删减,以降低初始卷积神经网络的计算冗余,得到能够实现相同深度学习任务并且计算量更小的卷积神经网络的处理过程。
目标卷积神经网络可以是对初始卷积神经网络进行剪枝处理后得到的卷积神经网络,目标卷积神经网络可以实现初始卷积神经网络能够实现的深度学习任务,并且目标卷积神经网络的计算量小于初始卷积神经网络的计算量。例如,假设用于人脸识别的初始卷积神经网络具有3层卷积层,这3层卷积层的通道数分别为100、200、100,通过搜索网络搜索确定的目标剪枝率集合为0.2、0.4、0.8,那么对初始卷积神经网络进行剪枝处理后,得到的目标卷积神经网络的3层卷积层的通道数分别为20、80、80,相比于初始卷积神经网络,有效减少卷积神经网络的计算量以及体积。当然,此处仅是示意性举例说明,并不应对本示例实施例造成任何特殊限定。
下面对步骤S210至步骤S230进行详细说明。
在一示例性实施例中,剪枝搜索空间可以包括动作空间和状态空间,其中,动作空间是指在剪枝率表中选择某一卷积层的剪枝率的动作构成的集合,例如,对于初始卷积神经网络中的任一卷积层,可选剪枝率为0.2、0.4、0.6、0.8、1.0,那么对于选择这5个剪枝率的动作的集合,可以认为是动作空间。那么在动作空间中确定某一卷积层的动作之后,那么当前状态可以转移至下一状态,即下一卷积层,然后继续在动作空间中选择动作,继续状态转移,直至完成对所有卷积层的动作选择,并得到状态空间,状态空间即初始卷积神经网络对应的剪枝率组合。
图4示意性示出本公开示例性实施例中一种剪枝搜索空间中状态-动作空间转移的示意图。
参考图4所示,假设第一状态401的上一次搜索的卷积层是在第i层,那么转移至下一个状态即第二状态可选择的动作空间可以描述为{0.2*ci+1、0.4*ci+1、0.6*ci+1、0.8*ci+1、1.0*ci+1};如果动作402在第i+1层选择的是0.2*ci+1,那么转移的第二状态为403;如果动作404在第i+1层选择的是0.4*ci+1,那么转移的第二状态为405;如果动作406在第i+1层选择的是0.2*ci+1,那么转移的第二状态为407;如果动作408在第i+1层选择的是0.2*ci+1,那么转移的第二状态为409;如果动作410在第i+1层选择的是0.2*ci+1,那么转移的第二状态为411。当然,此处仅是示意性举例说明,并不应对本示例实施例造成任何特殊限定。
具体的,可以通过图5中的步骤实现确定用于初始卷积神经网络的目标剪枝率组合,参考图5所示,具体可以包括:
步骤S510,通过所述搜索网络在所述动作空间进行迭代搜索,并确定动作选择后的状态空间,所述状态空间包括剪枝率组合;
步骤S520,基于所述搜索网络输出所述状态空间下所述初始卷积神经网络对应的搜索路径评分;
步骤S530,将所述搜索路径评分最大的剪枝率组合作为目标剪枝率组合。
其中,搜索路径评分是指衡量当前搜索过程中得到的剪枝率组合的价值(Value)的数据,搜索路径即在状态空间以及动作空间中对于状态-动作的选择,搜索路径评分即选择的状态-动作的价值,例如,可以训练当前搜索过程确定的状态空间下的初始卷积神经网络至损失收敛,确定该初始卷积神经网络的计算量以及验证集准确率,计算量越小且验证集准确率越高,状态-动作价值越大,即搜索路径评分越大。
搜索网络以最大化搜索路径评分为目标,在剪枝搜索空间中进行贪婪搜索,迭代若干次后,可以得到搜索路径评分为最大值对应的状态空间即目标剪枝率组合。
通过设计剪枝搜索空间,并结合预训练的搜索网络能够自动化搜索到初始卷积神经网络对应的最佳剪枝率组合,不仅能够提升剪枝效率,并且全程自动化实现,不需要人工参与,有效提升剪枝处理后的目标卷积神经网络的泛化能力。
在一示例性实施例中,可以判断剪枝处理后得到的目标卷积神经网络的计算量是否满足结构化剪枝需求,即目标卷积神经网络的计算量是否满足需求;如果确定目标卷积神经网络的计算量小于或者等于计算量阈值,则确定完成对初始卷积神经网络的搜索式结构化剪枝,将目标卷积神经网络作为初始卷积神经网络的替代。
如果确定目标卷积神经网络的计算量大于计算量阈值,则可以重新设计新的剪枝搜索空间,并通过搜索网络在新的剪枝搜索空间中确定新的剪枝率组合,直到目标卷积神经网络的计算量小于或者等于计算量阈值,实现对初始卷积神经网络的搜索式结构化剪枝。
通过验证目标卷积神经网络的计算量是否满足结构化剪枝需求,可以有效避免由于剪枝搜索空间设计的不合理或者搜索网络设计不合理而导致剪枝失败的问题,保证剪枝成功率。
在一示例性实施例中,可以通过图6中的步骤实现对搜索网络的预训练,参考图6所示,具体可以包括:
步骤S610,构建初始搜索网络,并通过所述初始搜索网络采样样本卷积神经网络对应的状态-动作空间;
步骤S620,训练所述状态-动作空间下的所述样本卷积神经网络至损失收敛,并存储所述样本卷积神经网络对应的计算量以及验证集准确率;
步骤S630,将所述状态-动作空间、所述计算量以及所述验证集准确率作为字典存储至回放存储空间;
步骤S640,通过所述初始搜索网络在所述回访存储空间中均匀采样所述字典,以根据所述字典对所述初始搜索网络进行强化学习训练,更新所述初始搜索网络的网络参数,得到训练完成的搜索网络。
其中,初始搜索网络是指尚未进行模型训练过程的搜索网络,样本卷积神经网络是指预先存储的、用于训练搜索网络的样本数据。
样本卷积神经网络对应的计算量是指在将验证集输入到样本卷积神经网络中直到输出结果的过程中所需要的计算次数或者所消耗的计算资源等数据,验证集准确率是指将验证集输入到样本卷积神经网络中输出结果的准确率。
在每一搜索过程中,可以将得到一组状态-动作空间、计算量以及验证集准确率构成的数据,在对样本卷积神经网络的所有卷积层进行贪婪搜索后,可以得到多组数据,可以将这些数据作为一个字典存储至预先提供的回放存储空间,便于搜索网络进行经验回放,确定状态-动作价值最大值对应的剪枝率组合。
当然,也可以将样本卷积神经网络中算子在具体硬件平台上的推理速度、功耗、内存占用与状态-动作空间、计算量以及验证集准确率共同作为字典加入到回放存储空间中,并可以将推理速度、功耗、内存占用与验证集准确率一起作为即时奖励加入到搜索网络的训练中,实现卷积神经网络在具体的硬件平台上硬件效能与模型精度综合最优的结构化剪枝。
强化学***台上的推理速度、功耗、内存占用共同确定,本示例实施例对此不做特殊限定。
在一示例性实施例中,搜索网络可以通过ε贪恋策略(ε-greedy)在动作空间中进行动作选择,在动作选择后可以获得新的状态空间,实现对样本卷积神经网络的状态-动作空间的采样。
具体的,可以通过图7中的步骤实现搜索网络通过ε贪恋策略采样样本卷积神经网络对应的状态-动作空间,参考图7所示,具体可以包括:
步骤S710,通过所述初始搜索网络从所述样本卷积神经网络的第一卷积层开始迭代,并根据所述第一卷积层的第一状态生成一个随机数;
步骤S720,如果所述随机数大于预设值,则将所述第一状态下所有动作分别输入至所述初始搜索网络,得到搜索路径评分数组;
步骤S730,确定所述搜索路径评分数组中价值最大的元素对应的第一动作,并通过预设的转移函数得到第二状态,并将所述第一动作和所述第二状态作为字典进行存储;
步骤S740,循环以上步骤,直到所述初始搜索网络迭代搜索所述样本卷积神经网络的所有卷积层。
其中,预设值是指ε贪恋策略中的ε值,随着搜索网络的训练,ε从1.0逐步降低至0.1,代表着智能体从探索阶段过渡到利用阶段。
可选的,在步骤S720中,如果随机数小于或者等于预设值,则可以从第一状态下的动作空间中随机选择第二动作,并根据第二动作确定第三状态,并且可以将第二动作和第三状态作为字典进行存储。
在初始搜索网络的训练过程中,利用ε贪恋策略采样状态-动作实例操作很重要,采样操作可以描述为:从样本卷积神经网络的第一卷积层开始迭代,根据当前状态产生一个随机数,如果随机数大于预设值ε,则将该状态下所有动作分别输入至搜索网络,得到搜索路径评分数组,选择搜索路径评分数组中数值最大的元素对应的动作,利用转移函数得到新的状态,最后将状态-动作作为字典存储;如果随机数小于或等于预设值ε,则从该状态下的动作空间中随机选择动作并得到新的状态,最后将状态-动作作为字典存储;其次,新状态对应第二卷积层,并采取与第一卷积层相同的采样策略进行新状态-新动作选择并按照字典存储;然后依次迭代至样本卷积神经网络最后一层卷积层。
需要说明的是,本实施例中的“第一状态”、“第二状态”、“第三状态”以及“第一动作”、“第二动作”中的“第一”、“第二”、“第三”仅用于区分不同的动作或者状态,并没有任何特殊意义,不应对本示例实施例造成任何特殊限定。
图8示意性示出本公开示例性实施例中一种对搜索网络进行强化学习训练的流程图。
参考图8所示,步骤S810,对初始搜索网络Agent中的参数进行初始化,例如,初始化处理可以包括回放存储空间清空、状态-动作价值网络参数初始化;
步骤S820,通过初始搜索网络并利用ε贪恋策略(ε-greedy)采样状态-动作空间实例;
步骤S830,训练采样得到的状态空间对应的卷积神经网络至损失收敛,计算该卷积神经网络的计算量以及验证集准确率;
步骤S840,将状态-动作空间、计算量、验证集准确率作为字典存放至回放存储空间,当然,也可以将卷积神经网络中算子在具体硬件平台上的推理速度、功耗、内存占用的数据与状态-动作空间、计算量、验证集准确率作为字典存放至回放存储空间;
步骤S850,通过初始搜索智能从回放存储空间中均匀采样字典;
步骤S860,利用Q-learning算法更新初始搜索网络对应的状态-动作价值网络的网络参数;
步骤S870,判断是否达到回放存储空间的迭代次数,若是,则继续执行步骤S880,否则返回执行步骤S850;
步骤S880,判断是否达到状态-动作空间的采样次数,若是,则输出训练完成的搜索网络,并结束当前流程,否则返回执行步骤S820。
在一示例实施例中,可以获取目标计算设备的计算性能数据,并根据计算性能数据确定计算量阈值,获取待下发的初始深度学习模型,该初始深度学习模型可以包括初始卷积神经网络,然后可以根据确定的计算量阈值以及本公开实施例中的神经网络剪枝方法对初始深度学习模型(中的初始卷积神经网络)进行剪枝处理,得到计算量小于计算量阈值的目标深度学习模型,该目标深度学习模型可以包括目标卷积神经网络,最后可以将目标深度学习模型下发到目标计算设备。
其中,目标计算设备是指具有人工智能处理器并运行深度学习模型的电子设备,例如,目标计算设备可以是社区门禁的人脸识别终端,也可以是智能手机等电子设备,本示例实施例对此不做特殊限定。
计算性能数据是指与目标计算设备中与计算相关的属性数据,例如,计算性能数据可以是目标计算设备中人工智能处理器的浮点计算速度、计算核心数量等,也可以是目标计算设备中内存(SRAM)的读写速度等,本示例实施例对此不做特殊限定。
计算量阈值是指目标计算设备以当前的计算性能数据所能支持浮点数运算量的临界值,例如,计算量阈值可以是200万次浮点数运算量(FLOPs),也可以是500万次浮点数运算量(FLOPs),本示例实施例对此不做特殊限定。
在一示例应用场景中,目标计算设备可以是边缘识别设备,如边缘识别设备可以是接入边缘网络的人脸识别终端。服务器在云端训练得到人脸识别模型后,需要通过边缘网络将人脸识别模型下发到各个边缘识别设备中进行运行。但是,一般边缘识别设备均是计算能力较小的设备,而云端训练的人脸识别模型所需要的计算量远远大于边缘识别设备的计算能力,因此需要减少人脸识别模型中冗余的卷积层。
具体的,可以从边缘识别设备获取计算性能数据,也可以根据边缘识别设备的型号从数据库获取计算性能数据,本实施例不以此为限。然后可以根据边缘识别设备的计算性能数据确定计算量阈值,可以理解的是,本实施例中的边缘识别设备可以时一个,也可以是多个不同型号的设备,对应的,计算得到的计算量阈值可以是一个,也可以是多个,本实施例不以此为限。
举例而言,边缘识别设备的计算量阈值可以是200万次浮点数运算量(FLOPs),即边缘识别设备最大能够支持计算量为具有200万次浮点数运算量的深度学习模型。在训练得到人脸识别模型之后,检测人脸识别模型所需要的计算量,若人脸识别模型的计算量大于200万次浮点数运算量,则可以通过本公开实施例中的神经网络剪枝方法确定最优的剪枝率组合,并对人脸识别模型进行剪枝,并重新计算剪枝后的人脸识别模型的计算量,若剪枝后的人脸识别模型的计算量小于200万次浮点数运算量,则说明人脸识别模型可以稳定在边缘识别设备运行,此时将剪枝后的人脸识别模型下发到对应的边缘识别设备进行运行。
当然,目标计算设备还可以是用于车辆检测以及车辆识别的交通监控设备、用于图像处理的智能手机或者可穿戴设备等,这同样在本公开的实施例的保护范围之内。
综上所述,本示例性实施方式中,可以获取预先设计的待剪枝的初始卷积神经网络对应的剪枝搜索空间,该剪枝搜索空间可以包括初始卷积神经网络中各卷积层对应的可选剪枝率,然后可以通过预训练的搜索网络在可选剪枝率中搜索确定用于初始卷积神经网络的目标剪枝率组合,进而可以根据目标剪枝率组合对初始卷积神经网络进行剪枝处理,得到目标卷积神经网络。一方面,通过剪枝搜索空间以及预训练的搜索网络能够自动完成对初始卷积神经网络的结构化剪枝,全程不需要人工的参与,简化剪枝操作,有效提升剪枝效率;另一方面,通过预训练的搜索网络实现自动结构化剪枝,自动搜索求解出限定计算量下每个卷积层的最优卷积核个数的组合方式,提升对计算机视觉任务的泛化能力,同时有效降低剪枝后得到的目标卷积神经网络的计算量,减小卷积神经网络的性能消耗。
需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
进一步的,参考图9所示,本示例的实施方式中还提供一种神经网络剪枝装置900,可以包括剪枝搜索空间获取模块910、剪枝率组合确定模块920和卷积神经网络剪枝模块930。其中:
剪枝搜索空间获取模块910用于获取待剪枝的初始卷积神经网络对应的剪枝搜索空间,所述剪枝搜索空间包括所述初始卷积神经网络中各卷积层对应的可选剪枝率;
剪枝率组合确定模块920用于通过预训练的搜索网络在所述可选剪枝率中搜索确定用于所述初始卷积神经网络的目标剪枝率组合;
卷积神经网络剪枝模块930用于根据所述目标剪枝率组合对所述初始卷积神经网络进行剪枝处理,得到目标卷积神经网络。
在一示例性实施例中,剪枝搜索空间可以包括动作空间和状态空间,剪枝率组合确定模块920可以用于:
通过所述搜索网络在所述动作空间进行迭代搜索,并确定动作选择后的状态空间,所述状态空间包括剪枝率组合;
基于所述搜索网络输出所述状态空间下所述初始卷积神经网络对应的搜索路径评分;
将所述搜索路径评分最大的剪枝率组合作为目标剪枝率组合。
在一示例性实施例中,神经网络剪枝装置900还可以包括验证单元,验证单元可以用于:
若所述目标卷积神经网络的计算量小于或者等于计算量阈值,则确定完成对所述初始卷积神经网络的搜索式结构化剪枝。
在一示例性实施例中,神经网络剪枝装置900还可以包括搜索网络预训练单元,搜索网络预训练单元可以用于:
构建初始搜索网络,并通过所述初始搜索网络采样样本卷积神经网络对应的状态-动作空间;
训练所述状态-动作空间下的所述样本卷积神经网络至损失收敛,并存储所述样本卷积神经网络对应的计算量以及验证集准确率;
将所述状态-动作空间、所述计算量以及所述验证集准确率作为字典存储至回放存储空间;
通过所述初始搜索网络在所述回访存储空间中均匀采样所述字典,以根据所述字典对所述初始搜索网络进行强化学习训练,更新所述初始搜索网络的网络参数,得到训练完成的搜索网络。
在一示例性实施例中,强化学习训练可以采用Q-learning算法,Q-learning算法的即时奖励可以由所述验证集准确率确定。
在一示例性实施例中,搜索网络训练单元还可以用于:
通过所述初始搜索网络从所述样本卷积神经网络的第一卷积层开始迭代,并根据所述第一卷积层的第一状态生成一个随机数;
如果所述随机数大于预设值,则将所述第一状态下所有动作分别输入至所述初始搜索网络,得到搜索路径评分数组;
确定所述搜索路径评分数组中数值最大的元素对应的第一动作,并通过预设的转移函数得到第二状态,并将所述第一动作和所述第二状态作为字典进行存储;
循环以上步骤,直到所述初始搜索网络迭代搜索所述样本卷积神经网络的所有卷积层。
在一示例性实施例中,搜索网络训练单元还可以用于:
如果所述随机数小于或者等于所述预设值,则从所述第一状态下的动作空间中随机选择第二动作,并根据所述第二动作确定第三状态;
将所述第二动作和所述第三状态作为字典进行存储。
在一示例性实施例中,神经网络剪枝装置900还可以包括模型下发模块,该模型下发模块可以用于:
获取目标计算设备的计算性能数据,并根据所述计算性能数据确定计算量阈值;
获取待下发的初始深度学习模型,所述初始深度学习模型包括初始卷积神经网络;
基于所述计算量阈值以及本公开实施例中的神经网络剪枝方法对所述初始深度学习模型进行剪枝处理,得到计算量小于所述计算量阈值的目标深度学习模型,所述目标深度学习模型包括目标卷积神经网络;
将所述目标深度学习模型下发到所述目标计算设备。
上述装置中各模块的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为***、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“***”。
本公开的示例性实施方式提供一种用于实现神经网络剪枝方法的电子设备,其可以是图1中的终端设备101、102、103或服务器105。该电子设备至少包括处理器和存储器,存储器用于存储处理器的可执行指令,处理器配置为经由执行可执行指令来执行神经网络剪枝方法。
下面以图10中的电子设备1000为例,对本公开中的电子设备的构造进行示例性说明。图10所示的电子设备1000仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图10所示,电子设备1000以通用计算设备的形式表现。电子设备1000的组件可以包括但不限于:至少一个处理单元1010、至少一个存储单元1020、连接不同***组件(包括存储单元1020和处理单元1010)的总线1030、显示单元1040。
其中,存储单元1020存储有程序代码,程序代码可以被处理单元1010执行,使得处理单元1010执行本说明书中的运动姿态确定方法。
存储单元1020可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)1021和/或高速缓存存储单元1022,还可以进一步包括只读存储单元(ROM)1023。
存储单元1020还可以包括具有一组(至少一个)程序模块1025的程序/实用工具1024,这样的程序模块1025包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线1030可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、***总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备1000也可以与一个或多个外部设备1070(例如传感器设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1000交互的设备通信,和/或与使得该电子设备1000能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口1050进行。并且,电子设备1000还可以通过网络适配器1060与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器1060通过总线1030与电子设备1000的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1000使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器、数据备份存储***以及传感器模块(如陀螺仪传感器、磁传感器、加速度传感器、距离传感器、接近光传感器等)。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施例的方法。
本公开的示例性实施方式还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。
需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
此外,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。
Claims (11)
1.一种神经网络剪枝方法,其特征在于,包括:
获取待剪枝的初始卷积神经网络对应的剪枝搜索空间,所述剪枝搜索空间包括所述初始卷积神经网络中各卷积层对应的可选剪枝率;
通过预训练的搜索网络在所述可选剪枝率中搜索确定用于所述初始卷积神经网络的目标剪枝率组合;
根据所述目标剪枝率组合对所述初始卷积神经网络进行剪枝处理,得到目标卷积神经网络。
2.根据权利要求1所述的方法,其特征在于,所述剪枝搜索空间包括动作空间和状态空间,所述通过预训练的搜索网络在所述可选剪枝率中搜索确定用于所述初始卷积神经网络的目标剪枝率组合,包括:
通过所述搜索网络在所述动作空间进行迭代搜索,并确定动作选择后的状态空间,所述状态空间包括剪枝率组合;
基于所述搜索网络输出所述状态空间下所述初始卷积神经网络对应的搜索路径评分;
将所述搜索路径评分最大的剪枝率组合作为目标剪枝率组合。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若所述目标卷积神经网络的计算量小于或者等于计算量阈值,则确定完成对所述初始卷积神经网络的搜索式结构化剪枝。
4.根据权利要求1所述的方法,其特征在于,在通过预训练的搜索网络在所述可选剪枝率中搜索确定用于所述初始卷积神经网络的目标剪枝率组合之前,所述方法还包括:
通过预训练过程生成搜索网络;所述预训练过程包括:
构建初始搜索网络,并通过所述初始搜索网络采样样本卷积神经网络对应的状态-动作空间;
训练所述状态-动作空间下的所述样本卷积神经网络至损失收敛,并存储所述样本卷积神经网络对应的计算量以及验证集准确率;
将所述状态-动作空间、所述计算量以及所述验证集准确率作为字典存储至回放存储空间;
通过所述初始搜索网络在所述回访存储空间中均匀采样所述字典,以根据所述字典对所述初始搜索网络进行强化学习训练,更新所述初始搜索网络的网络参数,得到训练完成的搜索网络。
5.根据权利要求4所述的方法,其特征在于,所述强化学习训练采用Q-learning算法,所述Q-learning算法的即时奖励由所述验证集准确率确定。
6.根据权利要求4所述的方法,其特征在于,所述通过所述初始搜索网络采样样本卷积神经网络对应的状态-动作空间,包括:
通过所述初始搜索网络从所述样本卷积神经网络的第一卷积层开始迭代,并根据所述第一卷积层的第一状态生成一个随机数;
如果所述随机数大于预设值,则将所述第一状态下所有动作分别输入至所述初始搜索网络,得到搜索路径评分数组;
确定所述搜索路径评分数组中数值最大的元素对应的第一动作,并通过预设的转移函数得到第二状态,并将所述第一动作和所述第二状态作为字典进行存储;
循环以上步骤,直到所述初始搜索网络迭代搜索所述样本卷积神经网络的所有卷积层。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
如果所述随机数小于或者等于所述预设值,则从所述第一状态下的动作空间中随机选择第二动作,并根据所述第二动作确定第三状态;
将所述第二动作和所述第三状态作为字典进行存储。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取目标计算设备的计算性能数据,并根据所述计算性能数据确定计算量阈值;
获取待下发的初始深度学习模型,所述初始深度学习模型包括初始卷积神经网络;
基于所述计算量阈值以及权利要求1-7任一项所述神经网络剪枝方法对所述初始深度学习模型进行剪枝处理,得到计算量小于所述计算量阈值的目标深度学习模型,所述目标深度学习模型包括目标卷积神经网络;
将所述目标深度学习模型下发到所述目标计算设备。
9.一种神经网络剪枝装置,其特征在于,包括:
剪枝搜索空间获取模块,用于获取待剪枝的初始卷积神经网络对应的剪枝搜索空间,所述剪枝搜索空间包括所述初始卷积神经网络中各卷积层对应的可选剪枝率;
剪枝率组合确定模块,用于通过预训练的搜索网络在所述可选剪枝率中搜索确定用于所述初始卷积神经网络的目标剪枝率组合;
卷积神经网络剪枝模块,用于根据所述目标剪枝率组合对所述初始卷积神经网络进行剪枝处理,得到目标卷积神经网络。
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的方法。
11.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210158744.0A CN114358257A (zh) | 2022-02-21 | 2022-02-21 | 神经网络剪枝方法及装置、可读介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210158744.0A CN114358257A (zh) | 2022-02-21 | 2022-02-21 | 神经网络剪枝方法及装置、可读介质和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114358257A true CN114358257A (zh) | 2022-04-15 |
Family
ID=81093887
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210158744.0A Pending CN114358257A (zh) | 2022-02-21 | 2022-02-21 | 神经网络剪枝方法及装置、可读介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114358257A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115146775A (zh) * | 2022-07-04 | 2022-10-04 | 同方威视技术股份有限公司 | 边缘设备推理加速方法、装置和数据处理*** |
CN116992944A (zh) * | 2023-09-27 | 2023-11-03 | 之江实验室 | 基于可学习重要性评判标准剪枝的图像处理方法及装置 |
TWI835638B (zh) * | 2022-05-04 | 2024-03-11 | 國立清華大學 | 於非對稱策略架構下以階層式強化學習訓練主策略的方法 |
-
2022
- 2022-02-21 CN CN202210158744.0A patent/CN114358257A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI835638B (zh) * | 2022-05-04 | 2024-03-11 | 國立清華大學 | 於非對稱策略架構下以階層式強化學習訓練主策略的方法 |
CN115146775A (zh) * | 2022-07-04 | 2022-10-04 | 同方威视技术股份有限公司 | 边缘设备推理加速方法、装置和数据处理*** |
CN115146775B (zh) * | 2022-07-04 | 2023-05-23 | 同方威视技术股份有限公司 | 边缘设备推理加速方法、装置和数据处理*** |
CN116992944A (zh) * | 2023-09-27 | 2023-11-03 | 之江实验室 | 基于可学习重要性评判标准剪枝的图像处理方法及装置 |
CN116992944B (zh) * | 2023-09-27 | 2023-12-19 | 之江实验室 | 基于可学习重要性评判标准剪枝的图像处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110366734B (zh) | 优化神经网络架构 | |
CN110766142A (zh) | 模型生成方法和装置 | |
CN114358257A (zh) | 神经网络剪枝方法及装置、可读介质和电子设备 | |
US20210004677A1 (en) | Data compression using jointly trained encoder, decoder, and prior neural networks | |
JP7331975B2 (ja) | クロスモーダル検索モデルのトレーニング方法、装置、機器、および記憶媒体 | |
EP4020326A1 (en) | Method and apparatus of training model, device, storage medium, and program product | |
JP2022058915A (ja) | 画像認識モデルをトレーニングするための方法および装置、画像を認識するための方法および装置、電子機器、記憶媒体、並びにコンピュータプログラム | |
CN106960219A (zh) | 图片识别方法及装置、计算机设备及计算机可读介质 | |
CN110929114A (zh) | 利用动态记忆网络来跟踪数字对话状态并生成响应 | |
CN111311321A (zh) | 用户消费行为预测模型训练方法、装置、设备及存储介质 | |
US20190228297A1 (en) | Artificial Intelligence Modelling Engine | |
CN114581868A (zh) | 基于模型通道剪枝的图像分析方法和装置 | |
CN116684330A (zh) | 基于人工智能的流量预测方法、装置、设备及存储介质 | |
CN116992151A (zh) | 一种基于双塔图卷积神经网络的在线课程推荐方法 | |
CN111161238A (zh) | 图像质量评价方法及装置、电子设备、存储介质 | |
CN114386580A (zh) | 决策模型训练、决策方法、装置、电子设备及存储介质 | |
WO2024114659A1 (zh) | 一种摘要生成方法及其相关设备 | |
CN116993185B (zh) | 时间序列预测方法、装置、设备及存储介质 | |
CN114528387A (zh) | 基于对话流自举的深度学习对话策略模型构建方法和*** | |
JP2020155010A (ja) | ニューラルネットワークのモデル縮約装置 | |
CN112949433A (zh) | 视频分类模型的生成方法、装置、设备和存储介质 | |
CN112434872A (zh) | 酒店产量预测方法、***、设备及存储介质 | |
CN112244863A (zh) | 信号识别方法、信号识别装置、电子设备及可读存储介质 | |
CN113723712B (zh) | 风电功率预测方法、***、设备及介质 | |
US20220147801A1 (en) | Hardware architecture determination based on a neural network and a network compilation process |
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 |