网络模型结构的搜索方法、装置以及电子设备与流程

文档序号:19572552发布日期:2019-12-31 19:05阅读:208来源:国知局
网络模型结构的搜索方法、装置以及电子设备与流程

本申请涉及一种计算机领域,尤其涉及神经网络的架构搜索领域。



背景技术:

深度学习技术在很多方向上都取得了巨大的成功,最近几年nas技术(neuralarchitecturesearch,神经网络架构搜索)成为研究热点。nas是用算法代替繁琐的人工操作,在海量的搜索空间中自动搜索出最佳的神经网络架构。进行神经网络的架构搜索的步骤包括:首先,搜索空间定义、确定搜索空间。然后,根据所采用的优化算法,比如用强化学习、进化算法、贝叶斯优化等算法确定搜索策略。最后,搜索得到模型结构的速度以及模型的性能。

目前,神经网络的架构搜索的方法可包括基于强化学习的模型结构自动搜索、基于进化算法的模型结构自动搜索以及基于梯度的模型结构自动搜索。上述三种方法均是利用黑盒的模型结构来生成搜索策略。这样的搜索策略带来了多个技术问题,其中最主要的技术问题是,在进行各种不同的搜索任务时,如分类任务,检测任务,人脸识别任务等,每次搜索都是基于不同的搜索任务的单一的约束条件,得到不同的搜索结果。当多个搜索任务同时进行时,只能逐一进行搜索,即搜索过程与约束条件强耦合,当约束条件发生变化时,需要重新开启搜索。



技术实现要素:

本申请实施例提供一种网络模型结构的搜索方法、装置以及电子设备,以解决现有技术中的一个或多个技术问题。

第一方面,本申请实施例提供了一种网络模型结构的搜索方法,包括:

从搜索空间中的多个网络模型结构中选择采样模型结构;

利用采样模型结构的性能,对概率分布模型的超参数进行更新,得到超参数的预测值;

根据具有超参数的预测值的概率分布模型,得到任一网络模型结构的性能;

根据网络模型结构的性能,筛选出符合搜索任务的网络模型结构。

在本实施方式中,从搜索空间中选择少量的网络模型结构作为采样模型结构,并利用采样模型结构对概率分布模型的超参数进行更新,进而推导出搜索空间中任意网络模型结构的性能。当搜索任务发生变化时,即约束条件发生变化时,无需对搜索空间内全部的网络模型结构进行重新搜索。由于获得了任意网络模型结构的性能,只需要根据各个网络模型结构的性能选择出符合搜索任务的约束条件的网络模型结构即可。将搜索过程与约束条件完全解耦,提高搜索速度和准确率,降低搜索成本。

在一种实施方式中,利用采样模型结构的性能,对概率分布模型的超参数进行更新,得到超参数的预测值,包括:

根据概率分布模型的超参数的先验分布得到采样模型的预测性能;

将采样模型的预测性能、真实性能及其性能偏差,以及超参数的先验分布输入至贝叶斯估计算法模型中,输出超参数的后验分布;

将超参数的后验分布作为下一次获取的超参数的先验分布,进行预设次数的迭代计算,得到超参数的预测值;

其中,预设次数是根据搜索任务预先设定的迭代次数。

在本实施方式中,通过对超参数进行迭代更新,超参数的预测值越来越逼近真实值。由于引入超参数的先验分布,便于在不同搜索任务之间,实现迁移学习,提高搜索效率。

在一种实施方式中,根据具有超参数的预测值的概率分布模型,得到任一网络模型结构的性能,包括:

构建概率分布模型的核函数和均值函数,均值函数表示同一网络模型结构与性能之间的关系,核函数表示不同网络模型结构之间的关系;

将网络模型结构对应的数字编码分别输入至核函数和均值函数中,得到网络模型结构的方差和均值;

其中,网络模型结构的性能包括方差和均值。

在本实施方式中,构建概率分布模型中的核函数和均值函数。考虑了同一网络模型结构与性能之间的关系,以及不同网络模型结构之间的关系,提高了超参数更新的准确率,进而提高搜索精度。

在一种实施方式中,根据网络模型结构的性能,筛选出符合搜索任务的网络模型结构,包括:

获取搜索任务的约束条件;

根据网络模型结构的方差和均值得到置信空间;

在置信空间满足约束条件的情况下,将网络模型结构作为符合搜索任务的搜索结果输出。

在本实施方式中,当更换搜索任务时,约束条件发生变化,无需重新搜索,不同搜索任务之间很容易实现迁移学习,从而显著提升搜索效率。

在一种实施方式中,概率分布模型包括高斯随机场建模模型。

第二方面,本申请提供了一种网络模型结构的搜索装置,包括:

采样模型结构选择模块,用于从搜索空间中的多个网络模型结构中选择采样模型结构;

