CN110663049A - 神经网络优化器搜索 - Google Patents
神经网络优化器搜索 Download PDFInfo
- Publication number
- CN110663049A CN110663049A CN201880034697.0A CN201880034697A CN110663049A CN 110663049 A CN110663049 A CN 110663049A CN 201880034697 A CN201880034697 A CN 201880034697A CN 110663049 A CN110663049 A CN 110663049A
- Authority
- CN
- China
- Prior art keywords
- neural network
- output sequence
- controller
- output
- training
- 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.)
- Granted
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 172
- 238000012549 training Methods 0.000 claims abstract description 79
- 238000000034 method Methods 0.000 claims abstract description 62
- 238000003860 storage Methods 0.000 claims abstract description 10
- 230000006870 function Effects 0.000 claims description 36
- 238000012545 processing Methods 0.000 claims description 17
- 230000000306 recurrent effect Effects 0.000 claims description 13
- 238000009826 distribution Methods 0.000 claims description 7
- 230000002787 reinforcement Effects 0.000 claims description 6
- 238000011156 evaluation Methods 0.000 claims description 4
- 238000005457 optimization Methods 0.000 claims description 4
- 230000004044 response Effects 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000005070 sampling Methods 0.000 claims 1
- 238000004590 computer program Methods 0.000 abstract description 15
- 230000008569 process Effects 0.000 description 24
- 238000010200 validation analysis Methods 0.000 description 11
- 230000009471 action Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 238000010801 machine learning Methods 0.000 description 6
- 230000015654 memory Effects 0.000 description 6
- 230000001537 neural effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 241000009334 Singa Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000000137 annealing Methods 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000013518 transcription Methods 0.000 description 1
- 230000035897 transcription Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
-
- 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/0985—Hyperparameter optimisation; Meta-learning; Learning-to-learn
-
- 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
-
- 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/09—Supervised learning
-
- 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/092—Reinforcement learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Machine Translation (AREA)
- Feedback Control In General (AREA)
Abstract
涉及方法、系统和设备,包括编码在计算机存储介质上的计算机程序,用于确定训练神经网络的更新规则。所述方法中的一种方法包括:使用控制器神经网络生成输出序列的批次,所述批次中的每个输出序列限定相应的更新规则;针对所述批次中的每个输出序列:使用所述输出序列限定的所述更新规则来训练子神经网络的相应实例;评估所述子神经网络的经训练的实例对所述特定神经网络任务的性能,以确定所述子神经网络的经训练的实例对所述特定神经网络任务的性能度量;以及使用所述子神经网络的经训练的实例的所述性能度量来调节所述控制器神经网络的所述控制器参数的所述当前值。
Description
技术领域
本说明书涉及训练神经网络。
背景技术
神经网络是采用一层或者多层非线性单元针对接收到的输入来预测输出的机器学习模型。一些神经网络除输出层外还包括一个或多个隐藏层。每个隐藏层的输出被用作网络中的下一层即下一个隐藏层或者输出层的输入。网络的每个层根据相应的参数集合的当前值从接收到的输入生成输出。
一些神经网络是递归神经网络。递归神经网络是接收输入序列并从输入序列生成输出序列的神经网络。具体地说,递归神经网络可以在计算当前时间步处的输出时使用从先前时间步依赖网络的部分或全部内部状态。递归神经网络的示例是包括一个或多个LSTM内存块的长短期(LSTM)神经网络。每个LSTM内存块可以包括一个或多个单元,每个单元包括输入门、遗忘门和输出门,这些门允许该单元存储该单元的先前状态,例如,用于生成电流激活或被提供给LSTM神经网络的其他组件。
发明内容
本说明书描述了作为计算机程序实施在一个或多个位置中的一个或多个计算机上的系统可以使用控制器神经网络确定用于训练神经网络执行特定神经网络任务的更新规则的方式。
可以实施在本说明书中描述的主题的特定实施例以实现以下优点中的一个或者多个。
在神经网络的训练期间,使用迭代计算出来的梯度,在各次训练迭代时更新神经网络的参数的值。更常规的技术使用预定更新规则来确定使用当前梯度更新参数值的方式。另一方面,所描述的系统确定为训练神经网络的特定任务定制的更新规则。具体地说,通过利用据称能预测有效更新规则的递归神经网络然后评估这些规则更新预测结果的有效性,所描述的系统能有效地确定为特定任务定制的更新规则。通过在神经网络的实际训练期间使用确定的更新规则,因为更准确地应用了更新,所以训练过程变得更加高效。这可以产生如下效果:(i)训练过程使用更少的计算资源,例如,处理功率和内存,因为该过程需要更少次迭代就能完成;(ii)因为更准确地应用了更新,所以训练过程产生了对特定任务的性能得到改善的神经网络;或(iii)上述两种效果均有。
因此,系统能有效地且自动地即不需要用户干预选择和更新会针对特定任务产生高性能训练的神经网络的更新规则。
因为系统通过强化学习训练控制器神经网络来确定更新规则,所以系统能有效地探索大范围的可能的更新规则来标识适用于特定任务的更新规则。
另外,由于更新规则由控制器神经网络的输出限定这种方式,即,因为控制器神经网络生成限定更新规则的域专用语言的字符串,所以系统能按照在计算上高效的方式有效地探索可能的更新规则的范围。具体而言,因为字符串从一组基元运算方面限定更新规则,即,是已被发现当被用作常规更新规则的一部分时有效的某些基元运算的输出的操作数,系统能以较少数量的迭代有效地探索这些基元运算的可能的组合。
此外,可以将系统生成的候选更新规则的评估并行化,从而减少了针对任务确定有效更新规则所需的时间。
例如,不同的图像分类任务需要将不同类型的图像分成不同类型的对象类别。对于一个图像分类任务有效的更新规则可能对于另一任务无效。例如,一个图像分类任务可能较简单,因此在极大地取决于当前的梯度的每次训练迭代时用大更新即大步长大小即可有效学习,而另一个图像分类任务可能较复杂,需要更小的更新,这种更小的更新取决于最近梯度的移动平均数,而不是仅仅取决于当前的梯度。所描述的系统能为两个不同的图像分类任务确定不同的更新规则,这确保能针对任务高效地训练神经网络。
在附图和下面的描述中阐述了在本说明书中描述的主题的一个或者多个实施例的细节。本主题的其它特征、方面、和优点将通过描述、附图、以及权利要求书变得显而易见。
附图说明
图1示出了示例神经优化器搜索系统。
图2是生成输出序列的控制器神经网络的示例的图。
图3是用于更新控制器参数的当前值的示例过程的流程图。
在每个图中,类似的参考符号和指定表示类似的元件。
具体实施方式
本说明书描述了一种被实施为在一个或多个位置中的一个或多个计算机上的计算机程序的系统,该系统使用控制器神经网络来确定用于在训练特定神经网络执行特定神经网络任务期间用于更新该特定神经网络的参数的值的更新规则。更新规则也被称为用于训练第一神经网络的优化器。
具体而言,为了训练神经网络执行特定神经网络任务,训练系统使用迭代训练过程。在训练过程的每次迭代中,训练系统确定相对于神经网络参数值的梯度,使用更新规则使用梯度确定对参数的当前值的更新,然后应用即加或减对参数的当前值的更新来生成更新的参数值,然后在下一次迭代中使用该更新的参数值。更新规则确定如何使用与当前迭代的梯度(以及,在某些情况下,在先前迭代中确定的梯度或其他数量)来生成当前迭代的更新。
本说明书描述了用于针对特定神经网络任务定制的方式确定更新规则的技术。
可以将要训练的神经网络被配置成执行任何适当的神经网络任务,即,接收任何种类的数字数据输入并基于该输入生成任何种类的分数、分类或回归输出。
例如,如果神经网络的输入是图像或已经从图像中提取的特征,则神经网络针对给定图像生成的输出可以是一组对象类别中的每个类别的分数,每个分数表示图像包含属于该类别的对象的图像的估计可能性。
作为另一个示例,如果神经网络的输入是互联网资源(例如,网页)、文档或文档的一部分或从互联网资源、文档或文档的一部分提取的特征,则由神经网络针对给定互联网资源、文档或文档的一部分生成的输出可以是一组主题中每个主题的分数,每个分数表示互联网资源、文档或文档部分与该主题有关的估计可能性。
作为另一示例,如果神经网络的输入是特定广告的印象上下文的特征,则由神经网络生成的输出可以是分数,该分数表示特定广告将被点击的估计可能性。
作为另一示例,如果神经网络的输入是针对用户的个性化推荐的特征,例如,表征该推荐的上下文的特征,例如,表征用户所采取的先前动作的特征,则由神经网络生成的输出可以是一组内容项中每一个内容项的分数,每个分数表示用户将对被推荐的内容项做出有利响应的估计可能性。
作为另一示例,如果神经网络的输入是一种语言的文本序列,则神经网络生成的输出可以是另一种语言的一组文本中的每一个文本的分数,每个分数表示另一种语言的文本是将输入文本正确翻译成另一种语言的估计可能性。
作为另一示例,如果神经网络的输入是表示说出的话语的序列,则神经网络生成的输出可以是一组文本中每一个文本的分数,每个分数表示该文本是话语的正确笔录的估计可能性。
图1示出了示例神经优化器搜索系统100。神经优化器搜索系统100是被实施为在位于一个或者多个位置处的一个或者多个计算机上的计算机程序的系统的示例,下面描述的系统、组件和技术可以在该位置处实施。
神经优化器搜索系统100是接收确定用于训练特定神经网络执行特定任务的更新规则的请求的系统。作为该请求的一部分,神经优化器搜索系统100获得用于训练神经网络执行特定任务的训练数据102和用于评估特定神经网络对特定任务的性能的验证集104。
神经优化器搜索系统100使用训练数据102和验证集104确定为训练神经网络执行特定任务而定制的优化更新规则。如上所述,更新规则指定如何将在神经网络训练过程的迭代期间计算出的梯度用于更新神经网络的参数的当前值,即,更新该次迭代的神经网络的参数的值。
通常,训练数据102和验证集104都包括一组神经网络输入,并且对于每个网络输入,包括应由特定神经网络生成以执行特定任务的相应目标输出。例如,较大的训练数据集可能已被随机分区以生成训练数据102和验证集104。
系统100可以按照多种方式中的任何一种来接收训练数据102和验证集104。例如,系统100可以例如通过使用系统100提供的应用编程接口(API),通过数据通信网络从系统的远程用户接收训练数据作为上传,并且将上传的数据随机划分为训练数据102和验证集104。作为另一示例,系统100可以从用户接收输入,该输入指定应当使用系统100已经维护的哪些数据来训练神经网络,然后将指定的数据划分为训练数据102和验证集104。
神经优化器搜索系统100包括控制器神经网络110、训练引擎120和控制器参数更新引擎130。
控制器神经网络110是具有参数的神经网络,该参数在本说明书中称为“控制器参数”,并且被配置成根据控制器参数生成输出序列。由控制器神经网络110生成的每个输出序列限定用于训练神经网络的候选更新规则。
具体而言,每个输出序列将候选更新规则的公式表达为域专用语言的字符串。即,输出序列是来自用于共同限定候选更新规则的域专用语言的字符词汇表中的字符的有序集合。在一些实施方式中,字符串用域专用语言描述了多个操作数和一个或多个要应用于这些操作数的函数。下面将参考图2更详细地描述域专用语言以及神经网络的输出如何限定候选更新规则。
通常,系统100通过训练控制器神经网络110调节控制器参数的值来确定优化的更新规则。
具体而言,在控制器训练过程的迭代期间,系统100根据控制器参数的当前值使用控制器神经网络110生成一批序列112。
对于批次112中的每个输出序列,训练引擎120根据训练数据102上的输出序列限定的候选更新规则训练子神经网络的实例,并评估经过训练的实例对验证集104的性能。
也就是说,对于给定的输出序列,训练引擎120在训练数据102上训练子神经网络的实例,并且在训练期间,使用由给定输出序列限定的候选更新规则将更新应用于子神经网络的参数的值。
子神经网络是被配置成执行特定神经网络任务的神经网络。在一些实施方式中,子神经网络是特定神经网络,即,具有与特定神经网络相同的架构。然而,在其他实施方式中,子神经网络是具有比特定神经网络更少的参数的神经网络。也就是说,系统100可以使用相对计算简单的子神经网络即层数少于特定神经网络的子神经网络来确定优化更新规则。这确保即使在确定优化更新规则之前评估了大量候选更新规则,确定优化更新的过程也不会使用过多的计算资源。
训练引擎120在评估实例的性能之前训练每个实例固定数量的训练时期。具体而言,相对于训练特定神经网络完成特定任务通常需要的时期数量,训练引擎120训练每个实例较少数量的时期。例如,训练引擎120可以训练每个实例五个或十个时期。这种时期数量可以适合于确定候选更新规则的有效性,同时保持训练在计算上相对高效。这也能确保即使在确定优化更新规则之前评估了大量候选更新规则,确定优化更新的过程也不会使用过多的计算资源。
控制器参数更新引擎130然后使用对批次112中的输出序列的评估结果来更新控制器参数的当前值,以在根据由控制器神经网络110对特定任务生成的输出序列限定的更新规则进行训练时改善经过训练的子神经网络的预期性能。下面参考图3更详细地描述评估经过训练的实例的性能并更新控制器参数的当前值。
通过以这种方式重复更新控制器参数的值,系统100可以训练控制器神经网络110生成限定更新规则的输出序列,这些更新规则在训练过程中使用时会产生对特定任务的性能得到改善的子神经网络,即,最大化经过训练的子网络对验证集104的预期准确性。
一旦已经训练了控制器神经网络110,系统100就可以选择对验证集104性能最好的更新规则作为优化的更新规则,或者可以根据控制器参数的训练值生成新的输出序列,并且使用新输出序列限定的更新规则作为优化的更新规则。
神经网络搜索系统100然后可以输出指定优化的更新规则的更新规则数据150。例如,神经网络搜索系统100可以将更新规则数据150输出给提交训练数据的用户。
在一些实施方式中,代替或除了输出更新规则数据150之外,系统100使用优化的更新规则例如来自scratch来训练特定神经网络,或者如果要训练的特定神经网络具有与子神经网络相同的架构,使用优化的更新规则来微调作为训练子神经网络的实例的结果而生成的参数值,然后使用经过训练的神经网络来处理用户例如通过系统提供的API接收的请求。也就是说,系统100可以接收待处理的输入,使用经过训练的神经网络来处理该输入,并响应于接收到的输入而提供由经过训练的神经网络生成的输出或从生成的输出导出的数据。
在一些实施方式中,系统100以分布式方式训练控制器神经网络。也就是说,系统100评估在多个不同的工作器计算单元上并行分布的多个候选更新规则,这些规则被配置成使得它们可以彼此独立地操作。在一些实施方式中,例如,由于计算单元共享一些资源,因此仅实现了操作的部分独立性。计算单元可以是例如计算机、在具有多个核的计算机内的核、或在计算机内能够独立执行评估性能测量所需的计算的其他硬件或软件。
在分布有训练的这些实施方式中的一些实施方式中,每个工作器计算单元维护控制器神经网络的副本,并具有专用训练引擎和专用控制器参数更新引擎,该专用训练引擎为副本输出的批量输出序列生成性能度量,该专用控制器参数引擎使用性能度量确定对控制器参数的更新。
一旦控制器参数更新引擎确定了更新,控制器参数更新引擎就可以将该更新发送到所有控制器参数更新引擎都可以访问的中央参数更新服务器。中央参数更新服务器可以更新由服务器维护的控制器参数的值,并将更新后的值发送到控制器参数更新引擎。在某些情况下,多个副本中的每个副本及其对应的训练引擎和参数更新引擎可以与每个其他训练引擎和参数更新引擎集合异步运行。
在这些实施方式的其他实施方式中,系统100包括单个控制器神经网络,并且每个工作器计算单元仅评估输出序列。具体而言,系统100维护输出序列的队列。当控制器神经网络生成输出序列时,系统100将该输出序列添加到队列中。当工作器计算单元变得可用时,即完成了评估现有的输出序列时,系统100使用已变得可用的工作器计算单元来评估在队列中是第一个的候选序列。在工作器计算单元已经完成对候选序列的评估之后,系统100将工作器计算单元指定为再次可用。
图2是生成输出序列的控制器神经网络110的示例的图200。
通常,每个输出序列都是域专用语言中的字符串。也就是说,输出序列包括处于多个时间步中的每个时间步的相应字符。给定时间步的字符是根据域专用语言限定的语法从时间步的可能字符的集合中选择的。也就是说,每个时间步对应于更新规则的公式的一部分,并且语法针对每个时间步限定该时间步可能使用的字符,以便字符串限定用于更新规则的有效公式。
在图2的示例中,公式的语法使得在给定的训练迭代中,要应用于参数的当前值即添加到参数的当前值或者从参数的当前值中减除的更新Δw的公式可以表示为:
Δw=λ*b(u1(op1),u2(op2))
其中,λ是学习率(其值不由系统确定,但可以使用常规技术在训练过程中选择),b是从一组可能的二元函数中选择的二元函数,u1是从一组可能的一元函数中选择的一元函数,u2是从一组可能的一元函数中选择的另一个一元函数,op1和op2是分别从可能的操作数的集合中选择的第一和第二一元函数的操作数。二元函数、一元函数和操作数均由输出序列中每个位置处的字符限定。
因此,更新规则用一个字符串表示,该字符串包括:在时间步1)要选择的第一操作数、在时间步2)要选择的第二操作数、在时间步3)要应用于第一操作数的一元函数、在时间步4)要应用于第二操作数的一元函数、以及在时间步5)将应用来合并一元函数的输出的二元函数。
在某些情况下,字符串包括这5个时间步的单次迭代,并且在字符串限定了要应用的二元函数之后,语法表明二元函数的输出乘以学习率即可生成对参数的当前值的更新。
在其他情况下,字符串包括这5个时间步的多次迭代,并且语法限定将一次迭代的二元函数的输出加到该可能的操作数的集合中,以供将来的迭代使用,并且可以将其用作任何未来的迭代中的操作数中的一个操作数。在这些情况下,用于最终迭代的二元函数的输出乘以学习率即可生成对参数的当前值的更新。
操作数、一元函数和二元函数可以包括以下表1中指定的部分或全部(其中,g是当前训练迭代中的梯度):
clip(x,10-3),drop(x,0.1),drop(x,0.3),drop(x,0.5)和sign(x)
表1
Adam和RMSProp分别是Adam和RMSProp优化器使用的更新规则。
从表1可以看出,操作数包括某些基元运算的输出,这些基元运算已被发现对确定对参数例如运行指数移动平均数的更新以及Adam和RMSProp更新规则很有用。通过利用这些基元运算作为域专用语言的一部分,可以减少训练控制器神经网络以生成有效更新规则所需的迭代数量。
在某些情况下,操作数还包括表2中的部分或全部衰减操作数。衰减操作数是基于训练迭代而变化的操作数,即取决于当前迭代之前已经完成了多少次迭代。
·退火噪声:∈t~N(0,1/(1+t)0.55)
表2
当字符串包括上述时间步骤1-5的多次迭代时,第一次迭代之后的迭代操作数还包括在先前迭代中计算出的二元函数的输出。
图200描绘了在输出序列的生成期间由控制器神经网络110针对七个示例时间步202-214执行的处理。如上所述,七个时间步202-214中的每个对应于更新规则的公式的不同部分。也就是说,每个时间步处的值是系统使用的域专用语言中的字符,用于表示更新规则的公式。
控制器神经网络110是递归神经网络,其包括嵌入层即层220和一个或多个递归神经网络层例如层230。
嵌入层被配置成接收标识给定输出序列中在先前时间步处选择的字符的数据作为输入,并处理该输入以在嵌入空间中生成字符的嵌入。嵌入是数字值的有序集合,例如浮点的向量或量化浮点值。例如,标识字符的数据可以是字符的独热编码,并且嵌入可以是连续嵌入空间中的密集向量。
一个或多个递归神经网络层接收嵌入作为输入,并处理该输入以更新递归神经网络的当前隐藏状态。例如,控制器神经网络110中的递归层可以是长短期内存(LSTM)层或门控递归单元(GRU)层。
在图2的示例中,在时间步208下,层220和230接收从前一时间步206以来的字符作为输入,并更新层230从时间步206以来的隐藏状态,以生成更新的隐藏状态232作为输出。
控制器神经网络110还包括针对输出序列中每个时间步的相应输出层,例如分别针对时间步202-214的输出层242-254。每个输出层都被配置成在时间步接收包括更新的隐藏状态的输出层输入,并针对时间步生成输出,该输出限定了时间步上可能的字符的分数分布。例如,每个输出层可以针对时间步的可能值的数量首先将输出层输入投射到适当的维度,然后将softmax应用到投射的输出层输入,以生成时间步处的字符的多个可能的值中的每一个值的相应分数。
在图2的示例中,输出层242被配置成针对在时间步202的该可能的操作数的集合中的每个操作数生成相应分数,输出层244被配置成针对在时间步204的该可能的操作数的集合中的每个操作数生成相应分数,输出层246被配置成针对在时间步206的该可能的一元函数的集合中的每个一元函数生成相应分数,输出层248被配置成针对在时间步208的该可能的一元函数的集合中的每个一元函数生成相应分数,并且输出层250被配置成针对在时间步210的这组可能的二元函数中的每个二元函数生成相应分数。因此,这组五个时间步对应于上述时间步1-5的单次迭代。下一次迭代开始于时间步212,并且输出层252被配置成针对时间步212的该可能的操作数的集合中的每个操作数生成相应分数,这通常将包括在时间步210中选择的二元函数的输出。
因此,为了生成输出序列中给定时间步的值,系统100将输出序列中前一时间步处的字符值作为输入提供给控制器神经网络,并且控制器神经网络生成时间步的输出,该输出限定了时间步上可能字符的分数分布。对于输出序列中的第一个时间步,因为没有前一时间步,所以系统100可以替代地提供预定的占位符输入。然后,系统100根据分数分布从可能的值采样,以确定输出序列中处于时间步的字符的值。
通常,每个输出序列中要包括的字符数在生成序列之前是固定的,即,要包含在字符串中的时间步1-5的迭代数量在生成序列之前是固定的。在一些实施方式中,在训练期间生成的每个输出序列具有相同数量的字符。
在其他实施方式中,系统使用随着训练的进行而增加输出序列中的迭代数量的时间表。
图3是用于更新控制器参数的当前值的示例过程300的流程图。出于方便起见,将过程300描述为由位于一个或者多个位置中的一个或者多个计算机的系统来实施。例如,神经优化器搜索系统例如图1的神经优化器搜索系统100若经过恰当编程可以执行过程300。
系统可以重复执行过程300以训练控制器神经网络,即,根据控制器参数的初始值确定控制器参数的训练值。
系统使用控制器神经网络并根据到迭代为止控制器参数的当前值生成输出序列的批次(步骤302)。该批次中的每个输出序列都限定了相应的候选更新规则。具体而言,因为,如上所述,当系统在生成输出序列中的每个值时,系统会从分数分布进行采样,因此该批次中的序列通常会有所不同,即使它们都是根据相同的控制器参数值生成的。该批次通常包括预定数量的输出序列,例如四个、五个、十个、三十个或六十个序列。
对于该批次中的每个输出序列,系统使用由输出序列限定的更新规则来训练子神经网络的实例,以执行特定的神经网络任务(步骤304)。也就是说,对于该批次中的每个输出序列,系统使用适合于任务的常规机器学习训练技术例如利用反向传播或随时间反向传播的随机梯度下降对接收到的训练数据进行训练,以执行特定的神经网络任务。在训练期间,系统使用由输出序列限定的更新规则来更新实例的参数值。如上所述,在一些实施方式中,系统使子神经网络的训练并行化,以减少控制器神经网络的总训练时间。
对于该批次中的每个输出序列,系统评估子神经网络的相应训练实例对特定神经网络任务的性能,以确定该训练实例对特定神经网络任务的性能度量(步骤306)。例如,性能度量可以是经过训练的实例对验证集的准确度,如通过适当的准确度测量所测量的。例如,准确度可以是输出为序列时的困惑测量,也可以是任务为分类任务时的分类错误率。作为另一示例,性能度量可以是实例训练的最后两个、五个或十个时期中的每个时期的实例准确度的平均值或最大值。
系统使用经过训练的实例的性能度量来调节控制器参数的当前值(步骤308)。
具体而言,系统使用强化学习技术训练控制器神经网络生成输出序列,这些输出序列导致子神经网络具有增加的性能度量,来调节当前值。更具体地说,系统训练控制器神经网络以生成使接收的奖励最大化的输出序列,该奖励是基于经过训练的实例的性能度量确定的。具体而言,给定输出序列的奖励是经过训练的实例的性能度量的函数。例如,奖励可以是以下各项之一:性能度量、性能度量的平方、性能度量的立方、性能度量的平方根等等。
在某些情况下,系统使用策略梯度技术训练控制器神经网络以最大化预期奖励。例如,策略梯度技术可以是REINFORCE技术或近端策略优化(PPO)技术。对于任意技术,系统都可以使用先前奖励的指数移动平均数作为基线,以稳定训练。
本说明书在系统和计算机程序组件中使用了术语“配置”。对于一个或多个要被配置成执行特定操作或动作的计算机的系统,意味着该系统已在其上安装了软件、固件、硬件或它们的组合,这些软件、固件、硬件或它们的组合在运行时会使系统执行这些操作或动作。对于一个或多个要被配置成执行特定操作或动作的计算机程序,意味着该一个多个程序包括指令,这些指令在被数据处理装置执行时使所述装置执行这些操作或动作。
可以在数字电子电路中、在有形地体现的计算机软件或者固件中、在计算机硬件中包括本说明书所公开的结构及其结构等效物、或者它们中的一个或者多个的组合中实施本说明书中描述的主题的实施例和功能操作。可以将本说明书中描述的主题的实施例实施为一个或者多个计算机程序,即,编码在有形的非暂时性存储介质上以由数据处理设备执行或者以控制该数据处理设备的操作的计算机程序指令的一个或者多个模块。计算机存储介质可以是机器可读存储装置、机器可读存储基板、随机或者串行存取存储器装置、或者它们中的一个或者多个的组合。可替代地或者另外,程序指令可以编码在人工生成的传播信号上,例如,机器生成的电气、光学、或者电磁信号,生成该信号是为了对信息进行编码以便传输至合适的接收器设备供数据处理设备执行。
术语“数据处理设备”指数据处理硬件并且囊括了用于处理数据的所有设备、装置和机器,包括:举例说明,可编程处理器、计算机、或者多个处理器或者计算机。该设备还可以是或可以进一步包括专用逻辑电路,例如,FPGA(现场可编程门阵列)或者ASIC(专用集成电路)。除了硬件之外,该设备可以可选地包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、或者它们中的一个或者多个的组合的代码。
可以以任何形式的编程语言来编写计算机程序也可以称为或者描述为程序、软件、软件应用、app、模块、软件模块、脚本、或者代码,包括编译语言或者解译语言、宣告式语言或者程序式语言,并且可以以任何形式来部署计算机程序,包括部署为独立的程序或者部署为模块、组件、子例程、或者适合在计算环境中使用的其它单元。程序可以但不需要与文件系统中的文件对应。可以将程序存储在保持其它程序或者数据例如存储在标记语言文档中的一个或者多个脚本的文件的一部分中,或者存储在专用于所探讨中的程序的单个文件中,或者存储在多个协作文件例如存储一个或者多个模块、子程序、或者部分代码的文件中。可以将计算机程序部署为在一个计算机上执行或者在位于一个站点处或者分布在多个站点中并且通过数据通信网络互相连接的多个计算机上执行。
在本说明书中,术语“数据库”被广泛地用于指代任何数据集合:数据不需要以任何特定方式进行结构化或根本不需要进行结构化,并且可以将数据存储在一个或多个位置处的存储装置中。因此,例如,索引数据库可以包括多个数据集合,每个数据集合可以被不同地组织和访问。
类似地,在本说明书中,术语“引擎”广泛地用于指代被编程以执行一种或多种特定功能的基于软件的系统、子系统或过程。通常,引擎将被实施为安装在一个或多个位置处的一个或多个计算机上的一个或多个软件模块或组件。在某些情况下,一个或多个计算机将专用于特定引擎;在其他情况下,可以在同一个计算机上安装并运行多个引擎。
可以由执行一个或者多个计算机程序的一个或者多个可编程计算机来执行本说明书中描述的过程和逻辑流以通过对输入数据进行操作并且生成输出来执行功能。该过程和逻辑流程还可以由专用逻辑电路例如FPGA或ASIC执行,或者由专用逻辑电路和一个或多个编程计算机的组合来执行。
适合执行计算机程序的计算机可以基于通用微处理器或者专用微处理器或者两者、或者任何其他类型的中央处理单元。通常,中央处理单元会接收来自只读存储器或者随机存取存储器或者两者的指令和数据。计算机的必要元件是用于进行或者执行指令的中央处理单元、和用于存储指令和数据的一个或者多个存储器装置。中央处理单元和存储器可以由专用逻辑电路补充或者可以并入该专用逻辑电路中。通常,计算机还将包括用于存储数据的一个或者多个海量存储装置例如磁盘、磁光盘、或者光盘,或者计算机可以操作地耦合以接收来自该海量存储装置的数据或者将数据传输至该海量存储装置或者进行两者。然而,计算机不需要具有这种装置。此外,计算机可以嵌入在另一装置中,例如,移动电话、个人数字助理(PDA)、移动音频或者视频播放器、游戏机、全球定位系统(GPS)接收器、或者便携式存储装置例如通用串行总线(USB)闪存驱动,仅举数例。
适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器装置,包括:例如,半导体存储器装置例如EPROM、EEPROM、和闪速存储器装置、磁盘例如内部硬盘或者可移动盘、磁光盘、CD-ROM盘和DVD-ROM盘。
为了提供与用户的交互,可以在计算机上实施本说明书中描述的主题的实施例,该计算机具有:用于向用户显示信息的显示装置,例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器;以及键盘和指向装置,例如,鼠标或者轨迹球,用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈,例如,视觉反馈、听觉反馈或者触觉反馈;并且可以用任何形式包括声输入、语音输入或者触觉输入来接收来自用户的输入。另外,计算机可以通过将文档发送至用户所使用的装置并且接收来自该装置的文档,例如通过响应于从web浏览器接收的请求来将网页发送至在用户的装置上的web浏览器来与用户进行交互。而且,计算机可以通过将文本消息或其他形式的消息发送到个人装置例如运行消息收发应用的智能手机并从用户接收响应消息来与用户交互。
用于实施机器学习模型的数据处理设备还可以包括例如专用硬件加速器单元,用于处理机器学习训练或生产(即推理)工作负载的公共部分和计算密集型部分。
可以使用机器学习框架例如TensorFlow框架、Microsoft Cognitive Toolkit框架、Apache Singa框架或Apache MXNet框架来实施和部署机器学习模型。
在本说明书中描述的主题的实施例可以实施在计算系统中,该计算系统包括后端部件(例如,作为数据处理器)、或者包括中间件部件(例如,应用服务器)、或者包括前端部件(例如,具有图形用户界面、web浏览器或者app的客户端计算机,通过该图形用户界面、web浏览器或者app,用户可以与本说明书中描述的主题的实施方式互动)、或者这种后端部件、中间件部件、或者前端部件的任何组合。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括局域网(LAN)和广域网(WAN),例如互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。在一些实施例中,服务器将数据例如HTML页面传输至用户装置例如为了向与装置(充当客户端)交互的用户显示数据和接收来自该用户的用户输入。可以在服务器处从装置接收在用户装置处生成的数据例如用户交互的结果。
虽然本说明书包含了许多具体实施细节,但是不应该将这些细节视为对任何发明或者可能被要求的内容的范围的限制,而是作为可以针对特定发明的特定实施例的特征的描述。在本说明书中在单独实施例的背景下描述的某些特征还可以组合地实施在单个实施例中。相反,在单个实施例的背景中描述的各种特征也可以单独地或者按照任何合适的子组合实施在多个实施例中。此外,虽然上文可能将特征描述为以某些组合来起作用并且最初甚至同样地对该特征进行了要求,但是在一些情况下可以从组合中删除来自所要求的组合的一个或多个特征。并且所要求的组合可以指向子组合或者子组合的变化。
同样,虽然在附图中按照特定顺序示出了并且在权利要求书中阐述了操作,但是不应该将其理解为需要按照所述的特定顺序或者按照相继的顺序来进行这种操作,或者需要进行所有图示的操作以实现期望的结果。在某些情况下,多任务处理和并行处理可以是有利的。此外,不应该将在上述实施例中的各种系统模块和组件的分离理解为在所有实施例中需要这种分离,并且应该理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中或者封装到多个软件产品中。
已经对本主题的特定实施例进行了描述。其它实施例在以下权利要求书的范围内。例如,可以按照不同的顺序来执行权利要求书中阐述的动作,并且仍然实现期望的结果。作为一个示例,为了获得期望的结果,在附图中描绘的过程不一定要求示出的特定顺序、或者顺序次序。在某些情况下,多任务处理和并行处理可能是有利的。
Claims (21)
1.一种方法,包括:
接收确定更新规则的请求,所述更新规则用于在训练第一神经网络执行特定神经网络任务期间更新所述第一神经网络的参数的值;以及
确定所述更新规则,包括:
使用具有多个控制器参数的控制器神经网络并且根据所述控制器参数的当前值,生成多个输出序列,每个生成的输出序列限定相应的候选更新规则;
对于每个生成的输出序列:
根据由所述生成的输出序列限定的所述候选更新规则,通过更新子神经网络的实例的参数的值,来训练所述子神经网络的相应实例执行所述特定神经网络任务,以及
评估所述子神经网络的经训练的实例对所述特定神经网络任务的性能,以确定所述子神经网络的所述经训练的实例对所述特定神经网络任务的性能度量;以及
使用所述子神经网络的所述经训练的实例的所述性能度量来调节所述控制器神经网络的所述控制器参数的所述当前值。
2.根据权利要求1所述的方法,其中,所述子神经网络具有与所述第一神经网络相同的架构。
3.根据权利要求1所述的方法,其中,所述子神经网络是被配置成执行所述特定神经网络任务但具有比所述第一神经网络更少的参数的神经网络。
4.根据权利要求1所述的方法,其中,使用所述子神经网络的所述经训练的实例的所述性能度量来调节所述控制器神经网络的所述控制器参数的所述当前值包括:
使用强化学习技术来训练所述控制器神经网络生成输出序列,所述输出序列导致子神经网络具有增加的性能度量。
5.根据权利要求4所述的方法,其中,所述强化学习技术是策略梯度技术。
6.根据权利要求5所述的方法,其中,所述强化学习技术是REINFORCE技术。
7.根据权利要求5所述的方法,其中,所述强化学习技术是信任区域策略优化技术。
8.根据权利要求7所述的方法,其中,所述信任区域策略优化技术使用先前奖励的指数移动平均数作为基线函数。
9.根据权利要求1至8中任一项所述的方法,其中,每个输出序列将所述候选更新规则的公式表示成域专用语言的字符串。
10.根据权利要求9所述的方法,其中,所述字符串用所述域专用语言描述了多个操作数和应用到所述多个操作数的一个或多个函数。
11.根据权利要求10所述的方法,其中,所述操作数选自输入基元的集合,以及其中,所述输入基元的集合包括取决于相对于训练期间所确定的参数的梯度的一个或多个基元。
12.根据权利要求9至11中任一项所述的方法,其中,所述函数中至少一个函数采用所述函数中另一函数的输出作为输入。
13.根据权利要求9至12中任一项所述的方法,其中,所述字符串包括处于多个时间步中的每个时间步处的相应字符,以及其中,处于每个时间步处的所述字符是根据所述域专用语言限定的语法而从针对所述时间步的可能字符的集合中选择的。
14.根据权利要求13所述的方法,其中,所述控制器神经网络是递归神经网络,所述递归神经网络包括:
一个或多个递归神经网络层,被配置成针对给定输出序列并且在每个时间步处:
接收在所述给定输出序列中处于在前时间步处的所述字符作为输入,并且处理所述输入以更新所述递归神经网络的当前隐藏状态;以及
针对每个时间步的相应输出层,其中,每个输出层被配置成针对所述给定输出序列:
接收包括在所述时间步处的经更新的隐藏状态的输出层输入,并且生成针对所述时间步的输出,所述输出限定在针对所述时间步的可能字符之间的分数分布。
15.根据权利要求14所述的方法,其中,使用具有多个控制器参数的控制器神经网络并且根据所述控制器参数的当前值生成多个输出序列包括,针对每个输出序列并且针对所述多个时间步中的每个时间步:
将所述输出序列中处于在前时间步的所述字符作为输入提供给所述控制器神经网络,以生成针对所述时间步的输出,所述输出限定在针对所述时间步的可能字符之间的分数分布;以及
根据所述分数分布从所述可能字符进行采样,以确定所述输出序列中处于所述时间步处的所述字符。
16.根据权利要求1至15中任一项所述的方法,还包括:
根据所述控制器参数的经调节的值,生成限定最终更新规则的最终输出序列。
17.根据权利要求16所述的方法,还包括:
使用所述最终更新规则来训练所述第一神经网络执行所述特定神经网络任务。
18.根据权利要求17所述的方法,其中,所述子神经网络比所述第一神经网络训练更少的训练时期。
19.根据权利要求1至18中任一项所述的方法,还包括:针对每个输出序列:
将所生成的输出序列添加到输出序列的队列;
确定多个工作器计算单元中的工作器计算单元已经变得可用;
确定所生成的输出序列是所述队列中的第一个;
作为响应,从所述队列移除所述输出序列,并且,使用已经变得可用的所述工作器计算单元对所述输出序列执行所述训练和所述评估;以及
在已经完成所述训练和评估之后,将所述工作器计算指定为再次可用。
20.一种包括一个或多个计算机以及一个或多个存储装置的系统,所述存储装置存储指令,所述指令在由所述一个或多个计算机执行时使所述一个或多个计算机执行根据权利要求1至19中任一项所述的相应方法的操作。
21.一种或多种计算机存储介质,所述计算机存储介质存储指令,所述指令在由一个或多个计算机执行时使所述一个或多个计算机执行根据权利要求1至19中任一项所述的相应方法的操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762492021P | 2017-04-28 | 2017-04-28 | |
US62/492,021 | 2017-04-28 | ||
PCT/US2018/030281 WO2018201151A1 (en) | 2017-04-28 | 2018-04-30 | Neural network optimizer search |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110663049A true CN110663049A (zh) | 2020-01-07 |
CN110663049B CN110663049B (zh) | 2023-12-26 |
Family
ID=62567722
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880034697.0A Active CN110663049B (zh) | 2017-04-28 | 2018-04-30 | 神经网络优化器搜索 |
Country Status (4)
Country | Link |
---|---|
US (2) | US10922611B2 (zh) |
EP (1) | EP3602419B1 (zh) |
CN (1) | CN110663049B (zh) |
WO (1) | WO2018201151A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112241123A (zh) * | 2020-10-23 | 2021-01-19 | 南京航空航天大学 | 基于深度强化学习的航空发动机加速控制方法 |
CN112308434A (zh) * | 2020-11-03 | 2021-02-02 | 中国交通通信信息中心 | 一种交通安全风险评估方法及系统 |
CN113344283A (zh) * | 2021-06-23 | 2021-09-03 | 国网黑龙江省电力有限公司 | 基于边缘智能的能源互联网新能源消纳能力评估方法 |
WO2022077343A1 (en) * | 2020-10-15 | 2022-04-21 | Robert Bosch Gmbh | Method and apparatus for weight-sharing neural network with stochastic architectures |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11386327B2 (en) * | 2017-05-18 | 2022-07-12 | Salesforce.Com, Inc. | Block-diagonal hessian-free optimization for recurrent and convolutional neural networks |
CN108427671B (zh) * | 2018-01-25 | 2021-06-25 | 腾讯科技(深圳)有限公司 | 信息转换方法和装置、存储介质及电子装置 |
US11308222B2 (en) * | 2018-03-22 | 2022-04-19 | Via Science, Inc. | Neural-network training using secure data processing |
CN110096647B (zh) * | 2019-05-10 | 2023-04-07 | 腾讯科技(深圳)有限公司 | 优化量化模型的方法、装置、电子设备及计算机存储介质 |
CN112446462A (zh) * | 2019-08-30 | 2021-03-05 | 华为技术有限公司 | 目标神经网络模型的生成方法和装置 |
CN111370074B (zh) * | 2020-02-27 | 2023-07-07 | 北京晶泰科技有限公司 | 一种分子序列的生成方法、装置和计算设备 |
US20220202348A1 (en) * | 2020-12-31 | 2022-06-30 | X Development Llc | Implementing brain emulation neural networks on user devices |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103324886A (zh) * | 2013-06-05 | 2013-09-25 | 中国科学院计算技术研究所 | 一种网络攻击检测中指纹库的提取方法和系统 |
US20160098632A1 (en) * | 2014-10-07 | 2016-04-07 | Google Inc. | Training neural networks on partitioned training data |
US20160140435A1 (en) * | 2014-11-14 | 2016-05-19 | Google Inc. | Generating natural language descriptions of images |
US20160217368A1 (en) * | 2015-01-28 | 2016-07-28 | Google Inc. | Batch normalization layers |
CN105940395A (zh) * | 2014-01-31 | 2016-09-14 | 谷歌公司 | 生成文档的矢量表示 |
US20160358073A1 (en) * | 2015-06-05 | 2016-12-08 | Google Inc. | Whitened neural network layers |
US20170024643A1 (en) * | 2015-07-24 | 2017-01-26 | Google Inc. | Continuous control with deep reinforcement learning |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9734436B2 (en) * | 2015-06-05 | 2017-08-15 | At&T Intellectual Property I, L.P. | Hash codes for images |
KR20170118520A (ko) * | 2016-04-15 | 2017-10-25 | 삼성전자주식회사 | 인터페이스 뉴럴 네트워크 |
JP6721785B2 (ja) * | 2016-09-15 | 2020-07-15 | グーグル エルエルシー | ロボット操作のための深層強化学習 |
US20200104678A1 (en) * | 2018-09-27 | 2020-04-02 | Google Llc | Training optimizer neural networks |
-
2018
- 2018-04-30 EP EP18730464.7A patent/EP3602419B1/en active Active
- 2018-04-30 CN CN201880034697.0A patent/CN110663049B/zh active Active
- 2018-04-30 WO PCT/US2018/030281 patent/WO2018201151A1/en unknown
-
2019
- 2019-10-24 US US16/662,924 patent/US10922611B2/en active Active
-
2021
- 2021-01-11 US US17/145,524 patent/US20210271970A1/en active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103324886A (zh) * | 2013-06-05 | 2013-09-25 | 中国科学院计算技术研究所 | 一种网络攻击检测中指纹库的提取方法和系统 |
CN105940395A (zh) * | 2014-01-31 | 2016-09-14 | 谷歌公司 | 生成文档的矢量表示 |
US20160098632A1 (en) * | 2014-10-07 | 2016-04-07 | Google Inc. | Training neural networks on partitioned training data |
CN106462801A (zh) * | 2014-10-07 | 2017-02-22 | 谷歌公司 | 在分区训练数据上训练神经网络 |
US20160140435A1 (en) * | 2014-11-14 | 2016-05-19 | Google Inc. | Generating natural language descriptions of images |
US20160217368A1 (en) * | 2015-01-28 | 2016-07-28 | Google Inc. | Batch normalization layers |
US20160358073A1 (en) * | 2015-06-05 | 2016-12-08 | Google Inc. | Whitened neural network layers |
US20170024643A1 (en) * | 2015-07-24 | 2017-01-26 | Google Inc. | Continuous control with deep reinforcement learning |
Non-Patent Citations (4)
Title |
---|
KE LI等: "Learning to Optimize Neural Nets", 《ARXIV》, pages 1 - 10 * |
MARCIN ANDRYCHOWICZ等: "Learning to learn by gradient descent by gradient descent", 《30TH CONFERENCE ON NEURAL INFORMATION PROCESSING SYSTEMS (NIPS 2016), BARCELONA, SPAIN.》, pages 1 - 17 * |
SACHIN RAVI等: "OPTIMIZATION AS A MODEL FOR FEW-SHOT LEARNING", 《PUBLISHED AS A CONFERENCE PAPER AT ICLR 2017》, pages 1 - 11 * |
THOMAS PHILIP RUNARSSON等: "Evolution and Design of Distributed Learning Rules", 《IEEE》, pages 59 - 63 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022077343A1 (en) * | 2020-10-15 | 2022-04-21 | Robert Bosch Gmbh | Method and apparatus for weight-sharing neural network with stochastic architectures |
CN112241123A (zh) * | 2020-10-23 | 2021-01-19 | 南京航空航天大学 | 基于深度强化学习的航空发动机加速控制方法 |
CN112241123B (zh) * | 2020-10-23 | 2022-05-03 | 南京航空航天大学 | 基于深度强化学习的航空发动机加速控制方法 |
CN112308434A (zh) * | 2020-11-03 | 2021-02-02 | 中国交通通信信息中心 | 一种交通安全风险评估方法及系统 |
CN113344283A (zh) * | 2021-06-23 | 2021-09-03 | 国网黑龙江省电力有限公司 | 基于边缘智能的能源互联网新能源消纳能力评估方法 |
CN113344283B (zh) * | 2021-06-23 | 2023-11-28 | 国网黑龙江省电力有限公司 | 基于边缘智能的能源互联网新能源消纳能力评估方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3602419B1 (en) | 2023-09-20 |
US20200057941A1 (en) | 2020-02-20 |
US10922611B2 (en) | 2021-02-16 |
US20210271970A1 (en) | 2021-09-02 |
CN110663049B (zh) | 2023-12-26 |
WO2018201151A1 (en) | 2018-11-01 |
EP3602419A1 (en) | 2020-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110663049B (zh) | 神经网络优化器搜索 | |
JP6790286B2 (ja) | 強化学習を用いたデバイス配置最適化 | |
US20230252327A1 (en) | Neural architecture search for convolutional neural networks | |
US11669744B2 (en) | Regularized neural network architecture search | |
US11829874B2 (en) | Neural architecture search | |
US10984319B2 (en) | Neural architecture search | |
US20200104678A1 (en) | Training optimizer neural networks | |
US11488067B2 (en) | Training machine learning models using teacher annealing | |
CN116702843A (zh) | 投影神经网络 | |
US20240127058A1 (en) | Training neural networks using priority queues | |
CN111652378A (zh) | 学习来选择类别特征的词汇 | |
US20220019869A1 (en) | Hardware-optimized neural 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 |