神经网络结构的搜索方法、图像处理方法和装置制造方法及图纸

技术编号:27569857 阅读:14 留言:0更新日期:2021-03-09 22:16
本申请提供了人工智能领域中计算机视觉领域的一种神经网络结构的搜索方法、图像处理方法及装置。其中,该神经网络结构的搜索方法包括:根据目标任务确定搜索网络,搜索网络包括结构空间和参数空间;根据目标任务的训练数据,对参数空间进行更新,以获取更新参数空间;从搜索网络中确定子网络集合;对子网络集合进行更新,以获取更新子网络集合;根据更新参数空间和更新子网络集合,确定与目标任务对应的多个目标神经网络。上述技术方案能够通过一次搜索获得多个目标神经网络模型,使得用户可以根据应用场景中的资源约束选择合适的模型进行应用。行应用。行应用。

【技术实现步骤摘要】
神经网络结构的搜索方法、图像处理方法和装置


[0001]本申请涉及人工智能领域,并且更具体地,涉及一种神经网络结构的搜索方法、图像处理方法和装置。

技术介绍

[0002]人工智能(artificial intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
[0003]随着人工智能技术的快速发展,神经网络(例如,深度神经网络)近年来在图像、视频以及语音等多种媒体信号的处理与分析中取得了很大的成就。一个性能优良的神经网络往往拥有精妙的网络结构,而这需要具有高超技能和丰富经验的人类专家花费大量精力进行构建。为了更好地构建神经网络,人们提出了通过神经网络结构搜索(neural architecture search,NAS)的方法来搭建神经网络,通过自动化地搜索神经网络结构,从而得到性能优异的神经网络结构。
[0004]在传统的神经网络结构搜索的方法中,首先需要定义一个原则上可以表征的全部的网络架构的搜索空间,然后通过搜索策略从搜索空间中找出候选网络结构并对其进行评估,根据反馈结果进行下一轮的搜索,经过多轮搜索后最终只保留一个子网络结构。然而对于不同的应用场景,资源约束条件不同,传统的神经网络结构的搜索方法获得的一个子网络结构,只能应用于与该一个子网络结构相匹配的场景中,无法满足差异化需求。

技术实现思路

[0005]本申请提供一种神经网络结构的搜索方法、图像处理方法和装置,能够通过一次搜索获得多个目标神经网络模型,使得用户可以根据应用场景中的资源约束选择合适的模型进行应用。
[0006]第一方面,提供一种神经网络结构的搜索方法,该方法包括:根据目标任务确定搜索网络,所述搜索网络包括结构空间和参数空间,所述结构空间包括多个子网络结构,所述参数空间包括多个参数,其中,每个子网络结构对应所述参数空间中的至少一个参数;根据目标任务的训练数据,对所述参数空间进行更新,以获取更新参数空间;从所述搜索网络中确定子网络集合,所述子网络集合包括所述多个子网络结构中的多个第一子网络结构;对所述子网络集合进行更新,以获取更新子网络集合,所述更新子网络集合包括所述多个子网络结构中的多个第二子网络结构;根据所述更新参数空间和所述更新子网络集合,确定与所述目标任务对应的多个目标神经网络。
[0007]上述搜索网络是根据与目标任务对应的目标神经网络的应用需求确定的。
[0008]也就是说,可以根据目标神经网络的应用需求来确定上述搜索网络。具体地,可以
根据目标神经网络需要处理的数据的数据类型来确定上述搜索网络。
[0009]搜索网络中包括多种连接方式和不同的操作。一般来说,搜索网络中包含的操作种类和数量要与目标神经网络的应用需求相匹配。当上述目标神经网络用于处理图像数据时,上述搜索网络包含的操作种类和数量要与图像数据的处理相适应,当上述目标神经网络用于处理语音数据时,上述搜索网络包含的操作种类和数量要与语音数据的处理相适应。
[0010]例如,当目标神经网络是用于处理图像数据的神经网络时,上述搜索网络可以包含长短时记忆单元或称长短时记忆网络(long short term memory network,LSTM)等,具体地上述搜索网络可以包含卷积操作,池化操作,跳连接(skip-connect)操作、激活函数等等。
[0011]再如,当目标神经网络是用于处理语音数据的神经网络时,上述搜索网络可以包含长短时记忆单元或称长短时记忆网络(long short term memory network,LSTM),具体地,上述搜索网络可以包括激活函数(如ReLU、Tanh)等等。
[0012]上述搜索空间是根据目标神经网络的应用需求和执行神经网络结构搜索的设备的显存资源条件确定的。
[0013]其中,执行神经网络结构搜索的设备的显存资源条件可以是指执行神经网络结构搜索的设备的显存资源大小。
[0014]也就是说,在本申请中,可以根据目标神经网络的应用需求和执行神经网络结构搜索的设备的显存资源条件来综合确定上述搜索空间。
[0015]具体地,可以先根据目标神经网络的应用需求确定搜索空间包含的操作种类和数量,然后再根据执行神经网络结构搜索的设备的显存资源条件对搜索空间包含的操作种类和数量进行调整,以确定搜索空间最终包含的操作种类和数量。
[0016]例如,在根据目标神经网络的应用需求确定搜索空间包含的操作种类和数量之后,如果执行神经网络结构搜索的设备的显存资源较少,那么,可以将搜索空间中一些不太重要的操作删掉。而如果执行神经网络结构搜索的设备的显存资源较为充足时,可以保持搜索空间包含的操作种类和数量,或者增加搜索空间包含的操作种类和数量。
[0017]本申请实施例中的搜索网络中可以包含用于构建神经网络的基础模块例如卷积、预先设定好的与目标神经网络的应用需求相适应的基础运算或基础运算的组合,其中这些基础运算或基础运算的组合可以统称为基本操作。可以通过人工设计搜索网络的尺寸、深度、宽度、连接方式等。
[0018]搜索网络包括结构空间和参数空间,结构空间包括多个子网络结构,参数空间包括多个参数,其中,每个子网络结构对应参数空间中的至少一个参数。
[0019]本申请实施例中的结构空间包括了原则上可以表征的全部的网络架构,也可以理解为结构空间是网络结构的全集,其中每个可能的网络结构可以称为子网络结构。子网络结构包括搜索网络中的全部或部分的基础模块、全部或部分的基本操作,不同的子网络结构所包括的基础模块和基本操作的种类和数量不同,但不同的子网络结构所包括的基础模块和基本操作的参数是共用的。也即,本申请实施例中参数空间包括的是搜索网络中的基础模块和基础操作的参数,例如基本操作为卷积核大小为3
×
3的分离卷积所涉及的参数、基本操作为卷积核大小为5
×
5且空洞率为2的空洞卷积所涉及的参数、基本操作为跳连接
所涉及的参数等。不同的子网络结构可以包含不同种类、数量的基础模块和基本操作,不同子网络结构可以有不同的连接方式,但不同的子网络结构共用参数空间中的参数,例如不同的子网络结构包含了同一个基本操作,则不同的子网络结构共用参数空间中所包括的该同一个基本操作所对应的参数。每个基础模块可以对应一个或多个参数,每个基本操作可以对应一个或多个参数,每个子网络结构可以包括一个或多个基础模块,可以包括一个或多个基本操作,因此本申请实施例中的结构空间中的每个子网络结构对应参数空间中的至少一个参数,例如每个子网络结构对应参数空间中的一个或多个参数。
[0020]为了更好地理解本申请实施例的结构空间和子网络结构,示例性本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种神经网络结构的搜索方法,其特征在于,包括:根据目标任务确定搜索网络,所述搜索网络包括结构空间和参数空间,所述结构空间包括多个子网络结构,所述参数空间包括多个参数,其中,每个子网络结构对应所述参数空间中的至少一个参数;根据目标任务的训练数据,对所述参数空间进行更新,以获取更新参数空间;从所述搜索网络中确定子网络集合,所述子网络集合包括所述多个子网络结构中的多个第一子网络结构;对所述子网络集合进行更新,以获取更新子网络集合,所述更新子网络集合包括所述多个子网络结构中的多个第二子网络结构;根据所述更新参数空间和所述更新子网络集合,确定与所述目标任务对应的多个目标神经网络。2.根据权利要求1所述的搜索方法,其特征在于,所述根据目标任务的训练数据,对所述参数空间进行更新,以获取更新参数空间,包括:输入所述目标任务的训练数据;基于梯度反向传播算法对所述参数空间进行更新,其中所述参数空间的梯度为所述多个第一子网络结构中的部分第一子网络结构所对应的参数梯度的平均值。3.根据权利要求1或2所述的搜索方法,其特征在于,所述对所述子网络集合进行更新,以获取更新子网络集合,包括:基于粒子群算法、遗传算法和烟花算法中的任意一种算法对所述多个第一子网络结构进行处理,得到下一代子网络结构;基于非支配排序算法,根据第一度量目标对所述多个第一子网络结构和所述下一代子网络结构进行等级划分得到第一次等级划分结果;基于非支配排序算法,根据第二度量目标对所述多个第一子网络结构和所述下一代子网络结构进行等级划分得到第二次等级划分结果;将所述第一次等级划分结果与所述第二次等级划分结果中相同等级中所包括的子网络结构分别进行合并,得到合并的等级划分结果;从合并的等级划分结果中选择多个子网络结构为所述多个第二子网络结构。4.根据权利要求3所述的搜索方法,其特征在于,所述第一度量目标包括参数量、网络运行时间、网络所需运行内存、网络计算量、能耗、浮点运算数目中的至少一个和准确率,所述第二度量目标包括参数量、网络运行时间、网络所需运行内存、网络计算量、能耗、浮点运算数目中的至少一个和准确率的增长速率。5.根据权利要求1至4中任一项所述的搜索方法,其特征在于,还包括:获取待处理目标任务数据;根据终端设备的计算资源和/或存储资源从所述多个目标神经网络中选择第一目标神经网络;根据所述第一目标神经网络对所述待处理目标任务数据进行处理,得到与所述目标任务对应的处理结果。6.一种神经网络结构的搜索方法,其特征在于,包括:根据目标任务确定搜索网络,所述搜索网络包括结构空间,所述结构空间包括多个子
网络结构;从所述搜索网络中确定子网络集合,所述子网络集合包括所述多个子网络结构中的多个第一子网络结构;对所述子网络集合进行更新,以获取更新子网络集合,所述更新子网络集合包括所述多个子网络结构中的多个第二子网络结构;根据所述更新子网络集合,确定与所述目标任务对应的多个目标神经网络。7.根据权利要求6所述的搜索方法,其特征在于,所述对所述子网络集合进行更新,以获取更新子网络集合,包括:基于粒子群算法、遗传算法和烟花算法中的任意一种算法对所述多个第一子网络结构进行处理,得到下一代子网络结构;基于非支配排序算法,根据第一度量目标对所述多个第一子网络结构和所述下一代子网络结构进行等级划分得到第一次等级划分结果;基于非支配排序算法,根据第二度量目标对所述多个第一子网络结构和所述下一代子网络结构进行等级划分得到第二次等级划分结果;将第一次等级划分结果与所述第二次等级划分结果中相同等级中所包括的子网络结构分别进行合并,得到合并的等级划分结果;从合并的等级划分结果中选择多个子网络结构为所述多个第二子网络结构。8.根据权利要求7所述的搜索方法,其特征在于,所述第一度量目标包括参数量、网络运行时间、网络所需运行内存、网络计算量、能耗、浮点运算数目中的至少一个和准确率,所述第二度量目标包括参数量、网络运行时间、网络所需运行内存、网络计算量、能耗、浮点运算数目中的至少一个和准确率的增长速率。9.一种图像处理方法,应用于终端设备,其特征在于,包括:获取待处理图像;根据所述终端设备的计算资源和/或存储资源从多个目标神经网络中选择第一目标神经网络;根据所述第一目标神经网络对所述待处理图像进行分类,得到所述待处...

【专利技术属性】
技术研发人员:陈醒濠杨朝晖王云鹤许春景
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1