超参数更新模块,用于利用采样模型结构的性能,对概率分布模型的超参数进行更新,得到超参数的预测值;

模型结构性能获取模块,用于根据具有超参数的预测值的概率分布模型,得到搜索空间中任一网络模型结构的性能;

模型结构筛选模块,用于根据网络模型结构的性能,筛选出符合搜索任务的网络模型结构。

在一种实施方式中,超参数更新模块包括:

预测性能获取单元,用于根据概率分布模型的超参数的先验分布得到采样模型的预测性能;

后验分布计算单元,用于将采样模型的预测性能、真实性能及其性能偏差,以及超参数的先验分布输入至贝叶斯估计算法模型中,输出超参数的后验分布;

迭代计算单元,用于将超参数的后验分布作为下一次获取的超参数的先验分布,进行预设次数的迭代计算,得到超参数的预测值,其中,预设次数是根据搜索任务预先设定的迭代次数。

在一种实施方式中,模型结构性能获取模块包括:

函数构建单元,用于构建概率分布模型的核函数和均值函数,均值函数表示同一网络模型结构与性能之间的关系,核函数表示不同网络模型结构之间的关系;

方差均值计算单元,用于将网络模型结构对应的数字编码分别输入至核函数和均值函数中,得到网络模型结构的方差和均值,其中,网络模型结构的性能包括方差和均值。

在一种实施方式中,模型结构筛选模块包括:

约束条件获取单元,用于获取搜索任务的约束条件;

置信空间获取单元,用于根据网络模型结构的方差和均值得到置信空间;

搜索结果输出单元,用于在置信空间满足约束条件的情况下,将网络模型结构作为符合搜索任务的搜索结果输出。

上述申请中的一个实施例具有如下优点或有益效果:因为利用少量模型结构作为采样模型结构,并利用采样模型结构的性能对概率分布模型的超参数进行更新,进而推导出搜索空间中任意网络模型结构的性能的技术手段,所以克服了每更换一次搜索任务就要重新做搜索的技术问题,进而达到提高搜索效率,降低搜索成本的技术效果。

上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。

附图说明

附图用于更好地理解本方案,不构成对本申请的限定。其中:

图1是根据本申请的一种网络模型结构的搜索方法流程示意图;

图2是根据本申请的另一种网络模型结构的方法流程示意图;

图3是根据本申请的一种网络模型结构的搜索装置的结构框图;

图4是根据本申请的另一种网络模型结构的搜索装置的结构框图;

图5是用来实现本申请实施例的一种网络模型结构的搜索方法的电子设备的框图。

具体实施方式

以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

实施例一

在一种具体的实施方式中,如图1所示,本申请实施例提供了一种网络模型结构的搜索方法,包括:

步骤s10:从搜索空间中的多个网络模型结构中选择采样模型结构;

步骤s20:利用采样模型结构的性能,对概率分布模型的超参数进行更新,得到超参数的预测值;

步骤s30:根据具有超参数的预测值的概率分布模型,得到任一网络模型结构的性能;

步骤s40:根据网络模型结构的性能,筛选出符合搜索任务的网络模型结构。

在一种示例中,概率分布模型不需要训练一个网络就可以计算(预测)出任意网络模型结构的性能,因此概率分布模型是白盒模型。而黑盒模型每次执行搜索任务时,都要训练一个网络模型结构,才能得到更多的网络模型结构性能。由于概率分布模型结构的预测能力,所以,在执行如分类、人脸识别和检测等搜索任务时,更换任务目标时不需要重新搜索。

由于概率分布模型中的超参数未知,所以先对超参数进行估计。本实施方式中,可以利用贝叶斯估计理论对超参数的先验分布进行迭代计算,得到超参数的后验分布,来估计超参数。具体过程包括:首先,初始化概率分布模型中超参数的先验分布。超参数的先验分布是在逐步迭代计算真实的超参数之前的先验信息的概率表达。超参数的先验分布可以通过小数据集统计得到,也可以根据人工经验设定。由于是逐步迭代的过程,网络模型结构的采样的收敛性并不依赖于超参数的先验分布。然后,在搜索空间中,可以随机选择多个网络模型结构作为采样模型结构。由于超参数的更新是逐步迭代的过程,且每轮迭代都需要利用采样模型结构的性能。每轮迭代后,得到超参数的协方差矩阵,协方差矩阵的主对角线元素,反应均值的波动范围。

基于超参数的后验分布,进一步估计搜索空间中任意网络模型结构的性能。网络模型结构的性能包括均值和方差,均值和方差能够反应网络模型结构的稳定性。根据均值和方差可以得到网络模型结构的置信区间。判断置信区间是否满足搜索任务的约束条件,若满足,则搜索终止,否则继续更新概率分布模型结构的超参数。需要指出的是,当前轮次估计得到的超参数的后验分布会作为下一轮估计的先验分布。搜索得到的网络模型结构的均值高,方差小,协方差矩阵小。

