首页 / 专利库 / 人工智能 / 人工智能 / 机器人技术 / 机器人 / 网络结构搜索方法和装置、存储介质、电子设备

网络结构搜索方法和装置、存储介质、电子设备

阅读:712发布:2020-05-08

专利汇可以提供网络结构搜索方法和装置、存储介质、电子设备专利检索,专利查询,专利分析的服务。并且本公开 实施例 公开了一种网络结构搜索方法和装置、存储介质、 电子 设备,其中,方法包括:基于预设训练任务对应的训练集样本对已知网络结构的第一网络进行训练,确定所述第一网络中对应所述预设训练任务的第一子网络;基于所述第一网络确定第二网络,基于所述训练集样本对所述第二网络进行训练,确定所述第二网络中对应所述预设训练任务的第二子网络;基于所述第一子网络和所述第二子网络确定包括两条路径的目标网络;通过目标网络的两条路径可以获得高级语义信息和底层细节信息,进而可以确保结合高级语义信息和底层细节信息有助于密集预测任务的预测。,下面是网络结构搜索方法和装置、存储介质、电子设备专利的具体信息内容。

1.一种网络结构搜索方法,包括:
基于预设训练任务对应的训练集样本对具有预设网络结构的第一网络进行训练,从所述已训练的第一网络中确定对应所述预设训练任务的第一子网络;
基于所述第一网络确定具有多分支结构的第二网络,基于所述训练集样本对所述第二网络进行训练,从所述已训练的第二网络中确定对应所述预设训练任务的第二子网络;
基于所述第一子网络和所述第二子网络确定包括两条路径的目标网络,其中,所述第一子网络和所述第二子网络分别为所述目标网络中的一条路径。
2.根据权利要求1所述的方法,其中,所述基于所述第一网络确定具有多个分支结构的第二网络,基于所述训练集样本对所述第二网络进行训练,从所述已训练的第二网络中确定对应所述预设训练任务的第二子网络,包括:
对所述第一网络包括的至少两个阶段中的每个阶段之后的网络层进行扩展处理,确定具有多个分支结构的所述第二网络;
基于所述训练集样本对所述第二网络进行训练,确定所述第二网络中每两个网络层之间的连接权重;
基于所述连接权重确定所述第二网络中对应所述预设训练任务的第二子网络。
3.根据权利要求2所述的方法,其中,所述第一网络包括的至少两个阶段中每两个相邻阶段包括依次连接的第一阶段和第二阶段,所述第一阶段的通道数小于所述第二阶段的通道数;
所述对所述第一网络包括的至少两个阶段中的每个阶段之后的网络层进行扩展处理,确定具有多个分支结构的所述第二网络,包括:
在所述每两个相邻阶段中的第一阶段之后增加至少一个分支阶段;其中,所述至少一个分支阶段中的通道数分别与所述第二阶段之前的至少一个阶段的通道数相同;
基于所述第一网络和所有所述分支阶段确定所述第二网络,所述至少一个分支阶段中的网络层与所述第二阶段中的网络层存在关联关系,且所述至少一个分支阶段中的网络层之间存在关联关系。
4.根据权利要求2所述的方法,其中,所述基于所述连接权重确定所述第二网络中对应所述预设训练任务的第二子网络,包括:
基于所述第二网络包括的至少两个子网络中每个子网络对应的所有所述连接权重,确定所述第二网络中对应所述预设训练任务的第二子网络。
5.根据权利要求4所述的方法,其中,所述基于所述第二网络包括的至少两个子网络中每个子网络对应的所有连接权重,确定所述第二网络中对应所述预设训练任务的第二子网络,包括:
利用维特比算法根据所述至少两个子网络中每个子网络对应的所有连接权重,确定所述第二网络中的一个子网络作为对应所述预设训练任务的第二子网络。
6.根据权利要求1-5任一所述的方法,所述基于所述第一子网络和所述第二子网络确定包括两条路径的目标网络,包括:
保留在所述第二网络中所述第一子网络与所述第二子网络对应网络层之间的连接,以所述第二子网络的输出层作为输出端,确定以所述第一子网络作为第一路径、以所述第二子网络作为第二路径的所述目标网络。
7.根据权利要求1所述的方法,其中,所述第一网络中包括至少一个子网络;
所述基于预设训练任务对应的训练集样本对具有预设网络结构的第一网络进行训练,从所述已训练的第一网络中确定对应所述预设训练任务的第一子网络,包括:
基于所述预设训练任务对应的训练集样本对所述第一网络进行训练,确定所述第一网络中每两个网络层之间的连接权重;
基于所述连接权重,确定所述预设训练任务对应的第一子网络。
8.根据权利要求7所述的方法,其中,所述基于所述连接权重,确定所述预设训练任务对应的第一子网络,包括:
基于所述第一网络中每两层结构之间的多个连接权重中的最大连接权重确定所述两层结构之间的一个关联关系,获得每两层结构之间具有一个关联的第一子网络。
9.一种网络结构搜索装置,包括:
第一网络训练模,用于基于预设训练任务对应的训练集样本对具有预设网络结构的第一网络进行训练,从所述已训练的第一网络中确定对应所述预设训练任务的第一子网络;
第二网络训练模块,用于基于所述第一网络确定具有多分支结构的第二网络,基于所述训练集样本对所述第二网络进行训练,从所述已训练的第二网络中确定对应所述预设训练任务的第二子网络;
目标网络确定模块,用于基于所述第一网络训练模块确定的第一子网络和所述第二网络训练模块确定的第二子网络确定包括两条路径的目标网络,其中,所述第一子网络和所述第二子网络分别为所述目标网络中的一条路径。
10.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-8任一所述的网络结构搜索方法。
11.一种电子设备,所述电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述权利要求1-8任一所述的网络结构搜索方法。

