CN112001496B - 神经网络结构搜索方法及系统、电子设备及存储介质 - Google Patents
神经网络结构搜索方法及系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112001496B CN112001496B CN202010877044.8A CN202010877044A CN112001496B CN 112001496 B CN112001496 B CN 112001496B CN 202010877044 A CN202010877044 A CN 202010877044A CN 112001496 B CN112001496 B CN 112001496B
- Authority
- CN
- China
- Prior art keywords
- neural network
- network model
- performance index
- model
- time
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种神经网络结构搜索方法及系统、电子设备及存储介质,神经网络结构搜索方法包括:利用训练集对生成的神经网络模型进行训练,以及利用验证集验证神经网络模型的当前性能指标;将用于表征神经网络模型的结构的参数输入至推理时间预测模型,预测得到神经网络模型在目标硬件平台的推理时间;若当前性能指标和预测的推理时间均满足要求,则输出神经网络模型;否则,根据由当前性能指标和预测的推理时间计算得到的奖励值更新控制器的参数,并对控制器生成的神经网络模型重新进行训练,直至当前性能指标和预测的推理时间均满足要求。本发明能够高效准确地搜索出满足不同硬件平台要求的最优结构的神经网络模型。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种神经网络结构搜索方法及系统、电子设备及存储介质。
背景技术
人工智能已经在各个领域取得了很大的成功,这大部分依赖于手工设计的神经网络模型。近年来,神经网络结构搜索(Neural Architecture Search,NAS)有了非常大的突破,可以帮助开发人员自动搜索出最优的神经网络结构。
然而,通过NAS搜索出来的一种最优的神经网络结构往往无法适用于所有的硬件平台。在面对不同硬件平台的不同推理时间要求时,现有NAS无法准确高效地评估出搜索出的神经网络结构的推理时间。
发明内容
本发明要解决的技术问题是为了克服现有技术中的NAS无法准确高效地评估出搜索出的神经网络结构的推理时间的缺陷,提供一种神经网络结构搜索方法及系统、电子设备及存储介质。
本发明是通过下述技术方案来解决上述技术问题:
本发明的第一方面提供一种神经网络结构搜索方法,包括以下步骤:
利用训练集对生成的神经网络模型进行训练,以及利用验证集验证所述神经网络模型的当前性能指标;
将用于表征所述神经网络模型的结构的参数输入至推理时间预测模型,预测得到所述神经网络模型在目标硬件平台的推理时间;其中,所述推理时间预测模型通过不同结构的神经网络模型以及每个神经网络模型在所述目标硬件平台的推理时间训练得到;
若所述当前性能指标和预测的推理时间均满足要求,则输出所述神经网络模型;否则,根据由所述当前性能指标和预测的推理时间计算得到的奖励值更新控制器的参数,并对所述控制器生成的神经网络模型重新进行训练,直至训练得到的神经网络模型的当前性能指标和预测的所述神经网络模型在目标硬件平台的推理时间均满足要求;
其中,所述当前性能指标和预测的推理时间均满足要求是指所述当前性能指标达到目标性能指标,且预测的推理时间小于所述目标硬件平台限制的推理时间。
较佳地,所述利用训练集对生成的神经网络模型进行训练的步骤具体包括:
较佳地,所述推理时间预测模型为循环神经网络模型。
较佳地,所述神经网络模型包括多个子网络模型,所述推理时间预测模型包括链式连接的多个循环单元,其中,所述子网络模型与所述循环单元一一对应;
所述将用于表征所述神经网络模型的结构的参数输入至推理时间预测模型,具体包括:
将用于表征所述子网络模型的结构的参数分别输入至与所述子网络模型对应的循环单元。
较佳地,利用以下公式计算所述奖励值Reward:
其中,Pcurrent为训练得到的神经网络模型的当前性能指标,Latcurrent为预测的所述神经网络模型在目标硬件平台的推理时间,Lattarget为所述目标硬件平台限制的推理时间,α为调节平衡的超参数。
本发明的第二方面提供一种神经网络结构搜索系统,包括训练验证模块、时间预测模块、指标判断模块、参数更新模块、模型输出模块;
所述训练验证模块用于利用训练集对生成的神经网络模型进行训练,以及利用验证集验证所述神经网络模型的当前性能指标;
所述时间预测模块用于将用于表征所述神经网络模型的结构的参数输入至推理时间预测模型,预测得到所述神经网络模型在目标硬件平台的推理时间;其中,所述推理时间预测模型通过不同结构的神经网络模型以及每个神经网络模型在所述目标硬件平台的推理时间训练得到;
所述指标判断模块用于判断所述当前性能指标和预测的推理时间是否均满足要求,并在否的情况下调用所述参数更新模块,在是的情况下调用所述模型输出模块;
所述参数更新模块用于根据由所述当前性能指标和预测的推理时间计算得到的奖励值更新控制器的参数,并针对所述控制器生成的神经网络模型调用所述训练验证模块以及所述时间预测模块,直至训练得到的神经网络模型的当前性能指标和所述神经网络模型在目标硬件平台的推理时间均满足要求;其中,所述当前性能指标和预测的推理时间均满足要求是指所述当前性能指标达到目标性能指标,且预测的推理时间小于所述目标硬件平台限制的推理时间;
所述模型输出模块用于输出所述神经网络模型。
较佳地,所述训练验证模块具体用于利用训练集在确定的搜索空间内搜索神经网络模型。
较佳地,所述推理时间预测模型为循环神经网络模型。
较佳地,所述神经网络模型包括多个子网络模型,所述推理时间预测模型包括链式连接的多个循环单元,其中,所述子网络模型与所述循环单元一一对应;
所述时间预测模块具体用于将用于表征所述子网络模型的结构的参数分别输入至与所述子网络模型对应的循环单元。
较佳地,所述参数更新模块具体利用以下公式计算所述奖励值Reward:
其中,Pcurrent为训练得到的神经网络模型的当前性能指标,Latcurrent为预测的所述神经网络模型在目标硬件平台的推理时间,Lattarget为所述目标硬件平台限制的推理时间,α为调节平衡的超参数。
本发明的第三方面提供一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面所述的神经网络结构搜索方法。
本发明的第四方面提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现第一方面所述的神经网络结构搜索方法的步骤。
本发明的积极进步效果在于:通过将用于表征神经网络模型的结构的参数输入至训练好的推理时间模型中,根据神经网络模型的当前性能指标以及预测的所述神经网络模型在目标硬件平台的推理训练神经网络模型,从而能够高效准确地搜索出满足不同硬件平台要求的最优结构的神经网络模型。
附图说明
图1为本发明实施例1提供的一种神经网络结构搜索方法的流程图。
图2为本发明实施例1提供的神经网络模型包括N个Block的示意图。
图3为本发明实施例1提供的一个Block包括n个Layer的示意图。
图4为本发明实施例1提供的一种Layer的结构示意图。
图5为本发明实施例1提供的另一种Layer的结构示意图。
图6为本发明实施例1提供的推理时间预测模型的结构示意图。
图7为本发明实施例1提供的一种神经网络结构搜索方法的详细流程图。
图8为本发明实施例2提供的一种神经网络结构搜索系统的结构框图。
图9为本发明实施例3提供的一种电子设备的结构示意图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
本实施例提供一种神经网络结构搜索方法,如图1所示,包括以下步骤:
步骤S101、利用训练集对生成的神经网络模型进行训练,以及利用验证集验证所述神经网络模型的当前性能指标。
在可选的一种实施方式中,步骤S101之前包括以下步骤:
步骤S100a、确定超参数。
步骤S100b、随机初始化模型参数;
步骤S100c、基于确定的超参数以及初始化的模型参数生成神经网络模型。其中,步骤S100c中生成的神经网络模型为随机模型。
需要说明的是,步骤S100a中的超参数与步骤S100b中的模型参数不同。超参数是指模型外部的配置,其值不能从样本数据中估计得到,具体可以为训练神经网络模型的学习速率、神经网络的隐藏层数、树的数量或深度等参数。模型参数是指模型内部的配置变量,其值可以从样本数据中估计得到,具体可以为神经网络每层的权重等。
本实施方式中的神经网络模型可以应用于图像分类、文本识别、语音检测等不同的领域。在将神经网络模型应用于图像分类领域的一个例子中,将包括图像数据以及对应分类结果的样本划分为训练集和验证集,神经网络模型的性能指标为图像分类的准确率。在将神经网络模型应用于文本识别领域的一个例子中,将包括文本数据以及对应识别结果的样本划分为训练集和验证集,神经网络模型的性能指标为本文识别的准确率。
为了减少搜索神经网络模型的时间,在步骤S101可选的一种实施方式中,利用训练集在确定的搜索空间内搜索神经网络模型。本实施方式中,确定的搜索空间定义了可以搜索的神经网络结构的集合。
步骤S102、将用于表征所述神经网络模型的结构的参数输入至推理时间预测模型,预测得到所述神经网络模型在目标硬件平台的推理时间。其中,所述推理时间预测模型通过不同结构的神经网络模型以及每个神经网络模型在所述目标硬件平台的推理时间训练得到。
其中,目标硬件平台可以为嵌入式平台,例如ARM平台、DSP平台或者FPGA平台等,也可以为其他硬件平台,具体不作限定。
需要说明的是,神经网络模型的推理时间是指对输入数据完成一次预测的时间。在将神经网络模型应用于图像分类领域的一个例子中,神经网络模型对输入的图像数据完成一次分类预测的时间即为该神经网络模型的推理时间。其中,神经网络模型在目标硬件平台的推理时间是指基于目标硬件平台实现的神经网络模型对输入数据完成一次预测的时间。
本实施方式中,通过事先收集不同结构的神经网络模型以及每个神经网络模型在目标硬件平台的推理时间训练得到推理时间预测模型。其中,每个神经网络模型在目标硬件平台的推理时间为真实的推理时间,具体可以通过实际测量得到。
本实施方式对神经网络模型的深度、连接方式等内部结构没有固定的要求,灵活性较高,只要能用参数表征神经网络模型的结构即可。下面对用于表征神经网络模型的结构的参数进行详细说明。
通常,神经网络模型包括多个子网络模型。本实施例中,一个子网络模型称为一个Block,每个Block由若干个Layer组成。图2是用于示出神经网络模型包括N个Block的示意图,图3是用于示出一个Block包括n个Layer的示意图。
图4是用于示出一种Layer的结构示意图。如图4所示,Conv_1和Conv_3代表卷积操作;Conv_2代表组卷积,特征融合为特征图相加。
图4所示Layer的结构具有以下限制条件:
Conv_1和Conv_3的卷积核大小为1;
Conv_1和Conv_2输出的通道数相同;
Conv_3输出的通道数与当前Layer输入的通道数相同。
图4所示Layer的结构可以由以下参数确定:
Conv_1输出的通道数;
Conv_2的组卷积核大小;
Conv_2的组卷积的宽度。
图5是用于示出另一种Layer的结构示意图。如图5所示,Conv_1、Conv_3和Conv_4代表卷积操作;Conv_2代表组卷积,AvgPool_2代表平均池化操作,特征融合为特征图相加。
图5所示Layer的结构具有以下限制条件:
Conv_1、Conv_3和Conv_4的卷积核大小为1;
Conv_1和Conv_2输出的通道数相同;
Conv_2步长为2;
Conv_3和Conv_4输出的通道数相同。
图5所示Layer的结构可以由以下参数确定:
Conv_1输出的通道数;
Conv_2的组卷积核大小;
Conv_2的组卷积的宽度;
Conv_3输出的通道数。
在可选的一种实施方式中,图3所示Block的结构具有以下限制条件:
Layer 1固定为图5所示的Layer,即第二种Layer;
Layer 2~Layer n固定为图4所示的Layer,即第一种Layer;
每个Layer中Conv_1输出的通道数相同;
每个Layer中Conv_2的组卷积核大小相同;
每个Layer中Conv_2的组卷积核宽度相同。
图3所示Block的结构可以由以下参数确定:
Layer 1输出的通道数C_out;
每个Layer中Conv_1输出的通道数C_exp;
每个Layer中Conv_2的组卷积核大小k;
每个Layer中Conv_2的组卷积核宽度g;
第一种Layer的个数d。
上述例子中,表征Block 1结构的参数包括{C_out1,C_exp1,k1,g1,d1},表征Block 2结构的参数包括{C_out2,C_exp2,k2,g2,d2},以此类推,表征Block N结构的参数包括{C_outN,C_expN,kN,gN,dN}。为了减少搜索神经网络模型的时间,从特定的集合即确定的搜索空间中选取Block 1~Block N中的每个参数。
在具体实施中,对表征每个Block结构的参数进行编码后输入至推理时间预测模型。如果一个参数有m中选择,可以通过位0或1来表示,其中,代表对log2(m)向上取整。上述表征每个Block结构的参数可以由一系列0或1的二进制码表示。其中,将表征Block 1结构的参数编码为Code1,将表征Block 2结构的参数编码为Code2,以此类推,将表征Block N结构的参数编码为CodeN。上述步骤S102中,将{Code1,Code2,…,CodeN}输入至推理时间预测模型中,预测得到包括Block 1~Block N的神经网络模型在目标硬件平台的推理时间。
在可选的一种实施方式中,上述推理时间预测模型为循环神经网络模型。
在可选的一种实施方式中,上述神经网络模型包括多个子网络模型,所述推理时间预测模型包括链式连接的多个循环单元,其中,所述子网络模型与所述循环单元一一对应。本实施方式中,为了提高神经网络模型推理时间的预测准确度,将神经网络模型中各子网络模型之间的依赖关系引入推理时间预测模型中,步骤S102具体包括:将用于表征所述子网络模型的结构的参数分别输入至与所述子网络模型对应的循环单元。
在如图6所示的例子中,推理时间预测模型包括链式连接的N个循环单元,具体为循环单元1~循环单元N。将表征Block 1~Block N结构的参数编码分别输入至循环单元1~循环单元N中,具体地,将Code1输入至循环单元1,将Code2输入至循环单元2,以此类推,将CodeN输入至循环单元N。
步骤S103、判断所述当前性能指标和预测的推理时间是否均满足要求,若否,则执行步骤S104,若是,则执行步骤S105。
步骤S103中,所述当前性能指标和预测的推理时间均满足要求是指所述当前性能指标达到目标性能指标,且预测的推理时间小于所述目标硬件平台限制的推理时间。
其中,目标性能指标可以根据实际需求进行设置,在一个例子中,将目标性能指标设为90%的准确率。
步骤S104、根据由所述当前性能指标和预测的推理时间计算得到的奖励值更新控制器的参数,并对所述控制器生成的神经网络模型重新进行训练,即返回步骤S101,直至训练得到的神经网络模型的当前性能指标和预测的所述神经网络模型在目标硬件平台的推理时间均满足要求。本实施方式中推理时间预测模型用于指导神经网络模型的搜索过程,具体地,指导搜索出满足目标硬件平台对推理时间要求的神经网络模型。
本实施方式中,控制器利用更新的参数生成新的神经网络模型,返回步骤S101利用训练集对新的神经网络模型进行训练,直至训练得到的神经网络模型的当前性能指标和预测的所述神经网络模型在目标硬件平台的推理时间均满足要求,停止训练,然后执行步骤S105。
在可选的一种实施方式中,利用以下公式计算所述奖励值Reward:
其中,Pcurrent为训练得到的神经网络模型的当前性能指标,Latcurrent为预测的所述神经网络模型在目标硬件平台的推理时间,Lattarget为所述目标硬件平台限制的推理时间,α为调节平衡的超参数。
在步骤S104可选的一种实施方式中,使用近端策略优化(Proximal PolicyOptimization,PPO)算法更新控制器的参数,以使得奖励值最大化。
步骤S105、输出所述神经网络模型。最终输出的神经网络模型不仅满足设定的目标性能指标,而且满足目标硬件平台限制的推理时间。
图7是用于示出一种神经网络结构搜索方法的详细流程图。如图7所示,首先,设置搜索空间及神经网络模型的目标性能指标,并确定目标硬件平台。基于目标硬件平台收集不同结构的神经网络模型以及每个神经网络模型在目标硬件平台的推理时间,训练得到推理时间预测模型。同时,基于确定的超参数以及随机初始化的模型参数生成随机的神经网络模型,利用训练集对其进行训练,利用验证集验证其当前性能指标,以及将用于表征训练得到的神经网络模型的参数输入上述推理时间预测模型,判断神经网络模型的当前性能指标以及预测的推理时间是否均满足要求,若否,则计算当前奖励值,并根据奖励值更新控制器的参数,控制器基于更新的参数生成新的神经网络模型,利用训练集重新对其训练,直至训练得到的神经网络模型的当前性能指标以及预测的推理时间均满足要求,输出满足要求的神经网络模型。若是,则直接输出满足要求的神经网络模型。
本发明实施例中,通过将用于表征神经网络模型的结构的参数输入至训练好的推理时间模型中,根据神经网络模型的当前性能指标以及预测的所述神经网络模型在目标硬件平台的推理训练神经网络模型,从而能够高效准确地搜索出满足不同硬件平台要求的最优结构的神经网络模型。
实施例2
本实施例提供一种神经网络结构搜索系统80,如图8所示,包括训练验证模块81、时间预测模块82、指标判断模块83、参数更新模块84以及模型输出模块85。
训练验证模块81用于利用训练集对生成的神经网络模型进行训练,以及利用验证集验证所述神经网络模型的当前性能指标。
在可选的一种实施方式中,上述训练验证模块具体用于利用训练集在确定的搜索空间内搜索神经网络模型。
时间预测模块82用于将用于表征所述神经网络模型的结构的参数输入至推理时间预测模型,预测得到所述神经网络模型在目标硬件平台的推理时间;其中,所述推理时间预测模型通过不同结构的神经网络模型以及每个神经网络模型在所述目标硬件平台的推理时间训练得到。
在可选的一种实施方式中,上述推理时间预测模型为循环神经网络模型。
在可选的一种实施方式中,所述神经网络模型包括多个子网络模型,所述推理时间预测模型包括链式连接的多个循环单元,其中,所述子网络模型与所述循环单元一一对应。上述时间预测模块具体用于将用于表征所述子网络模型的结构的参数分别输入至与所述子网络模型对应的循环单元。
指标判断模块83用于判断所述当前性能指标和预测的推理时间是否均满足要求,并在否的情况下调用所述参数更新模块,在是的情况下调用所述模型输出模块。
参数更新模块84用于根据由所述当前性能指标和预测的推理时间计算得到的奖励值更新控制器的参数,并针对所述控制器生成的神经网络模型调用所述训练验证模块以及所述时间预测模块,直至训练得到的神经网络模型的当前性能指标和所述神经网络模型在目标硬件平台的推理时间均满足要求。其中,所述当前性能指标和预测的推理时间均满足要求是指所述当前性能指标达到目标性能指标,且预测的推理时间小于所述目标硬件平台限制的推理时间。
在可选的一种实施方式中,上述参数更新模块具体利用以下公式计算所述奖励值Reward:
其中,Pcurrent为训练得到的神经网络模型的当前性能指标,Latcurrent为预测的所述神经网络模型在目标硬件平台的推理时间,Lattarget为所述目标硬件平台限制的推理时间,α为调节平衡的超参数。
模型输出模块85用于输出所述神经网络模型。
本发明实施例中,通过将用于表征神经网络模型的结构的参数输入至训练好的推理时间模型中,根据神经网络模型的当前性能指标以及预测的所述神经网络模型在目标硬件平台的推理训练神经网络模型,从而能够高效准确地搜索出满足不同硬件平台要求的最优结构的神经网络模型。
实施例3
图9为本实施例提供的一种电子设备的结构示意图。所述电子设备包括存储器、处理器、存储在存储器上并可在处理器上运行的计算机程序以及实现不同功能的多个子系统,所述处理器执行所述程序时实现实施例1的神经网络结构搜索方法。图9显示的电子设备3仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
电子设备3的组件可以包括但不限于:上述至少一个处理器4、上述至少一个存储器5、连接不同系统组件(包括存储器5和处理器4)的总线6。
总线6包括数据总线、地址总线和控制总线。
存储器5可以包括易失性存储器,例如随机存取存储器(RAM)和/或高速缓存存储器,还可以进一步包括只读存储器(ROM)。
存储器5还可以包括具有一组(至少一个)程序模块的程序/实用工具,这样的程序模块包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
处理器4通过运行存储在存储器5中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例1的神经网络结构搜索方法。
电子设备3也可以与一个或多个外部设备7(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口8进行。并且,电子设备3还可以通过网络适配器9与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图9所示,网络适配器9通过总线6与电子设备3的其它模块通信。应当明白,尽管图9中未示出,可以结合电子设备3使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
实施例4
本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现实施例1的神经网络结构搜索方法的步骤。
其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。
在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行实现实施例1的神经网络结构搜索方法的步骤。
其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
Claims (10)
1.一种神经网络结构搜索方法,其特征在于,包括以下步骤:
利用训练集对生成的神经网络模型进行训练,以及利用验证集验证所述神经网络模型的当前性能指标;
将用于表征所述神经网络模型的结构的参数输入至推理时间预测模型,预测得到所述神经网络模型在目标硬件平台的推理时间;其中,所述推理时间预测模型通过不同结构的神经网络模型以及每个神经网络模型在所述目标硬件平台的推理时间训练得到;
若所述当前性能指标和预测的推理时间均满足要求,则输出所述神经网络模型;否则,根据由所述当前性能指标和预测的推理时间计算得到的奖励值更新控制器的参数,并对所述控制器生成的神经网络模型重新进行训练,直至训练得到的神经网络模型的当前性能指标和预测的所述神经网络模型在目标硬件平台的推理时间均满足要求;
其中,所述当前性能指标和预测的推理时间均满足要求是指所述当前性能指标达到目标性能指标,且预测的推理时间小于所述目标硬件平台限制的推理时间;
利用以下公式计算所述奖励值Reward:
其中,Pcurrent为训练得到的神经网络模型的当前性能指标,Latcurrent为预测的所述神经网络模型在目标硬件平台的推理时间,Lattarget为所述目标硬件平台限制的推理时间,α为调节平衡的超参数。
2.如权利要求1所述的方法,其特征在于,所述利用训练集对生成的神经网络模型进行训练的步骤具体包括:利用训练集在确定的搜索空间内搜索神经网络模型。
3.如权利要求1所述的方法,其特征在于,所述推理时间预测模型为循环神经网络模型。
4.如权利要求3所述的方法,其特征在于,所述神经网络模型包括多个子网络模型,所述推理时间预测模型包括链式连接的多个循环单元,其中,所述子网络模型与所述循环单元一一对应;
所述将用于表征所述神经网络模型的结构的参数输入至推理时间预测模型,具体包括:
将用于表征所述子网络模型的结构的参数分别输入至与所述子网络模型对应的循环单元。
5.一种神经网络结构搜索系统,其特征在于,包括训练验证模块、时间预测模块、指标判断模块、参数更新模块、模型输出模块;
所述训练验证模块用于利用训练集对生成的神经网络模型进行训练,以及利用验证集验证所述神经网络模型的当前性能指标;
所述时间预测模块用于将用于表征所述神经网络模型的结构的参数输入至推理时间预测模型,预测得到所述神经网络模型在目标硬件平台的推理时间;其中,所述推理时间预测模型通过不同结构的神经网络模型以及每个神经网络模型在所述目标硬件平台的推理时间训练得到;
所述指标判断模块用于判断所述当前性能指标和预测的推理时间是否均满足要求,并在否的情况下调用所述参数更新模块,在是的情况下调用所述模型输出模块;
所述参数更新模块用于根据由所述当前性能指标和预测的推理时间计算得到的奖励值更新控制器的参数,并针对所述控制器生成的神经网络模型调用所述训练验证模块以及所述时间预测模块,直至训练得到的神经网络模型的当前性能指标和所述神经网络模型在目标硬件平台的推理时间均满足要求;其中,所述当前性能指标和预测的推理时间均满足要求是指所述当前性能指标达到目标性能指标,且预测的推理时间小于所述目标硬件平台限制的推理时间;
所述模型输出模块用于输出所述神经网络模型;
所述参数更新模块具体利用以下公式计算所述奖励值Reward:
其中,Pcurrent为训练得到的神经网络模型的当前性能指标,Latcurrent为预测的所述神经网络模型在目标硬件平台的推理时间,Lattarget为所述目标硬件平台限制的推理时间,α为调节平衡的超参数。
6.如权利要求5所述的系统,其特征在于,所述训练验证模块具体用于利用训练集在确定的搜索空间内搜索神经网络模型。
7.如权利要求5所述的系统,其特征在于,所述推理时间预测模型为循环神经网络模型。
8.如权利要求7所述的系统,其特征在于,所述神经网络模型包括多个子网络模型,所述推理时间预测模型包括链式连接的多个循环单元,其中,所述子网络模型与所述循环单元一一对应;
所述时间预测模块具体用于将用于表征所述子网络模型的结构的参数分别输入至与所述子网络模型对应的循环单元。
9.一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-4中任一项所述的神经网络结构搜索方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-4中任一项所述的神经网络结构搜索方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010877044.8A CN112001496B (zh) | 2020-08-27 | 2020-08-27 | 神经网络结构搜索方法及系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010877044.8A CN112001496B (zh) | 2020-08-27 | 2020-08-27 | 神经网络结构搜索方法及系统、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112001496A CN112001496A (zh) | 2020-11-27 |
CN112001496B true CN112001496B (zh) | 2022-09-27 |
Family
ID=73471580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010877044.8A Active CN112001496B (zh) | 2020-08-27 | 2020-08-27 | 神经网络结构搜索方法及系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112001496B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114595375A (zh) * | 2020-12-03 | 2022-06-07 | 北京搜狗科技发展有限公司 | 一种搜索方法、装置和电子设备 |
CN112488299A (zh) * | 2020-12-03 | 2021-03-12 | 华为技术有限公司 | 一种神经网络获取方法及装置 |
CN114969636B (zh) * | 2021-03-23 | 2023-10-03 | 华为技术有限公司 | 一种模型推荐的方法、装置和计算机设备 |
CN113469078B (zh) * | 2021-07-07 | 2023-07-04 | 西安电子科技大学 | 基于自动设计长短时记忆网络的高光谱图像分类方法 |
CN113866638A (zh) * | 2021-08-24 | 2021-12-31 | 陈九廷 | 一种电池参数推测方法、装置、设备及介质 |
CN116933874A (zh) * | 2022-04-02 | 2023-10-24 | 维沃移动通信有限公司 | 验证方法、装置及设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200104715A1 (en) * | 2018-09-28 | 2020-04-02 | Xilinx, Inc. | Training of neural networks by including implementation cost as an objective |
CN111325338B (zh) * | 2020-02-12 | 2023-05-05 | 暗物智能科技(广州)有限公司 | 神经网络结构评价模型构建和神经网络结构搜索方法 |
CN111582433B (zh) * | 2020-04-30 | 2022-07-15 | 清华大学 | 一种硬件友好的神经网络结构自动搜索方法及装置 |
-
2020
- 2020-08-27 CN CN202010877044.8A patent/CN112001496B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112001496A (zh) | 2020-11-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112001496B (zh) | 神经网络结构搜索方法及系统、电子设备及存储介质 | |
Groshev et al. | Learning generalized reactive policies using deep neural networks | |
CN111582694B (zh) | 一种学习评估方法及装置 | |
CN103049792B (zh) | 深层神经网络的辨别预训练 | |
CN110046710A (zh) | 一种神经网络的非线性函数极值优化方法及系统 | |
CN114860893B (zh) | 基于多模态数据融合与强化学习的智能决策方法及装置 | |
CN115812180A (zh) | 使用奖励预测模型的机器人控制的离线学习 | |
CN108171328A (zh) | 一种卷积运算方法和基于该方法的神经网络处理器 | |
CN116627503A (zh) | 神经网络模型的编译方法、优化模型的训练方法和装置 | |
CN115659275A (zh) | 非结构化人机交互环境中的实时准确轨迹预测方法及系统 | |
Ramirez et al. | Reinforcement learning from expert demonstrations with application to redundant robot control | |
Krishnamoorthy et al. | Deep learning techniques and optimization strategies in big data analytics: automated transfer learning of convolutional neural networks using Enas algorithm | |
CN117114053A (zh) | 基于结构搜索和知识蒸馏的卷积神经网络模型压缩方法和装置 | |
Coelho et al. | A Chaotic Inertia Weight TLBO Applied to Troubleshooting Optimization Problems | |
CN116882503A (zh) | 基于知识推理模型的科技创新服务决策支持方法 | |
CN116011681A (zh) | 一种气象数据预测方法、装置、存储介质及电子装置 | |
CN110858504A (zh) | 产生化学结构的方法、神经网络设备和非瞬时计算机可读的记录介质 | |
KR102388215B1 (ko) | 자기주의 기반 심층 신경망 모델을 이용한 약물-표적 상호작용 예측 장치 및 그 방법 | |
CN115081609A (zh) | 一种智能决策中的加速方法、终端设备及存储介质 | |
CN115170002A (zh) | 一种基于神经网络的保障能力评估方法及其应用 | |
JP7438544B2 (ja) | ニューラルネットワーク処理装置、コンピュータプログラム、ニューラルネットワーク製造方法、ニューラルネットワークデータの製造方法、ニューラルネットワーク利用装置、及びニューラルネットワーク小規模化方法 | |
CN112380326A (zh) | 一种基于多层感知的问题答案抽取方法及电子装置 | |
Anireh et al. | HTM-MAT: An online prediction software toolbox based on cortical machine learning algorithm | |
CN114168320B (zh) | 基于隐式空间映射的端到端边缘智能模型搜索方法和系统 | |
CN114372151B (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 |