在本实施方式中,可以从搜索空间中随机选择少量的模型结构作为采样模型结构,还可以根据互信息最大化的采样策略选择采样模型结构。互信息最大化的采样策略包括:每次迭代时,以候选模型结构和剩余模型结构之间的互信息最大化为目标,选择下一轮迭代时的采样模型结构。选择采样模型结构之后,利用采样模型结构的性能对概率分布模型的超参数进行更新。利用更新后的超参数的概率分布模型,推导出搜索空间中任意模型结构的性能。当搜索任务发生变化时,即约束条件发生变化时,无需对搜索空间内全部的网络模型结构进行重新搜索。由于获得了任意网络模型结构的性能,只需要选择出网络模型结构的性能符合搜索任务的约束条件的网络模型结构即可。将搜索过程与约束条件完全解耦,提高搜索效率,降低搜索成本。

在一种实施方式中,如图2所示,步骤s20:包括:

步骤s201:根据概率分布模型的超参数的先验分布得到采样模型的预测性能;

步骤s202:将采样模型的预测性能、真实性能及其性能偏差,以及超参数的先验分布输入至贝叶斯估计算法模型中,输出超参数的后验分布;

步骤s203:将超参数的后验分布作为下一次获取的超参数的先验分布,进行预设次数的迭代计算,得到超参数的预测值;

其中,预设次数是根据搜索任务预先设定的迭代次数。

在一种示例中,通常先初始化概率分布模型的超参数的先验分布,然后,根据先验分布,选择采样模型结构。在每轮更新超参数之前,先根据概率分布模型的超参数的先验分布估计采样模型的预测性能。将采样模型的预测性能与采样模型的真实性能进行比较,得到性能偏差。贝叶斯估计(bayesianestimation)算法是利用贝叶斯定理结合新的证据及以前的先验概率,来得到新的概率。本实施方式中,利用贝叶斯估计算法结合性能偏差,得到超参数的后验分布。将超参数的后验分布作为下一次获取的超参数的先验分布,循环执行步骤s201-s202。经过多次迭代,对超参数进行不断的更新,使得初始化的超参数经过更新越来越逼近真实值,最后得到超参数的预测值。由于引入超参数的先验分布,在不同搜索任务之间,实现迁移学习,提高搜索效率。

在一种实施方式中,如图2所示,步骤s30,包括:

步骤s301:构建概率分布模型的核函数和均值函数,均值函数表示同一网络模型结构与性能之间的关系,核函数表示不同网络模型结构之间的关系;

步骤s302:将网络模型结构对应的数字编码分别输入至核函数和均值函数中,得到网络模型结构的方差和均值;

其中,网络模型结构的性能包括方差和均值。

在一种示例中,可以根据不同搜索任务的特点设计均值函数和核函数。构建的概率分布模型中的核函数和均值函数中包含待估计的超参数。网络模型结构对应的数字编码又称网络编码,是用数字来编码模型结构。实际任务很复杂,以一个6层卷积神经网络为例,用数字0,1,2分别代表卷积通道数64,128,256。则[0,0,1,1,2,2]代表网络1层到6层通道数分别为64,64,128,128,256,256的模型结构。每组数字编码,唯一决定一个网络模型结构。若利用搜索网络通道数进行编码时,可以采用高斯核函数。若利用搜索网络通道数和卷积核大小进行编码时,可以采用混合高斯核函数。可以采用线性函数设计均值函数。或者,还可以先通过放射变化投影到更高维或更低维空间,然后再在新的空间采用线性函数,构建更复杂的均值函数。由于考虑了同一网络模型结构与性能之间的关系,以及不同网络模型结构之间的关系,所以提高了超参数更新的准确率,进而提高搜索精度。

在一种实施方式中,如图2所示,步骤s40,包括:

步骤s401:获取搜索任务的约束条件;

步骤s402:根据网络模型结构的方差和均值得到置信空间;

步骤s403:在置信空间满足搜索任务的约束条件的情况下,将网络模型结构作为符合搜索任务的搜索结果输出。

在一种示例中,搜索任务的约束条件可以包括网络模型结构在客户端上(如手机端)的延时,或网络模型结构在服务器端的延时,网络模型结构的大小等约束条件。网络模型结构在服务器端的延时指的是模型的速度,比如模型在服务器或者手机端的速度。更换搜索任务时,约束条件发生变化,无需重新搜索,不同搜索任务之间很容易实现迁移学习,从而显著提升搜索效率。

在一种实施方式中,概率分布模型包括高斯随机场建模模型。