说明书全文

网络结构搜索方法和装置、存储介质、电子设备

技术领域

[0001] 本公开涉及网络搜索技术,尤其是一种网络结构搜索方法和装置、存储介质、电子设备。

背景技术

[0002] 现有的网络结构搜索方法,常用的有以下三种方法:强化学习,进化算法,基于梯度的方法。强化学习和进化算法是先生成一种结构,训练得到的结构然后获得其性能指标,根据这次经验去生成更好的结构。基于梯度的方法是建立一个超级网络(supernet),包括所有可能的子网络,并分配给每个子网络权重,训练整个超级网络和权重,最后根据权重选出最好的子网络。发明内容
[0003] 为了解决上述技术问题,提出了本公开。本公开的实施例提供了一种网络结构搜索方法和装置、存储介质、电子设备。
[0004] 根据本公开实施例的一个方面,提供了一种网络结构搜索方法,包括:
[0005] 基于预设训练任务对应的训练集样本对已知网络结构的第一网络进行训练,确定所述第一网络中对应所述预设训练任务的第一子网络;
[0006] 基于所述第一网络确定第二网络,基于所述训练集样本对所述第二网络进行训练,确定所述第二网络中对应所述预设训练任务的第二子网络;
[0007] 基于所述第一子网络和所述第二子网络确定包括两条路径的目标网络。
[0008] 根据本公开实施例的另一方面,提供了一种网络结构搜索装置,包括:
[0009] 第一网络训练模,用于基于预设训练任务对应的训练集样本对已知网络结构的第一网络进行训练,确定所述第一网络中对应所述预设训练任务的第一子网络;
[0010] 第二网络训练模块,用于基于所述第一网络确定第二网络,基于所述训练集样本对所述第二网络进行训练,确定所述第二网络中对应所述预设训练任务的第二子网络;
[0011] 目标网络确定模块,用于基于所述第一网络训练模块确定的第一子网络和所述第二网络训练模块确定的第二子网络确定包括两条路径的目标网络。
[0012] 根据本公开实施例的又一方面,提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述实施例所述的网络结构搜索方法。
[0013] 根据本公开实施例的还一方面,提供了一种电子设备,所述电子设备包括:
[0014] 处理器;
[0015] 用于存储所述处理器可执行指令的存储器
[0016] 所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述实施例所述的网络结构搜索方法。
[0017] 基于本公开上述实施例提供的一种网络结构搜索方法和装置、存储介质、电子设备,基于预设训练任务对应的训练集样本对已知网络结构的第一网络进行训练,确定所述第一网络中对应所述预设训练任务的第一子网络;基于所述第一网络确定第二网络,基于所述训练集样本对所述第二网络进行训练,确定所述第二网络中对应所述预设训练任务的第二子网络;基于所述第一子网络和所述第二子网络确定包括两条路径的目标网络;由于基于第一子网络和第二子网络可以确定出包括两条路径的目标网络,由此使获得的目标网络包括两条路径,该两条路径分别具有不同层数的网络结构,因此通过两条路径可以获得高级语义信息和底层细节信息,进而可以确保结合高级语义信息和底层细节信息有助于密集预测任务的预测。
[0018] 下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。

