CN112241786B - 模型超参数的确定方法及设备、计算设备和介质 - Google Patents
模型超参数的确定方法及设备、计算设备和介质 Download PDFInfo
- Publication number
- CN112241786B CN112241786B CN202011148115.7A CN202011148115A CN112241786B CN 112241786 B CN112241786 B CN 112241786B CN 202011148115 A CN202011148115 A CN 202011148115A CN 112241786 B CN112241786 B CN 112241786B
- Authority
- CN
- China
- Prior art keywords
- hyper
- neural network
- network model
- encoder
- parameter value
- 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
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000003062 neural network model Methods 0.000 claims abstract description 78
- 238000012549 training Methods 0.000 claims description 47
- 230000004044 response Effects 0.000 claims description 10
- 230000015654 memory Effects 0.000 claims description 6
- 238000010276 construction Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 8
- 238000013135 deep learning Methods 0.000 abstract description 6
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 12
- 238000013528 artificial neural network Methods 0.000 description 9
- 238000010606 normalization Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 230000003936 working memory Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000003925 brain function Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000013209 evaluation strategy Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000007786 learning performance Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000005312 nonlinear dynamic Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
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/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- 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
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本公开提供一种神经网络模型的超参数确定方法及设备、计算设备和介质,涉及人工智能技术领域,具体涉及深度学习、计算机视觉技术领域,可用于图像处理场景。该神经网络模型的超参数确定方法包括:在神经网络模型中构建多个搜索空间;针对多个搜索空间中的每一个搜索空间,分别获取相对应的超参数取值集合;获取由编码器生成的一组编码,其中一组编码中的编码个数与多个搜索空间的个数相同;以及根据一组编码和所获取的超参数取值集合确定每一个搜索空间所对应的超参数值。
Description
技术领域
本公开涉及人工智能技术领域,具体涉及深度学习、计算机视觉,可用于图像处理场景,特别涉及一种神经网络模型的超参数确定方法及设备、计算设备和介质。
背景技术
训练深度神经网络非常复杂,因为在训练过程中,随着先前各层的参数发生变化,各层输入的分布也会发生变化。这需要较低的学习率和谨慎的参数初始化,从而减慢了训练速度,并且很难训练具有饱和非线性的模型。我们将此现象称为内部协变量偏移,并通过归一化层输入来解决该问题。可以通过将归一化作为模型体系结构的一部分并针对每个训练小批量执行归一化来汲取其优势。批量归一化(Batch Normalization,BN)使得可以使用更高的学习率,并且在参数初始化时不必那么小心。
BN参数对于模型的训练速度以及模型的最终精度影响非常大,然而,通过人工调参的方式很难调试出较优的BN参数。在现有的应用中,模型每层通常采用同样的BN参数,而模型结构往往有几十层甚至上百层,所有层采用同样的BN策略,模型的精度会很差。
在此部分中描述的方法不一定是之前已经设想到或采用的方法。除非另有指明,否则不应假定此部分中描述的任何方法仅因其包括在此部分中就被认为是现有技术。类似地,除非另有指明,否则此部分中提及的问题不应认为在任何现有技术中已被公认。
发明内容
根据本公开的一个方面,提供了一种神经网络模型的超参数确定方法,包括:在所述神经网络模型中构建多个搜索空间;针对所述多个搜索空间中的每一个搜索空间,分别获取相对应的超参数取值集合;获取由编码器生成的一组编码,其中所述一组编码中的编码个数与所述多个搜索空间的个数相同;以及根据所述一组编码和所获取的超参数取值集合确定每一个所述搜索空间所对应的超参数值。
根据本公开的另一个方面,提供了一种神经网络模型的超参数确定设备,包括:搜索空间构建单元,配置为在所述神经网络模型中构建多个搜索空间;第一获取单元,配置为针对所述多个搜索空间中的每一个搜索空间,分别获取相应的超参数取值集合;第二获取单元,配置为获取由编码器生成的一组编码,其中所述一组编码中的编码个数与所述多个搜索空间的个数相同;以及第一确定单元,配置为根据所述一组编码和所获取的超参数取值集合确定每一个所述搜索空间所对应的超参数值。
根据本公开的又一个方面,提供了一种计算设备,包括:处理器;以及存储程序的存储器,该程序包括指令,该指令在由处理器执行时使处理器执行本公开所述的神经网络模型的超参数确定方法。
根据本公开的又一个方面,提供了一种存储程序的计算机可读存储介质,该程序包括指令,该指令在由计算设备的处理器执行时,致使计算设备执行本公开所述的神经网络模型的超参数确定方法。
根据本公开的又一个方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现本公开所述的神经网络模型的超参数确定方法。
根据本公开的一个方面,上述神经网络模型的超参数确定方法,通过引入的搜索空间,自动确定不同搜索空间内的相关超参数值,从而实现为模型自动设置一组超参数值,提升了模型在特定硬件上的速度和精度。
根据在下文中所描述的实施例,本公开的这些和其它方面将是清楚明白的,并且将参考在下文中所描述的实施例而被阐明。
附图说明
附图示例性地示出了实施例并且构成说明书的一部分,与说明书的文字描述一起用于讲解实施例的示例性实施方式。所示出的实施例仅出于例示的目的,并不限制权利要求的范围。在所有附图中,相同的附图标记指代类似但不一定相同的要素。
图1示出了根据本公开示例性实施例的神经网络模型的超参数确定方法的流程图;
图2示出了根据本公开示例性实施例的一种神经网络模型的超参数确定方法的示意性流程图;
图3示出了根据本公开示例性实施例的神经网络模型的超参数确定设备的示意图;以及
图4示出了能够用于实现本公开的实施例的示例性计算设备的结构框图。
具体实施方式
在本公开中,除非另有说明,否则使用术语“第一”、“第二”等来描述各种要素不意图限定这些要素的位置关系、时序关系或重要性关系,这种术语只是用于将一个元件与另一元件区分开。在一些示例中,第一要素和第二要素可以指向该要素的同一实例,而在某些情况下,基于上下文的描述,它们也可以指代不同实例。
在本公开中对各种所述示例的描述中所使用的术语只是为了描述特定示例的目的,而并非旨在进行限制。除非上下文另外明确地表明,如果不特意限定要素的数量,则该要素可以是一个也可以是多个。此外,本公开中所使用的术语“和/或”涵盖所列出的项目中的任何一个以及全部可能的组合方式。
本公开的方法或设备可以应用于服务器,或者可以应用于包括终端设备、网络和服务器的系统架构。其中,网络用以在终端设备和服务器之间提供通信链路的介质,可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
终端设备可以是用户端设备,其上可以安装有各种客户端应用。例如,图像处理类应用、搜索应用、语音服务类应用等。终端设备可以是硬件,也可以是软件。当终端设备为硬件时,可以是各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、膝上型便携计算机和台式计算机等等。当终端设备为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
服务器可以是运行各种服务的服务器,例如运行基于图像、视频、语音、文本、数字信号等数据的目标检测与识别、文本或语音识别、信号转换等服务的服务器。服务器可以获取深度学习任务数据来构建训练样本,对用于执行深度学习任务的神经网络模型进行训练。
服务器可以是为终端设备上安装的应用提供后端支持的后端服务器。例如,服务器可根据终端的运行环境搜索适合终端设备运行的神经网络模型结构,具体可以构建超网络,对超网络进行训练,并基于训练完成的超网络评估不同结构的神经网络模型的性能,进而确定出与终端设备匹配的神经网络模型的结构。服务器还可以接收终端设备发送的待处理的数据,使用基于训练完成的超网络搜索出的神经网络模型对数据进行处理,并将处理结果返回至终端设备。
需要说明的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
在机器学习中一般有两类参数:一类参数可以从数据中学习估计得到,还有一类参数如法从数据中估计得到,只能依靠人的经验进行设计制定,后一类参数即叫做超参数。在机器学习模型里的框架参数,比如聚类方法里面类的个数,或者话题模型里面话题的个数,或者BN中的相关参数等等,都称为超参数。它们跟训练过程中学习的参数(权重)是不一样的,超参数是在开始学习过程之前设置值的参数,通常是手工设定,不断试错调整,或者对一系列穷举出来的参数组合一通枚举(叫做网格搜索)。对超参数进行优化,给学习机选择一组最优超参数,以提高学习的性能和效果。通常,模型中的每一层均采用同样的超参数调优模型,但是模型结构往往有几十层甚至上百层,所有层采用同样的策略,模型的精度会很差。
因此,根据本公开的一个方面,如图1所示,提供了一种神经网络模型的超参数确定方法,包括:在所述神经网络模型中构建多个搜索空间(步骤110);针对多个搜索空间中的每一个搜索空间,分别获取相对应的超参数取值集合(步骤120);获取由编码器生成的一组编码,其中一组编码中的编码个数与多个搜索空间的个数相同(步骤130);以及根据一组编码和所获取的超参数取值集合确定每一个搜索空间所对应的超参数值(步骤140)。
根据本公开的神经网络模型的超参数确定方法,通过引入的搜索空间,自动确定不同搜索空间内的相关超参数值,从而实现为模型自动设置一组超参数值,提升了模型在特定硬件上的速度和精度。
手工设计网络拓扑结构需要非常丰富的经验和众多尝试,并且众多参数会产生爆炸性的组合,常规的随机搜索几乎不可行。神经网络架构搜索技术(Neural ArchitectureSearch,简称NAS)是用算法代替繁琐的人工操作,在海量的搜索空间中自动搜索出最佳的神经网络架构。NAS主要由搜索空间、搜索策略、性能评估策略三部分组成。NAS的原理是给定一个称为搜索空间的候选神经网络结构集合,用某种策略从中搜索出最优网络结构。
在这里,搜索空间是指待搜索网络结构的候选集合。搜索空间大致分为全局搜索空间和基于细胞的搜索空间,前者代表搜索整个网络结构,后者只搜索一些小的结构,通过堆叠、拼接的方法组合成完整的大网络。常见的搜索方法包括:随机搜索、贝叶斯优化、进化算法、强化学习、基于梯度的算法等等。
在一些示例中,可利用NAS的相关算法制定搜索空间设计规则以构建多个搜索空间。根据一些实施例,所述多个搜索空间包括粗粒度空间和/或细粒度空间,其中,在所述粗粒度空间中,一层或多层网络共享同一个超参数值;以及在所述细粒度空间中,一个通道或多个通道共享同一个超参数值。
在一些示例中,可以根据层来构建搜索空间,例如,在神经网络模型中构建搜索空间时,可以将每一层网络依次构建为不同的搜索空间,也可以将每几层网络构建为不同的搜索空间。应当理解,这里的几层网络的数量在不同的搜索空间中并不是固定的,例如,可以将神经网络模型的第一层构建为第一个搜索空间,将该神经网络模型的第二层和第三层共同构建为第二个搜索空间,将该神经网络模型的第四、五、六、七层共同构建为第三个搜索空间,等等。
在一些示例中,也可以根据通道来构建搜索空间,在神经网络模型中,一层可以包括多个通道,因此,可以根据通道来构建多个搜索空间。例如,可以统一设定每几个通道划分为一个搜索空间,或者自定义每一个搜索空间各自所包含的通道个数。再者,例如可以按照层和通道的顺序依次来构建搜索空间,也可以通过自定义的方式将不同层中的通道和/或某一层中的间隔的某几个通道构建为一个搜索空间,即,在此不对搜索空间的具体结构进行限制,只要能够用来实现根据本公开的方法即可。
在一些示例中,也可以根据层和通道来构建搜索空间。例如,可以设置所构建的搜索空间中既可以包括完整的层也可以包括一个或多个其他通道;或者,也可以设置根据层来构建一部分搜索空间,并根据通道来构建另一部分搜索空间。即,在此不对搜索空间的具体结构进行限制,只要能够用来实现根据本公开的方法即可。
根据一些实施例,所述超参数包括批量归一化BN超参数。
对于神经网络模型的训练是一个复杂的过程,只要网络的前面几层发生微小的改变,那么后面几层就会被累积放大下去。一旦网络某一层的输入数据的分布发生改变,那么这一层网络就需要去适应学习这个新的数据分布,所以如果训练过程中,训练数据的分布一直在发生变化,那么将会影响模型的训练速度。以网络第二层为例:网络的第二层输入,是由第一层的参数和输入计算得到的,而第一层的参数在整个训练过程中一直在变化,因此必然会引起后面每一层输入数据分布的改变。此现象被称为内部协变量偏移,并可通过归一化层输入来解决该问题。例如,在模型的每一层输入的时候,插入了一个归一化层,也就是先做一个归一化处理,然后再进入模型的下一层。因为神经网络模型在做非线性变换前的激活输入值随着网络深度加深或者在训练过程中,其分布逐渐发生偏移或者变动,之所以训练收敛慢,一般是整体分布逐渐往非线性函数的取值区间的上下限两端靠近,所以这导致反向传播时低层神经网络的梯度消失,这是训练深层神经网络收敛越来越慢的本质原因。而批量归一化BN就是通过一定的规范化手段,对于每个隐层神经元,把逐渐向非线性函数映射后向取值区间极限饱和区靠拢的输入分布强制拉回到均值为0方差为1的比较标准的正态分布,使得非线性变换函数的输入值落入对输入比较敏感的区域,以此避免梯度消失问题。而且,梯度变大意味着学习收敛速度快,能大大加快训练速度。
BN中的超参数可以很好地使用根据本公开的方法进行确定,而不必在模型训练前人为地进行指定。
根据一些实施例,所述编码器生成的编码的取值与所述超参数取值集合的集合大小相对应。例如,假设在该神经网络模型中构建了5个搜索空间,并且预先设定每一个搜索空间所对应的超参数取值集合均为{0.0001,0.001,0.01,0.1},则编码器所生成的一组编码中的每一个编码的取值大小最大应与所述集合所包含的数个数相对应,例如,编码器输出一组编码{0,1,3,1,0},则表示第一个搜索空间的超参数取值为其所对应集合中的第一个数据,即0.0001;第二个搜索空间的超参数取值为其所对应集合中的第二个数据,即0.001;第三个搜索空间的超参数取值为其所对应集合中的第四个数据,即0.1;第四个搜索空间的超参数取值为其所对应集合中的第二个数据,即0.001;第五个搜索空间的超参数取值为其所对应集合中的第一个数据,即0.0001。应当理解,不同的搜索空间所对应的超参数取值集合也可以不同,例如第一个搜索空间所对应的超参数取值集合为{0.0001,0.001,0.01,0.1},第二个搜索空间所对应的超参数取值集合为{0.001,0.002,0.02,0.2},等等。
根据一些实施例,根据本公开的方法还包括:基于所述确定的超参数值对所述神经网络模型进行训练;响应于所述神经网络模型收敛,获取所述神经网络模型的训练精度;响应于未达到编码器更新预设条件,根据所述训练精度更新所述编码器以生成新的一组编码;以及根据所述新的一组编码和所述所获取的超参数取值集合确定每一个所述搜索空间所对应的超参数值。
根据一些实施例,所述编码器基于神经网络模型。例如,编码器为基于深度学习的神经网络模型。
神经网络是由大量的、简单的处理单元(称为神经元)广泛地互相连接而形成的复杂网络系统,它反映了人脑功能的许多基本特征,是一个高度复杂的非线性动力学习系统。神经网络具有大规模并行、分布式存储和处理、自组织、自适应和自学能力,特别适合处理需要同时考虑许多因素和条件的、不精确和模糊的信息处理问题。学习是神经网络一种最重要也最令人注目的特点,其能够对外部环境提供的模式样本进行学习训练。在根据本公开的示例中,通过将模型的训练精度反馈到编码器模型中,使得编码器模型进行学习以进一步优化其生成的编码,从而不断优化超参数的取值。
在一些示例中,如图2所示,在神经网络模型中构建了多个搜索空间并获取了每一个搜索空间所各自对应的超参数取值集合后(步骤210),初始化编码器(步骤220)以使得该编码器生成一组编码并获取(步骤230)。将生成的一组编码根据每一个搜索空间所各自对应的超参数取值集合进行解码(步骤240),以获取每一个搜索空间所各自对应的超参数值。根据解码得到的超参数值来设置神经网络模型中构建的多个搜索空间所对应的超参数值,从而对该神经网络模型进行训练,以获取模型收敛后的精度(步骤250)。响应于未达到编码器更新预设条件(步骤260,“否”),则将该精度反馈到编码器模型,使之基于深度学习算法进行编码器模型更新(步骤270)。使用更新后的编码器生成一组新的编码,利用将生成的新的一组编码根据每一个搜索空间所各自对应的超参数取值集合进行解码后所获取的超参数值,再次对该神经网络模型进行训练,以重新获取模型收敛后的精度……直到达到编码器更新预设条件后不再更新编码器(步骤260,“是”),并使用由该编码器所最终确定的超参数值对该神经网络模型进行训练并进一步使用。
根据一些实施例,所述编码器更新预设条件包括以下中的一个或多个:所述模型训练精度达到预设精度、所述编码器的更新次数达到预设次数。即,可以设置当神经网络模型的训练精度达到预设精度则不再进一步更新编码器;或者当编码器已更新达预设次数则不再进一步更新编码器;或者神经网络模型的训练精度已达到预设精度并且编码器已更新达预设次数则不再进一步更新编码器。
应当理解,符合本公开的其他预设条件也是可能的,在此不作限制。
根据本公开所述的方法,可以为神经网络模型的不同层或通道定制化不同的BN超参数,从而提升了神经网络模型的训练精度;由此,可以提升神经网络模型在特定硬件上的运行速度和训练精度,提升了产品的核心竞争力,同时降低了产品的运行成本。
通过本公开方法可以显著提升模型的训练精度,等效于通过更小的模型即可达到原本的训练精度,从而通过训练的模型在硬件上处理图像时相应地速度更快,降低了产品的成本,提升了产品的核心竞争力。
根据本公开的另一个方面,如图3所示,提供了一种神经网络模型的超参数确定设备300,包括:搜索空间构建单元310,配置为在所述神经网络模型中构建多个搜索空间;第一获取单元320,配置为针对所述多个搜索空间中的每一个搜索空间,分别获取相应的超参数取值集合;第二获取单元330,配置为获取由编码器生成的一组编码,其中所述一组编码中的编码个数与所述多个搜索空间的个数相同;以及第一确定单元340,配置为根据所述一组编码和所获取的超参数取值集合确定每一个所述搜索空间所对应的超参数值。
根据一些实施例,根据本公开的设备还包括:训练单元,配置为基于所述确定的超参数值对所述神经网络模型进行训练;第一响应单元,配置为响应于所述神经网络模型收敛,获取所述神经网络模型的训练精度;第二响应单元,配置为响应于未达到编码器更新预设条件,根据所述训练精度更新所述编码器以生成新的一组编码;以及第二确定单元,配置为根据所述新的一组编码和所述所获取的超参数取值集合确定每一个所述搜索空间所对应的超参数值。
根据一些实施例,所述多个搜索空间包括粗粒度空间和/或细粒度空间,其中,在所述粗粒度空间中,一层或多层网络共享同一个超参数值;以及在所述细粒度空间中,一个通道或多个通道共享同一个超参数值。
根据一些实施例,所述编码器基于神经网络模型。
根据一些实施例,所述编码器更新预设条件包括以下中的一个或多个:所述神经网络模型的训练精度达到预设精度、所述编码器的更新次数达到预设次数。
根据一些实施例,所述编码器生成的编码的取值与所述超参数取值集合的集合大小相对应。
根据一些实施例,所述超参数包括批量归一化超参数。
这里,提升匹配效率的联邦学习设备300的上述各单元310~340的操作分别与前面描述的步骤110~140的操作类似,在此不再赘述。
根据本公开的又一个方面,提供了一种计算设备,包括:处理器;以及存储程序的存储器,该程序包括指令,该指令在由处理器执行时使处理器执行本公开所述的神经网络模型的超参数确定方法。
根据本公开的又一个方面,提供了一种存储程序的计算机可读存储介质,该程序包括指令,该指令在由计算设备的处理器执行时,致使电子设备执行本公开所述的神经网络模型的超参数确定方法。
参见图4所示,现将描述计算设备2000,其是可以应用于本公开的各方面的硬件设备的示例。计算设备2000可以是被配置为执行处理和/或计算的任何机器,可以是但不限于工作站、服务器、台式计算机、膝上型计算机、平板计算机、个人数字助理、机器人、智能电话、车载计算机或其任何组合。上述神经网络模型的超参数确定方法可以各自全部或至少部分地由计算设备2000或类似设备或系统实现。
计算设备2000可以包括(可能经由一个或多个接口)与总线2002连接或与总线2002通信的元件。例如,计算设备2000可以包括总线2002、一个或多个处理器2004、一个或多个输入设备2006以及一个或多个输出设备2008。一个或多个处理器2004可以是任何类型的处理器,并且可以包括但不限于一个或多个通用处理器和/或一个或多个专用处理器(例如特殊处理芯片)。输入设备2006可以是能向计算设备2000输入信息的任何类型的设备,并且可以包括但不限于鼠标、键盘、触摸屏、麦克风和/或遥控器。输出设备2008可以是能呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。计算设备2000还可以包括非暂时性存储设备2010或者与非暂时性存储设备2010连接,非暂时性存储设备可以是非暂时性的并且可以实现数据存储的任何存储设备,并且可以包括但不限于磁盘驱动器、光学存储设备、固态存储器、软盘、柔性盘、硬盘、磁带或任何其他磁介质,光盘或任何其他光学介质、ROM(只读存储器)、RAM(随机存取存储器)、高速缓冲存储器和/或任何其他存储器芯片或盒、和/或计算机可从其读取数据、指令和/或代码的任何其他介质。非暂时性存储设备2010可以从接口拆卸。非暂时性存储设备2010可以具有用于实现上述方法和步骤的数据/程序(包括指令)/代码。计算设备2000还可以包括通信设备2012。通信设备2012可以是使得能够与外部设备和/或与网络通信的任何类型的设备或系统,并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信设备和/或芯片组,例如蓝牙TM设备、1302.11设备、WiFi设备、WiMax设备、蜂窝通信设备和/或类似物。
计算设备2000还可以包括工作存储器2014,其可以是可以存储对处理器2004的工作有用的程序(包括指令)和/或数据的任何类型的工作存储器,并且可以包括但不限于随机存取存储器和/或只读存储器设备。
软件要素(程序)可以位于工作存储器2014中,包括但不限于操作系统2016、一个或多个应用程序2018、驱动程序和/或其他数据和代码。用于执行上述方法和步骤的指令可以被包括在一个或多个应用程序2018中,并且上述神经网络模型的超参数确定方法可以各自通过由处理器2004读取和执行一个或多个应用程序2018的指令来实现。更具体地,上述神经网络模型的超参数确定方法中,步骤110~步骤140可以例如通过处理器2004执行具有步骤110~步骤140的指令的应用程序2018而实现。此外,上述神经网络模型的超参数确定方法中的其它步骤可以例如通过处理器2004执行具有执行相应步骤中的指令的应用程序2018而实现。软件要素(程序)的指令的可执行代码或源代码可以存储在非暂时性计算机可读存储介质(例如上述存储设备2010)中,并且在执行时可以被存入工作存储器2014中(可能被编译和/或安装)。软件要素(程序)的指令的可执行代码或源代码也可以从远程位置下载。
还应该理解,可以根据具体要求而进行各种变型。例如,也可以使用定制硬件,和/或可以用硬件、软件、固件、中间件、微代码,硬件描述语言或其任何组合来实现特定元件。例如,所公开的方法和设备中的一些或全部可以通过使用根据本公开的逻辑和算法,用汇编语言或硬件编程语言(诸如VERILOG,VHDL,C++)对硬件(例如,包括现场可编程门阵列(FPGA)和/或可编程逻辑阵列(PLA)的可编程逻辑电路)进行编程来实现。
还应该理解,计算设备2000的组件可以分布在网络上。例如,可以使用一个处理器执行一些处理,而同时可以由远离该一个处理器的另一个处理器执行其他处理。计算系统2000的其他组件也可以类似地分布。这样,计算设备2000可以被解释为在多个位置执行处理的分布式计算系统。
虽然已经参照附图描述了本公开的实施例或示例,但应理解,上述的方法、系统和设备仅仅是示例性的实施例或示例,本发明的范围并不由这些实施例或示例限制,而是仅由授权后的权利要求书及其等同范围来限定。实施例或示例中的各种要素可以被省略或者可由其等同要素替代。此外,可以通过不同于本公开中描述的次序来执行各步骤。进一步地,可以以各种方式组合实施例或示例中的各种要素。重要的是随着技术的演进,在此描述的很多要素可以由本公开之后出现的等同要素进行替换。
Claims (14)
1.一种神经网络模型的超参数确定方法,包括:
在所述神经网络模型中构建多个搜索空间,其中,所述神经网络模型的训练样本基于以下至少一项数据获得:图像、视频、语音、文本、数字信号,所述搜索空间为待搜索网络结构的候选集合;
针对所述多个搜索空间中的每一个搜索空间,分别获取相应的超参数取值集合;
获取由编码器生成的一组编码,其中所述一组编码中的编码个数与所述多个搜索空间的个数相同;
根据所述一组编码和所获取的超参数取值集合确定每一个所述搜索空间所对应的超参数值,包括:将生成的一组编码根据每一个搜索空间所各自对应的超参数取值集合进行解码,以获取每一个搜索空间所各自对应的超参数值;
基于所确定的超参数值对所述神经网络模型进行训练;
响应于所述神经网络模型收敛,获取所述神经网络模型的训练精度;
响应于未达到编码器停止更新的预设条件,根据所述训练精度更新所述编码器以生成新的一组编码;
根据所述新的一组编码和所述所获取的超参数取值集合确定每一个所述搜索空间所对应的超参数值,以基于新确定的所述超参数值继续对所述神经网络模型进行训练;以及
响应于达到编码器停止更新的预设条件,根据达到停止更新的预设条件的编码器生成一组编码,以基于该一组编码和所述所获取的超参数取值集合确定每一个所述搜索空间所对应的超参数值。
2.如权利要求1所述的方法,其中,所述多个搜索空间包括粗粒度空间和/或细粒度空间,其中,
在所述粗粒度空间中,一层或多层网络共享同一个超参数值;以及
在所述细粒度空间中,一个通道或多个通道共享同一个超参数值。
3.如权利要求1所述的方法,其中,所述编码器基于神经网络模型。
4.如权利要求1所述的方法,其中,所述编码器停止更新的预设条件包括以下中的一个或多个:所述神经网络模型的训练精度达到预设精度、所述编码器的更新次数达到预设次数。
5.如权利要求1所述的方法,其中,所述编码器生成的编码的取值与所述超参数取值集合的集合大小相对应。
6.如权利要求1所述的方法,其中,所述超参数包括批量归一化超参数。
7.一种神经网络模型的超参数确定设备,包括:
搜索空间构建单元,配置为在所述神经网络模型中构建多个搜索空间,其中,所述神经网络模型的训练样本基于以下至少一项数据获得:图像、视频、语音、文本、数字信号,所述搜索空间为待搜索网络结构的候选集合;
第一获取单元,配置为针对所述多个搜索空间中的每一个搜索空间,分别获取相应的超参数取值集合;
第二获取单元,配置为获取由编码器生成的一组编码,其中所述一组编码中的编码个数与所述多个搜索空间的个数相同;
第一确定单元,配置为根据所述一组编码和所获取的超参数取值集合确定每一个所述搜索空间所对应的超参数值,包括:将生成的一组编码根据每一个搜索空间所各自对应的超参数取值集合进行解码,以获取每一个搜索空间所各自对应的超参数值;
训练单元,配置为基于所述确定的超参数值对所述神经网络模型进行训练;
第一响应单元,配置为响应于所述神经网络模型收敛,获取所述神经网络模型的训练精度;
第二响应单元,配置为响应于未达到编码器停止更新的预设条件,根据所述训练精度更新所述编码器以生成新的一组编码;以及
第二确定单元,配置为根据所述新的一组编码和所述所获取的超参数取值集合确定每一个所述搜索空间所对应的超参数值,以基于新确定的所述超参数值继续对所述神经网络模型进行训练;以及响应于达到编码器停止更新的预设条件,根据达到停止更新的预设条件的编码器生成一组编码,以基于该一组编码和所述所获取的超参数取值集合确定每一个所述搜索空间所对应的超参数值。
8.如权利要求7所述的设备,其中,所述多个搜索空间包括粗粒度空间和/或细粒度空间,其中,
在所述粗粒度空间中,一层或多层网络共享同一个超参数值;以及
在所述细粒度空间中,一个通道或多个通道共享同一个超参数值。
9.如权利要求7所述的设备,其中,所述编码器基于神经网络模型。
10.如权利要求7所述的设备,其中,所述编码器停止更新的预设条件包括以下中的一个或多个:所述神经网络模型的训练精度达到预设精度、所述编码器的更新次数达到预设次数。
11.如权利要求7所述的设备,其中,所述编码器生成的编码的取值与所述超参数取值集合的集合大小相对应。
12.如权利要求7所述的设备,其中,所述超参数包括批量归一化超参数。
13.一种计算设备,包括:
处理器;以及
存储程序的存储器,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据权利要求1-6中任一项所述的方法。
14.一种存储程序的计算机可读存储介质,所述程序包括指令,所述指令在由计算设备的处理器执行时,致使所述计算设备执行根据权利要求1-6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011148115.7A CN112241786B (zh) | 2020-10-23 | 2020-10-23 | 模型超参数的确定方法及设备、计算设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011148115.7A CN112241786B (zh) | 2020-10-23 | 2020-10-23 | 模型超参数的确定方法及设备、计算设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112241786A CN112241786A (zh) | 2021-01-19 |
CN112241786B true CN112241786B (zh) | 2024-02-20 |
Family
ID=74169530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011148115.7A Active CN112241786B (zh) | 2020-10-23 | 2020-10-23 | 模型超参数的确定方法及设备、计算设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112241786B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107480768A (zh) * | 2017-08-07 | 2017-12-15 | 海南海大信息产业园有限公司 | 贝叶斯网络结构自适应学习方法和装置、存储设备以及终端设备 |
WO2020068437A1 (en) * | 2018-09-28 | 2020-04-02 | Xilinx, Inc. | Training of neural networks by including implementation cost as an objective |
CN111126564A (zh) * | 2019-11-27 | 2020-05-08 | 东软集团股份有限公司 | 一种神经网络结构搜索方法、装置及设备 |
CN111222629A (zh) * | 2019-12-31 | 2020-06-02 | 暗物智能科技(广州)有限公司 | 一种基于自适应批规范化的神经网络模型剪枝方法及系统 |
CN111516700A (zh) * | 2020-05-11 | 2020-08-11 | 安徽大学 | 一种驾驶员分心细粒度监测方法和系统 |
-
2020
- 2020-10-23 CN CN202011148115.7A patent/CN112241786B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107480768A (zh) * | 2017-08-07 | 2017-12-15 | 海南海大信息产业园有限公司 | 贝叶斯网络结构自适应学习方法和装置、存储设备以及终端设备 |
WO2020068437A1 (en) * | 2018-09-28 | 2020-04-02 | Xilinx, Inc. | Training of neural networks by including implementation cost as an objective |
CN111126564A (zh) * | 2019-11-27 | 2020-05-08 | 东软集团股份有限公司 | 一种神经网络结构搜索方法、装置及设备 |
CN111222629A (zh) * | 2019-12-31 | 2020-06-02 | 暗物智能科技(广州)有限公司 | 一种基于自适应批规范化的神经网络模型剪枝方法及系统 |
CN111516700A (zh) * | 2020-05-11 | 2020-08-11 | 安徽大学 | 一种驾驶员分心细粒度监测方法和系统 |
Non-Patent Citations (3)
Title |
---|
AutoLSTM下的降水量预测方法;刘威;黄敏;白润才;刘光伟;成秘;付杰;王薪予;;辽宁工程技术大学学报(自然科学版)(05);全文 * |
DeepHyper: Asynchronous Hyperparameter Search for Deep Neural Networks;Prasanna Balaprakash;2018 IEEE 25th International Conference on High Performance Computing (HiPC);全文 * |
基于超限学习机与随机响应面方法的深度学习超参数优化算法;孙永泽;陆忠华;;高技术通讯(12);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112241786A (zh) | 2021-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110852438B (zh) | 模型生成方法和装置 | |
EP3467723B1 (en) | Machine learning based network model construction method and apparatus | |
WO2022007823A1 (zh) | 一种文本数据处理方法及装置 | |
US11797822B2 (en) | Neural network having input and hidden layers of equal units | |
US20200265301A1 (en) | Incremental training of machine learning tools | |
CN111401406B (zh) | 一种神经网络训练方法、视频帧处理方法以及相关设备 | |
CN112288075B (zh) | 一种数据处理方法及相关设备 | |
WO2019216938A1 (en) | Application development platform and software development kits that provide comprehensive machine learning services | |
EP4136586A1 (en) | Adversarial pretraining of machine learning models | |
WO2022068623A1 (zh) | 一种模型训练方法及相关设备 | |
CN112084789B (zh) | 文本处理方法、装置、设备及存储介质 | |
CN116415654A (zh) | 一种数据处理方法及相关设备 | |
CN111898636B (zh) | 一种数据处理方法及装置 | |
CN111816159B (zh) | 一种语种识别方法以及相关装置 | |
CN112149809A (zh) | 模型超参数的确定方法及设备、计算设备和介质 | |
CN111144124A (zh) | 机器学习模型的训练方法、意图识别方法及相关装置、设备 | |
US20190228297A1 (en) | Artificial Intelligence Modelling Engine | |
WO2021253941A1 (zh) | 神经网络模型训练、图像分类、文本翻译方法及装置、设备 | |
CN114840734B (zh) | 多模态表示模型的训练方法、跨模态检索方法及装置 | |
EP4060526A1 (en) | Text processing method and device | |
CN112241786B (zh) | 模型超参数的确定方法及设备、计算设备和介质 | |
US20230108177A1 (en) | Hardware-Aware Progressive Training Of Machine Learning Models | |
KR20200027085A (ko) | 전자 장치 및 그 제어 방법 | |
CN116882512A (zh) | 一种数据处理方法、模型的训练方法以及相关设备 | |
WO2024025623A1 (en) | Oneshot neural architecture and hardware architecture search |
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 |