在一种示例中,传统的高斯随机场只有时间和空间两个维度,本实施方式中,可以将传统的高斯过程进行了扩展,以不同网络结构之间的相似性作为桥梁将高斯随机场扩展到高维空间。并在高维空间设计核函数来表示不同网络模型结构之间的相关性,设计均值函数来表示同一网络模型结构与性能之间的关系。当高斯随机场建模模型的参数已知的情况下,可以推导出任意模型结构的性能以及置信区间。

实施例二

在另一种具体实施方式中,如图3所示,提供了一种网络模型结构的搜索装置100,包括:

采样模型结构选择模块110,用于从搜索空间中的多个网络模型结构中选择采样模型结构;

超参数更新模块120,用于利用采样模型结构的性能,对概率分布模型的超参数进行更新,得到超参数的预测值;

模型结构性能获取模块130,用于根据具有超参数的预测值的概率分布模型,得到搜索空间中任一网络模型结构的性能;

模型结构筛选模块140,用于根据网络模型结构的性能,筛选出符合搜索任务的网络模型结构。

在一种实施方式中,如图4所示,在网络模型结构的搜索装置100的基础上形成网络模型结构的搜索装置200,超参数更新模块120包括:

预测性能获取单元1201,用于根据概率分布模型的超参数的先验分布得到采样模型的预测性能;

后验分布计算单元1202,用于将采样模型的预测性能、真实性能及其性能偏差,以及超参数的先验分布输入至贝叶斯估计算法模型中,输出超参数的后验分布;

迭代计算单元1203,用于将超参数的后验分布作为下一次获取的超参数的先验分布,进行预设次数的迭代计算,得到超参数的预测值,其中,预设次数是根据搜索任务预先设定的迭代次数。

在一种实施方式中,如图4所示,模型结构性能获取模块130包括:

函数构建单元1301,用于构建概率分布模型的核函数和均值函数,均值函数表示同一网络模型结构与性能之间的关系,核函数表示不同网络模型结构之间的关系;

方差均值计算单元1302,用于将网络模型结构对应的数字编码分别输入至核函数和均值函数中,得到网络模型结构的方差和均值,其中,方差和均值构成网络模型结构的性能。

在一种实施方式中,如图4所示,模型结构筛选模块140包括:

约束条件获取单元1401,用于获取搜索任务的约束条件;

置信空间获取单元1402,用于根据网络模型结构的方差和均值得到置信空间;

搜索结果输出单元1403,用于在置信空间满足约束条件的情况下,将网络模型结构作为符合搜索任务的搜索结果输出。

如图5所示,是根据本申请实施例的网络模型结构的搜索方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。

如图5所示,该电子设备包括:一个或多个处理器501、存储器502,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示图形用户界面(graphicaluserinterface,gui)的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图5中以一个处理器501为例。

存储器502即为本申请所提供的非瞬时计算机可读存储介质。其中,存储器存储有可由至少一个处理器执行的指令,以使至少一个处理器执行本申请所提供的网络模型结构的搜索方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的网络模型结构的搜索方法。

存储器502作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的网络模型结构的搜索对应的程序指令/模块(例如,附图3所示的采样模型结构选择模块110、超参数更新模块120模型结构性能获取模块130和模型结构筛选模块140)。处理器501通过运行存储在存储器502中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的网络模型结构的搜索方法。

存储器502可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据网络模型结构搜索的电子设备的使用所创建的数据等。此外,存储器502可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器502可选包括相对于处理器501远程设置的存储器,这些远程存储器可以通过网络连接至网络模型结构搜索电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

网络模型结构的搜索方法的电子设备还可以包括:输入装置503和输出装置504。处理器501、存储器502、输入装置503和输出装置504可以通过总线或者其他方式连接,图5中以通过总线连接为例。

输入装置503可接收输入的数字或字符信息,以及产生与网络模型结构搜索的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置504可以包括显示设备、辅助照明装置(例如,led)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(liquidcr5staldispla5,lcd)、发光二极管(lightemittingdiode,led)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。

此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用集成电路(applicationspecificintegratedcircuits,asic)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(programmablelogicdevice,pld)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(cathodera5tube,阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(localareanetwork,lan)、广域网(wideareanetwork,wan)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。

根据本申请实施例的技术方案,从搜索空间中选择少量的模型结构作为采样模型结构,并利用采样模型结构对概率分布模型的超参数进行更新,进而推导出搜索空间中任意模型结构的性能。当搜索任务发生变化时,即约束条件发生变化时,无需对搜索空间内全部的网络模型进行重新搜索。由于获得了任意模型结构的性能,只需要根据各个模型结构的性能选择出符合搜索任务的约束条件的模型结构即可。将搜索过程与约束条件完全解耦,提高搜索效率,降低搜索成本。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1