附图说明

[0019] 通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
[0020] 图1是本公开实施例提供的网络结构搜索方法中一种第二网络的结构示意图。
[0021] 图2是利用本公开实施例提供的网络结构搜索方法得到的目标网络的一个结构示意图。
[0022] 图3演示了基于梯度获得最优子网络的一个结构示意图。
[0023] 图4是本公开一示例性实施例提供的网络结构搜索方法的流程示意图。
[0024] 图5是本公开图4所示的实施例中步骤402的一个流程示意图。
[0025] 图6是本公开图5所示的实施例中步骤4021的一个流程示意图。
[0026] 图7是本公开图4所示的实施例中步骤401的一个流程示意图。
[0027] 图8是本公开一示例性实施例提供的网络结构搜索装置的结构示意图。
[0028] 图9是本公开另一示例性实施例提供的网络结构搜索装置的结构示意图。
[0029] 图10是本公开一示例性实施例提供的电子设备的结构图。

具体实施方式

[0030] 下面,将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
[0031] 应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
[0032] 本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
[0033] 还应理解,在本公开实施例中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。
[0034] 还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
[0035] 另外,本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
[0036] 还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
[0037] 同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
[0038] 以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
[0039] 对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
[0040] 应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
[0041] 本公开实施例可以应用于终端设备、计算机系统服务器等电子设备,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与终端设备、计算机系统、服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式计算技术环境,等等。
[0042] 终端设备、计算机系统、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
[0043] 申请概述
[0044] 在实现本公开的过程中,发明人发现,在密集预测任务中,底层细节信息十分重要,现有网络结构搜索技术都是最后只搜索出一条路径,该技术方案至少存在以下问题:只能搜索一条路径,如果空间分辨率降到很低将会丢弃非常多的底层细节信息,不利于预测。
[0045] 示例性系统
[0046] 图1是本公开实施例提供的网络结构搜索方法中一种第二网络的结构示意图。如图1所示,第二网络为超级网络(supernet),其中,从上到下是特征图空间分辨率下采样的倍数,从左到右是网络结构的层数。该第二网络包括两部分,第一部分是白色圆点111构成的第一网络121(可作为构建第二网络的基础),该第一网络121是根据现有网络(根据具体任务获得对应网络,该网络结构可以为现有技术中该任务对应的任一网络结构)搭建而成,拥有正常的下采样等;本实施例中的第二网络可基于第一网络121获得,例如,在第一网络121中去搜索每层的操作(如3*3卷积、5*5卷积、池化等操作),变换网络的深度(通过跳跃连接控制)。
[0047] 第二部分是由灰色圆点112构成的分支网络122。灰色圆点是神经网络每个阶段的特征图,从上到下是不同空间分辨率的特征图,本实施例为每一个灰色圆点112的输出都分配一个权重β,并且网络结构中的每层对应的所有权重相加为一,以图1中的方框为例,左上灰色圆点112的输出概率有β1和β2,并且β1+β2=1,左下角白色圆点111同上;右上角灰色圆点112接收前一层的输出并进行融合当作当前阶段的特征图。于是,β可被理解为不同层数中不同空间分辨率之间的转移概率。本公开实施例提供的网络结构搜索方法的目标是从头开始找到具备最大概率的的路径。在实现中,可以使用经典维特比算法高效解码该路径。其中,维特比算法是一种动态规划算法,用于寻找最有可能产生观测事件序列的-维特比路径-隐含状态序列,特别是在尔可夫信息源上下文和隐马尔可夫模型中。
[0048] 在第二网络的最后一层,将白色圆点111的特征向上融合并输出给相应的网络尾部,得到相应的输出,将输出进行融合后得到最终的结果。
[0049] 本实施例提供的网络结构搜索方法在最后选择目标网络时,从构成第二网络的第一网络中选出最好的操作和深度,并保留其路径,作为目标网络的一条路径;从第二网络包括的第二部分网络结构中通过维特比算法寻找出最佳路径,作为目标网络的第二条路径;即搜索得到的目标网络包括两条路径,图2是利用本公开实施例提供的网络结构搜索方法得到的目标网络的一个结构示意图。如图2所示,搜索得到的目标网络包括两条路径,一条路径为由白色圆点构成第一路径,另一条路径为由灰色圆点以及与其相连接的白色圆点构成第二路径,并且每条路径的特征在每个阶段都进行融合,可以将信息融合并且进行语义对齐。
[0050] 本公开实施例基于梯度搜索确定目标网络的两条路径,图3示出了基于梯度获得最优子网络的一个结构示意图。如图3所示,一个父网络(如,图1实施例中提供的超级网络)里面包括所有的子网络,该父网络中包括0、1、2、3四个部分,其中间部分分别具有多个网络层,因此,每两个部分之间包括多种连接,每个连接对应一个连接权重,每个子网络都有相应的连接权重(在超级网络中的初始连接权重可以为每两层结构之间的所有连接权重为1,每个连接的连接权重为均值,例如,两层结构之间包括4个连接权重301,那么4个连接中每个连接对应的初始连接权重301为0.25),在训练的过程中连接权重会根据梯度来改变,训练结束后会有连接权重最大的子网络,最后测试只留下连接权重最大的子网络,就是最优子网络。
[0051] 示例性方法
[0052] 图4是本公开一示例性实施例提供的网络结构搜索方法的流程示意图。本实施例可应用在电子设备上,如图4所示,包括如下步骤:
[0053] 步骤401,基于预设训练任务对应的训练集样本对具有预设网络结构的第一网络进行训练,从已训练的第一网络中确定对应预设训练任务的第一子网络。
[0054] 可选地,本实施例中提供的第一网络可以参照图1所示实施例中的白色圆点111构成的第一网络121,可选地,该第一网络121的结构可为现有技术中的任一网络结构;通过基于预设训练任务对第一网络121进行训练,可获得第一子网络,该第一子网络可参照图2所示实施例中的白色圆点构成的第一路径。
[0055] 步骤402,基于第一网络确定具有多分支结构的第二网络,基于训练集样本对第二网络进行训练,从已训练的第二网络中确定对应预设训练任务的第二子网络。
[0056] 在一些可选实施例中,可参照图1所示实施例实现基于第一网络121确定第二网络,其中第二网络的结构可如图1所示,利用训练集样本对第二网络进行训练,可确定第二网络中每层网络结构对应的权重,并基于权重确定第二子网络,该第二子网络可参照图2所示实施例中的灰色圆点以及与其相连接的白色圆点构成第二路径。
[0057] 步骤403,基于第一子网络和第二子网络确定包括两条路径的目标网络。
[0058] 其中,第一子网络和第二子网络分别为目标网络中的一条路径。
[0059] 可选地,本实施例获得的目标网络的结构可参照图2提供的网络结构,该网络结构中的每条路径为该网络中的一个子网络,其中一条路径(对应第一子网络)搜索最优的操作和深度(网络结构中包括的网络层的层数),可以获得更好的高级语义信息。另一条路径(第二子网络)搜索合适的空间分辨率的变化,可选地,两条路径之间还可以进行多次特征融合,可以更好的将高级语义信息和底层细节信息进行融合和对齐,更有助于实现密集预测等任务。
[0060] 基于本公开上述实施例提供的一种网络结构搜索方法,由于基于第一子网络和第二子网络可以确定出包括两条路径的目标网络,由此使获得的目标网络包括两条路径,该两条路径分别具有不同层数的网络结构,因此通过两条路径可以获得高级语义信息和底层细节信息,进而可以确保结合高级语义信息和底层细节信息有助于密集预测任务的预测。
[0061] 其中,密集预测任务(dense prediction)标注出图像中每个像素点的对象类别,要求不但给出具体目标的位置,还要描绘物体的边界,如图像分割、语义分割、边缘检测等等。举例说明:语义分割任务,本质是对图像中的每一个像素点进行分类,因此,语义分割任务为密集预测任务;物体检测任务要预测出多个物体的位置信息和类别,因此物体检测任务也是密集预测任务;而分类任务,由于仅将一张图分类,只预测一个标签,因此分类任务不是密集预测任务。
[0062] 如图5所示,在上述图4所示实施例的基础上,步骤402可包括如下步骤:
[0063] 步骤4021,对第一网络包括的至少两个阶段中的每个阶段之后的网络层进行扩展处理,确定具有多个分支结构的第二网络。
[0064] 可选地,本实施例中第二网络的结构可参照图1所示的网络结构,第一网络121是仅包括一个分支的网络,通过在第一网络121中的每个节点之后的网络层进行扩展,使不同阶段对应的网络层分别包括多个分支,其中,一个阶段包括通道数不变化的至少一个网络层。
[0065] 步骤4022,基于训练集样本对第二网络进行训练,确定第二网络中每两个网络层之间的连接权重。
[0066] 可选地,本实施例通过对第二网络进行训练,确定第二网络中的网络参数和结构参数,其中,结构参数包括每两个网络层之间的连接权重β,对于第二网络中具有多个分支的网络层,可分别确定多个连接权重的值,且每层对应的所有权重相加为1。
[0067] 步骤4023,基于连接权重确定第二网络中对应预设训练任务的第二子网络。
[0068] 连接权重可以理解为不同层数中不同空间分辨率之间的转移概率,通过对第二网络的训练,确定了每个网络层对应的连接权重,基于连接权重从第二网络中的每个阶段中包括的多个分支中确定一个分支作为第二子网络的结构,可选地,选取连接权重最大的分支。
[0069] 如图6所示,在上述图5所示实施例的基础上,步骤4021可包括如下步骤:
[0070] 步骤601,在每两个相邻阶段中的第一阶段之后增加至少一个分支阶段。
[0071] 其中,至少一个分支阶段中的通道数分别与第二阶段之前的至少一个阶段的通道数相同。
[0072] 步骤602,基于第一网络和所有分支阶段确定第二网络,至少一个分支阶段中的网络层与第二阶段中的网络层存在关联关系,且至少一个分支阶段中的网络层之间存在关联关系。
[0073] 其中,第一网络包括的至少两个阶段中每两个相邻阶段包括依次连接的第一阶段和第二阶段,第一阶段的通道数小于第二阶段的通道数。
[0074] 本实施例中,基于第一网络以阶段为单位,对每个阶段之后连接的阶段进行扩展分支,使依次连接的第二阶段中在包括原连接的基础上还包括至少一个分支网络,该分支网络参照如图1所示的实施例中的灰色圆点111构成的网络分支,并且第一阶段和第二阶段对应的分支网络之间也存在关联关系,为后续基于第二网络确定两个具有关联关系的路径的目标网络提供了基础。
[0075] 在一些可选的实施例中,步骤4023可以包括:
[0076] 基于第二网络包括的至少两个子网络中每个子网络对应的所有连接权重,确定第二网络中对应预设训练任务的第二子网络。
[0077] 可选地,本实施例可利用维特比算法根据至少两个子网络中每个子网络对应的所有连接权重,确定第二网络中的一个子网络作为对应预设训练任务的第二子网络。
[0078] 连接权重可被理解为不同层数中不同空间分辨率之间的转移概率。可选地,本实施例中获得第二子网络可参照图3所示实施例,从每两层结构之间的多个连接权重301中的最大连接权重确定为连接,基于所有最大连接权重将获得连接权重最大的子网络,即第二子网络。
[0079] 在一些可选的实施例中,步骤403包括:
[0080] 保留在第二网络中第一子网络与第二子网络对应网络层之间的连接,以第二子网络的输出层作为输出端,确定以第一子网络作为第一路径、以第二子网络作为第二路径的目标网络。
[0081] 本实施例中,在确定第一子网络和第二子网络之后,由于第二子网络和第一子网络存在共享部分和一些连接关系,在单独将第一子网络和第二子网络作为网络工作时,可不考虑这些共享部分和连接关系,但本实施例中获得的目标子网络包括两条路径,其中,第一子网络作为第一路径、第二子网络作为第二路径;通过在目标网络中将两条路径的特征在每个阶段都进行融合,可以将信息融合(如,底层细节信息和高阶语义信息等)并且进行语义对齐。
[0082] 如图7所示,在上述图4所示实施例的基础上,步骤401可包括如下步骤:
[0083] 步骤4011,基于预设训练任务对应的训练集样本对第一网络进行训练,确定第一网络中每两个网络层之间的连接权重。
[0084] 步骤4012,基于连接权重,确定预设训练任务对应的第一子网络。
[0085] 其中,第一网络中包括至少一个子网络。
[0086] 可选地,基于第一网络中每两层结构之间的多个连接权重中的最大连接权重确定两层结构之间的一个关联关系,获得每两层结构之间具有一个关联的第一子网络。
[0087] 本实施例实现了基于梯度的搜索方法,最后测试只留下权重最大的子网络,即为本实施例确定的第一子网络。其具体过程可参照图3,图3演示了基于梯度的方法的过程,一个父网络(supernet)里面包括所有的子网络,每个子网络都有相应的权重,在训练的过程中权重会根据梯度来改变,训练结束后会有权重最大的子网络,最后测试只留下权重最大的子网络。
[0088] 本公开实施例提供的任一种网络结构搜索方法可以由任意适当的具有数据处理的设备执行,包括但不限于:终端设备和服务器等。或者,本公开实施例提供的任一种网络结构搜索方法可以由处理器执行,如处理器通过调用存储器存储的相应指令来执行本公开实施例提及的任一种网络结构搜索方法。下文不再赘述。
[0089] 示例性装置
[0090] 图8是本公开一示例性实施例提供的网络结构搜索装置的结构示意图。如图8所示,本实施例包括:
[0091] 第一网络训练模块81,用于基于预设训练任务对应的训练集样本对具有预设网络结构的第一网络进行训练,从已训练的第一网络中确定对应预设训练任务的第一子网络。
[0092] 第二网络训练模块82,用于基于第一网络确定具有多分支结构的第二网络,基于训练集样本对第二网络进行训练,从已训练的第二网络中确定对应预设训练任务的第二子网络。
[0093] 目标网络确定模块83,用于基于第一网络训练模块81确定的第一子网络和第二网络训练模块82确定的第二子网络确定包括两条路径的目标网络。
[0094] 其中,第一子网络和第二子网络分别为目标网络中的一条路径。
[0095] 基于本公开上述实施例提供的一种网络结构搜索装置,由于基于第一子网络和第二子网络可以确定出包括两条路径的目标网络,由此使获得的目标网络包括两条路径,该两条路径分别具有不同层数的网络结构,因此通过两条路径可以获得高级语义信息和底层细节信息,进而可以确保结合高级语义信息和底层细节信息有助于密集预测任务的预测。
[0096] 图9是本公开另一示例性实施例提供的网络结构搜索装置的结构示意图。如图9所示,本实施例中:
[0097] 第一网络训练模块81,包括:
[0098] 第一训练单元811,用于基于预设训练任务对应的训练集样本对第一网络进行训练,确定第一网络中每两个网络层之间的连接权重。
[0099] 第一子网络确定单元812,用于基于连接权重,确定预设训练任务对应的第一子网络;其中,第一网络中包括至少一个子网络。
[0100] 可选地,第一子网络确定单元812,具体用于基于第一网络中每两层结构之间的多个连接权重中的最大连接权重确定两层结构之间的一个关联关系,获得每两层结构之间具有一个关联的第一子网络。
[0101] 第二网络训练模块82,包括:
[0102] 网络扩展单元821,用于对第一网络包括的至少两个阶段中的每个阶段之后的网络层进行扩展处理,确定具有多个分支结构的第二网络。
[0103] 第二训练单元822,用于基于训练集样本对第二网络进行训练,确定第二网络中每两个网络层之间的连接权重。
[0104] 第二子网络确定单元823,用于基于连接权重确定第二网络中对应预设训练任务的第二子网络。
[0105] 可选地,网络扩展单元821,具体用于在每两个相邻阶段中的第一阶段之后增加至少一个分支阶段;基于第一网络和所有分支阶段确定第二网络,至少一个分支阶段中的网络层与第二阶段中的网络层存在关联关系,且至少一个分支阶段中的网络层之间存在关联关系。
[0106] 其中,至少一个分支阶段中的通道数分别与第二阶段之前的至少一个阶段的通道数相同;第一网络包括的至少两个阶段中每两个相邻阶段包括依次连接的第一阶段和第二阶段,第一阶段的通道数小于第二阶段的通道数。
[0107] 可选地,第二子网络确定单元823,具体用于基于第二网络包括的至少两个子网络中每个子网络对应的所有连接权重,确定第二网络中对应预设训练任务的第二子网络。
[0108] 可选地,第二子网络确定单元823,还用于利用维特比算法根据至少两个子网络中每个子网络对应的所有连接权重,确定第二网络中的一个子网络作为对应预设训练任务的第二子网络。
[0109] 目标网络确定模块83,具体用于保留在第二网络中第一子网络与第二子网络对应网络层之间的连接,以第二子网络的输出层作为输出端,确定以第一子网络作为第一路径、以第二子网络作为第二路径的目标网络。
[0110] 示例性电子设备
[0111] 下面,参考图10来描述根据本公开实施例的电子设备。该电子设备可以是第一设备100和第二设备200中的任一个或两者、或与它们独立的单机设备,该单机设备可以与第一设备和第二设备进行通信,以从它们接收所采集到的输入信号
[0112] 图10图示了根据本公开实施例的电子设备的框图
[0113] 如图10所示,电子设备10包括一个或多个处理器11和存储器12。
[0114] 处理器11可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备10中的其他组件以执行期望的功能。
[0115] 存储器12可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器11可以运行所述程序指令,以实现上文所述的本公开的各个实施例的网络结构搜索方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
[0116] 在一个示例中,电子设备10还可以包括:输入装置13和输出装置14,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
[0117] 例如,在该电子设备是第一设备100或第二设备200时,该输入装置13可以是上述的麦克或麦克风阵列,用于捕捉声源的输入信号。在该电子设备是单机设备时,该输入装置13可以是通信网络连接器,用于从第一设备100和第二设备200接收所采集的输入信号。
[0118] 此外,该输入设备13还可以包括例如键盘鼠标等等。
[0119] 该输出装置14可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出设备14可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
[0120] 当然,为了简化,图10中仅示出了该电子设备10中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备10还可以包括任何其他适当的组件。
[0121] 示例性计算机程序产品和计算机可读存储介质
[0122] 除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的网络结构搜索方法中的步骤。
[0123] 所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
[0124] 此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的网络结构搜索方法中的步骤。
[0125] 所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0126] 以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
[0127] 本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0128] 本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
[0129] 可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
[0130] 还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
[0131] 提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
[0132] 为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