CN112513837A - 网络结构搜索方法和装置 - Google Patents

网络结构搜索方法和装置 Download PDF

Info

Publication number
CN112513837A
CN112513837A CN202080004032.2A CN202080004032A CN112513837A CN 112513837 A CN112513837 A CN 112513837A CN 202080004032 A CN202080004032 A CN 202080004032A CN 112513837 A CN112513837 A CN 112513837A
Authority
CN
China
Prior art keywords
network structure
parameters
training
determining
feedback
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.)
Pending
Application number
CN202080004032.2A
Other languages
English (en)
Inventor
蒋阳
李健兴
胡湛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SZ DJI Technology Co Ltd
Original Assignee
SZ DJI Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SZ DJI Technology Co Ltd filed Critical SZ DJI Technology Co Ltd
Publication of CN112513837A publication Critical patent/CN112513837A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种网络结构搜索方法和装置,可以提高网络结构搜索的效率。该方法包括:通过一网络结构搜索模型中的第一网络结构对第一总图进行采样以生成多个子图,并对该多个子图同时进行训练,以训练该第一总图,其中,该第一总图为根据该网络结构搜索模型对应的搜索空间进行构建的,该搜索空间包括多个操作,该第一总图包括该多个操作中至少一个操作及操作间的连线;对该多个子图中一个子图进行训练包括:利用训练集中的一批训练数据,训练该子图;根据训练该多个子图获得的参数,更新该第一总图的参数,以生成第二总图;根据该第二总图,确定该第一网络结构的反馈量;根据该第一网络结构的反馈量,更新该第一网络结构。

Description

网络结构搜索方法和装置
版权申明
本专利文件披露的内容包含受版权保护的材料。该版权为版权所有人所有。版权所有人不反对任何人复制专利与商标局的官方记录和档案中所存在的该专利文件或者该专利披露。
技术领域
本申请涉及机器学习领域,尤其涉及一种网络结构搜索方法和装置。
背景技术
机器学习算法尤其深度学习算法近年来得到快速发展与广泛应用。随着应用场景和模型结构变得越来越复杂,在应用场景中得到最优模型的难度越来越大,其中,可以使用基于权值分享的高效网络结构搜索(Efficient Neural Architecture Search viaParameter Sharing,ENAS)来提高网络结构搜索(Neural Architecture Search,NAS)的效率。尽管ENAS已经将速度提升了很多,但是由于其基于强化学习进行搜索(reinforcementlearning)是顺序计算算法,这种单节点的计算效率仍然有着明显的瓶颈,并且顺序计算会带来较大的偏见(bias),影响搜索结果鲁棒性。
发明内容
本申请提供了一种网络结构搜索方法和装置,可以提高网络结构搜索的效率。
第一方面,提供了一种网络结构搜索方法,包括:通过一网络结构搜索模型中的第一网络结构对第一总图进行采样以生成多个子图,并对所述多个子图同时进行训练,以训练所述第一总图,其中,所述第一总图为根据所述网络结构搜索模型对应的搜索空间进行构建的,所述搜索空间包括多个操作,所述第一总图包括所述多个操作中至少一个操作及操作间的连线;对所述多个子图中一个子图进行训练包括:利用训练集中的一批训练数据,训练所述子图;根据训练所述多个子图获得的参数,更新所述第一总图的参数,以生成第二总图;根据所述第二总图,确定所述第一网络结构的反馈量;根据所述第一网络结构的反馈量,更新所述第一网络结构。
第二方面,提供了一种网络结构搜索装置,用于执行上述第一方面或第一方面的任意可能的实现方式中的方法。具体地,该装置包括用于执行上述第一方面或第一方面的任意可能的实现方式中的方法的单元。
第三方面,提供了一种网络结构搜索装置,包括:存储单元和处理器,该存储单元用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行第一方面或第一方面的任意可能的实现方式中的方法。
第四方面,提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的指令。
第五方面,提供了一种包括指令的计算机程序产品,当计算机运行所述计算机程序产品的所述指时,所述计算机执行上述第一方面或第一方面的任意可能的实现方式中的网络结构搜索方法。具体地,该计算机程序产品可以运行于上述第二方面的网络结构搜索装置上。
附图说明
图1是网络结构搜索的方法的示意性流程图。
图2是相关技术的网络结构搜索的方法的原理示意图。
图3是本申请实施例的网络结构搜索的方法的总图的示意图。
图4是本申请实施例的网络结构搜索方法的示意性流程图。
图5是本申请另一实施例的网络结构搜索方法的示意性流程图。
图6是网络结构搜索的方法中单节点训练总图的示意图。
图7是本申请实施例的网络结构搜索方法中并行训练总图的示意图。
图8是本申请再一实施例的网络结构搜索方法的示意性流程图。
图9是本申请实施例的网络结构搜索的方法的原理示意图。
图10是网络结构搜索的方法中单节点确定反馈量的示意图。
图11是本申请实施例的网络结构搜索方法中并行确定反馈量的示意图。
图12是本申请实施例的网络结构搜索装置的示意性框图。
具体实施方式
下面将结合附图,对本申请实施例中的技术方案进行描述。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。
首先介绍本申请实施例涉及的相关技术及概念。
本申请涉及自动化机器学习算法(Auto Machine Learning,AutoML)技术中网络结构搜索并行化算法。可应用于包含且不限于PC端,移动端等各个场景的模型优化。
近年来,机器学习算法,尤其是深度学习算法,得到了快速发展与广泛应用。随着模型性能不断地提高,模型结构也越来越复杂。在非自动化机器学习算法中,这些结构需要机器学习专家手工设计和调试,过程非常繁复,例如,需要手动设计的有网络每层的操作(operation)和层与层之间的跳线(skip),也称为捷径(shortcut)。而且,随着应用场景和模型结构变得越来越复杂,在应用场景中得到最优模型的难度也越来越大。在这种情况下,AutoML受到学术界与工业界的广泛关注,尤其是网络结构搜索(Neural ArchitectureSearch,NAS)。
具体地,网络结构搜索是一种利用算法自动化设计神经网络模型的技术。网络结构搜索就是要搜索出神经网络模型的结构。例如,在本申请实施例中,待进行网络结构搜索的神经网络模型可以为卷积神经网络(Convolutional Neural Networks,CNN)。
下面将结合附图,详细描述网络结构搜索的方法。图1示出了一种网络结构搜索的方法l000的示意性流程图,如图1所示,该方法1000包括:S100,确定待进行网络结构搜索的神经网络模型的搜索空间,搜索空间定义了神经网络模型中每两个节点之间的操作层上的可能的多种操作;S200,根据第一网络结构训练搜索空间的总图(whole graph),总图由操作构成;S300,确定第一网络结构的反馈量(ACC),并根据该第一网络结构的反馈量更新第一网络结构。
应理解,网络结构搜索要解决的问题就是确定神经网络模型中的节点之间的操作。节点之间的操作的不同组合对应不同的网络结构。进一步地,神经网络模型中的节点可以理解为神经网络模型中的特征层。两个节点之间的操作指的是,其中一个节点上的特征数据变换为另一个节点上的特征数据所需的操作。本申请提及的操作可以为卷积操作、池化操作、或全连接操作等其他神经网络操作。可以认为两个节点之间的操作构成这两个节点之间的操作层。通常,两个节点之间的操作层上具有多个可供搜索的操作,即具有多个候选操作。网络结构搜索的目的就是在每个操作层上确定一个操作。
例如,将conv3*3,conv5*5,depthwise3*3,depthwise5*5,maxpool3*3,averagepool3*3等定义为搜索空间。也即是说,网络结构的每一层操作是在搜索空间中包括的这六个选择中采样。
如图1和图2所示,NAS在建立搜索空间后,通常利用第一网络结构在搜索空间中采样到第二网络结构(即网络结构A),然后将第二网络结构训练到收敛,以确定反馈量,最后利用反馈量更新第一网络结构。
具体地,NAS的思想是,通过一个第一网络结构在搜索空间中得到一个网络结构,然后根据该网络结构得到准确率R,将准确率R作为反馈以更新第一网络结构,第一网络结构继续优化得到另一个网络结构,如此反复进行直到得到最佳的结果。
其中,本申请实施例中的该第一网络结构可作为控制器,例如,本申请实施例中的第一网络结构可以是控制器在任意一个训练阶段的网络结构,例如,第一网络结构可以是从未更新过的控制器的网络结构,或者,第一网络结构可以是更新过若干次的控制器的网络结构。
在图2的示例中,第一网络结构通过循环神经网络(Recurrent Neural Network,RNN)构建,例如,第一网络结构可以具体通过长短期记忆人工神经网络(Long-Short TermMemory,LSTM)构建;或者,第一网络结构也可以通过卷积神经网络(Convolutional NeuralNetworks,CNN)。在此不对第一网络结构构建的具体方式进行限定。
然而,将第二网络结构训练到收敛比较耗时。因此,相关技术出现了多种解决NAS高效性的方法,例如,基于网络变换的高效网络结构搜索(Efficient ArchitectureSearch by Network Transformation),以及基于权值分享的高效网络结构搜索(Efficient Neural Architecture Search via Parameter Sharing,ENAS)。其中,基于权值分享的高效网络结构搜索应用较为广泛。
具体地,如图3所示,基于权值分享的高效网络结构搜索在使用过程中,对于网络结构中各个操作层,每个操作层均可以在搜索空间中采样,根据每一层可能的采样结果,对应可以连接成包括多种采样结果的总图,其中,搜索到的最终最优结构是总图中的其中一个子图。在图3的示例中,总图由节点间的操作连接而成,这些操作属于搜索空间。图3中加粗的带边最优结构的连接方式是总图的一个子图。
ENAS采用权值分享策略,在每次采样到一个网络结构后,例如采用第一网络结构,不再将其直接训练至收敛,而是先训练总图,即执行上述方法1000中的S200,训练一个批(batch),迭代多次后,总图最终可以收敛。请注意,图的收敛并不相当于网络结构的收敛。
在训练完所述总图后,可以将总图的参数固定(fix)住,然后训练该第一网络结构,即执行方法1000中的S300。具体地,可以对总图进行采样以得到第二网络结构,训练第二网络结构以得到反馈量,从而更新第一网络结构。
可以理解,基于权值分享的高效网络结构搜索,由于在每次搜索网络结构时,分享了可以分享的参数,可以节约时间,从而提高网络结构搜索的效率。例如,在图3的示例中,如果在搜索到节点1、节点3和节点6并对搜索到的网络结构进行训练之后,本次搜索到节点1、节点2、节点3和节点6,那么,搜索到节点1、节点3和节点6时训练的网络结构的相关参数可以应用到对本次搜索到的网络结构的训练中。这样,就可以实现通过权值分享提高效率,ENAS可以将NAS的效率提升1000倍以上。
尽管ENAS已经将速度提升了很多,但是由于基于强化学习进行搜索(reinforcement learning)是顺序计算算法,即S200中的总图训练过程和S300中的网络结构的训练过程仍然为单节点计算,比如在一块图形处理器(英语:Graphics ProcessingUnit,GPU)上计算,这使得NAS的效率有着明显的瓶颈,大大制约了搜索效率;另外,顺序计算难免带来偏见(bias),影响搜索结果鲁棒性。因此,本申请实施例提出了并行计算的方式。具体地,下面将结合附图,对本申请实施例的方法1000中的S200和S300采用并行计算的方式进行详细描述。
图4示出了本申请实施例的用于网络结构搜索中的方法1000的另一示意性流程图。如图4所示,上述方法1000中的S200可以进一步包括:S210,通过一网络结构搜索模型中的第一网络结构对第一总图进行采样以生成多个子图,并对所述多个子图同时进行训练,以训练所述第一总图,其中,所述第一总图为根据所述网络结构搜索模型对应的搜索空间进行构建的,所述搜索空间包括多个操作,所述第一总图包括所述多个操作中至少一个操作及操作间的连线;对所述多个子图中一个子图进行训练包括:利用训练集中的一批训练数据,训练所述子图;S220,根据训练所述多个子图获得的参数,更新所述第一总图的参数,以生成第二总图。对应的,方法1000中的S300可以进一步包括:S310,根据所述第二总图,确定第一网络结构的反馈量,并根据所述第一网络结构的反馈量,更新所述第一网络结构。
应理解,由网络结构搜索得到的神经网络结构一般可以通过样本数据进行训练和验证。其中,样本数据包括验证样本和训练样本,验证样本可以用于验证网络结构好不好,训练样本可以用于训练网络结构搜索方法搜索到的网络结构,例如,训练样本可以用于本申请实施例中的方法1000中的S200和S300。
在本申请实施例中,主要针对训练样本进行详细介绍,而验证样本保持不变,可以用于验证网络结构好不好。具体地,训练样本还可以划分为训练集(train)和测试集(valid),该训练集和测试集可以由用户进行划分,或者也可以由网络结构搜索装置进行划分,本申请实施例并不限于此。
在本申请实施例中,假设第一网络结构通过LSTM构建。在搜索网络结构时,训练集用于训练搜索结构的参数,如通过conv3*3、sep5*5计算出的结构的参数;而为看搜索到的网络结构的泛化能力,会把LSTM的参数在测试集上训练。也即是说,训练集用于训练搜索结构的参数,测试集用于训练LSTM的参数。而验证样本用于验证训练后搜索到的网络结构好不好。
例如,训练样本的数量为10个,将训练样本划分为数量为8个的训练集和数量为2个的测试集,数量为8个的训练集用于训练搜到的网络结构,数量为2个的测试集用于训练LSTM。
应理解,在S210中会同时进行多个子图的训练,然后再进行S310中的第一网络的训练,为了便于说明,这里以S210包括的多个子图的训练中任意一个子图的训练为例进行详细说明,其中,包括对该任意一个子图的采样过程。具体地,如图5所示,对于任意一个子图而言,该S210可以进一步包括:S211:采样步骤,即根据第一网络结构,对第一总图进行采样生成第一总图的一个子图;S212:训练步骤,即利用训练集(train)的一批(batch)训练数据训练该子图。
在本本申请实施例中,ENAS采用权值分享策略,在每次采样到一个子图后,利用训练集的一批数据训练该子图。
例如,假设第一网络结构的操作层为5层,每一层对应的搜索空间有4个可选用的操作,相当于4*5的图。网络结构搜索需要在每层选一个操作,相当于在图上进行路径优化。在现有技术中,初始时,第一网络结构在每层采样一个操作,然后把采样到的操作连起来,得到一个子图,在训练集的一批数据上训练这个子图,得到的训练结果包括更新参数,采用该更新参数更新当前的第一总图的参数以生成第二总图,然后固定该第二总图的参数;接着,再每层采样一个操作得到第二总图的一个子图,再在训练集的另一批数据上训练这个子图,得到的训练结果中包括的更新参数用于更新当前的第二总图的参数以生成第三总图,依次类推,反复循环训练多次之后,例如训练至总图收敛之后,则继续执行S300,以训练第一网络结构。
例如,如图6所示,对于任意一个的子图而言,根据第一网络结构,获取当前的总图的一个子图,利用训练集中的一批训练数据进行训练,并根据训练得到的参数,更新当前的总图的参数,以生成具有新的参数的总图。也就是说,t时刻的总图的参数Gt(例如,梯度)是基于t-1时刻已经更新过的总图Gt-1计算的,例如,可以通过公式(1)表示:
Figure BDA0002903921840000071
其中,α为系数。
考虑这种单节点计算方式,每次只执行一个子图的训练,效率较低,因此,本申请实施例提出了并行计算的方式,即在S210中,采用同时进行多个子图的训练的方式,训练根据搜索空间构建的总图。
具体地,根据本申请的实施例,通过采样确定总图的多个子图,并且同时训练该多个子图,在完成并行的多个子图的训练之后,可以根据训练得到的参数,更新当前的第一总图的参数以生成第二总图,然后固定该第二总图的参数,再并行地进行多个子图的训练,并采用训练得到的参数更新第二总图的参数以生成第三总图,依次类推,反复循环训练多次之后,例如,直至训练至第一网络结构的总图收敛后,则继续执行S300,例如执行S310,以训练第一网络结构。例如,假设每次并行进行n个子图的训练,即训练第一总图时,并行采用n批训练数据对应训练n个子图,对应得到的训练结果包括n组参数,根据该训练结果更新第一总图的参数以生成第二总图,相比于现有技术中的单个节点计算的方式,计算速度提高n倍。
具体地,如图7所示,仍然假设可以同时进行n个子图的训练,并且当前的为第一总图,那么同时进行该n个子图的训练,每次训练均对应产生一组参数(或者说训练结果),则可以获取n组参数,即图7中的集合n中可以包括n组参数;根据该n组参数,更新当前的第一总图的参数,即图7中的加粗虚线表示更新,从而生成新的总图,即生成第二总图。也就是说,相比于上述的单节点计算,原本占用多个时刻的参数G可以同时并行计算,例如,假设有n个节点同时计算,即从t-n到n时刻同时计算,那么公式(1)则变为下面的公式(2):
Figure BDA0002903921840000081
其中,α为系数。显然,t时刻不再依赖t-1时刻。
根据公式(2)可知,K个时刻的并行更新公式可以整合在一起写为:
Figure BDA0002903921840000082
因此,并行会对顺序计算带来影响,所以只能用“约等于”符号。但是并行化会大幅提高搜索效率,可以将训练过程加速n倍。下面会分析收敛影响好坏。
在训练总图的过程中,采样网络结构是具有很强的随机性,如果采用单节点计算,也就是顺序进行每次训练,根据上述公式(1)可知,第一次采样到的网络结构会影响后面的更新计算,所以基于顺序计算的搜索过程会变的不鲁棒。
但是换成并行以后,根据公式(3)可知,在n次内,先采样哪个网络结构,对结果没有影响。因此并行化以后,避免顺序计算带来的bias,搜索过程变的更加鲁棒。
可选地,本申请实施例中的参数n可以根据实际应用设置,并且可以设置为任意大于1的正整数。例如,可以考虑效率与成本,合理设置n的值,例如,设置n为10、20或者其它数值,本申请实施例并不限于此。
应理解,本申请实施例中的任意一个子图的训练产生的结果可以包括一组参数,并行n个子图的训练可以获得n组训练结果,该n组训练结果可以用于更新第一总图的参数以生成第二总图。其中,本申请实施例中的参数可以包括权重参数,即每个子图的训练的得到的训练结果包括总图中的一个或者多个操作的权重参数;或者,本申请实施例中的参数也可以包括其他类型的参数,本申请实施例并不限于此。
具体地,在S210中的并行n个子图的训练的过程中,对于第一总图中包括的任意一个操作而言,若在获得的n组参数中,存在至少两组参数中包括对应该操作的参数,也就是n组参数中存在至少两个参数对应于同一个操作,那么可以对该至少两个参数进行处理,以确定对该操作的参数的更新值。例如,根据该至少两个参数确定目标参数,并采用该目标参数更新该同一操作的参数。
可选地,根据该至少两个参数确定目标参数可以包括:将该至少两个参数的平均数确定为该目标参数。也就是说并行的n个子图的训练获得n组训练结果中存在至少两组参数,该至少两组参数中都包括对应于同一操作的参数,比如这里称该同一操作为目标操作,那么该至少两组参数中每组参数中都包括对应于该目标操作的参数,或者说该目标操作对应有至少两个参数,对应的,可以将该至少两个参数取平均值,该平均值为目标参数,通过该平均值更新该目标操作的参数。
或者,根据该至少两个参数确定目标参数还可以包括:根据该至少两个参数的权重,确定该目标参数。也就是说并行的n个子图的训练获得n组训练结果中存在至少两组参数,该至少两组参数中每组参数中都包括对应于该目标操作的参数,或者说该目标操作对应有至少两个参数,对应的,可以根据该至少两个参数的权重,确定目标参数,通过该目标参数更新该目标操作的参数,其中,每个参数的权重可以根据实际应用进行设置,例如,可以由用户进行设置,但本申请实施例并不限于此。
如图4所示,在S210与S220之后,继续执行S300中的S310。可选地,在S310之前,所述方法200或者说方法300还可以包括:根据第二总图,确定目标总图,例如,循环执行S210与S220之后,生成目标总图。具体地,在S210与S220之后,获得第二总图;之后,根据步骤S210与S220的方式,训练该第二总图,进而更新该第二总图的参数,以生成第三总图,依次类推,执行多次总图的训练,也就是循环执行步骤S210与S220多次之后,获得最后的总图,这里将其称为目标总图,例如,在循环执行步骤S210与S220多次之后,最后获得的总图收敛,则该最后获得总图为目标总图。
对应的,本申请实施例中的S310可以包括:根据该第一网络结构和该目标总图的参数,确定第一网络结构的反馈量。
可选地,该步骤S300中的S310中确定第一网络结构的反馈量还可以进一步包括:确定第一网络结构的多个反馈量,并根据第一网络结构的多个反馈量,确定第一网络结构的目标反馈量;另外,S310中的根据所述第一网络结构的反馈量,更新所述第一网络结构,可以包括:根据该目标反馈量,更新该第一网络结构。
其中,如图8所示,确定多个反馈量中的任意一个反馈量的过程可以包括:S311:根据第一网络结构,每个操作层在所述搜索空间内采样一个操作,以得到第二网络结构;S312:利用测试集的一批测试数据预测该第二网络结构,以确定第一网络结构的一个反馈量。
这样可以根据搜索到的第二网络结构在测试集上进行预测从而得到第一网络结构的一个反馈量;那么搜索到多个第二网络结构,对应可以得到多个反馈量,即反复执行多次S311与S312之后,可以获得第一网络结构的多个反馈量。为了便于描述,这里假设确定第一网络结构的m个反馈量,即反复执行m次S311与S312之后获得m个反馈量,其中,m为大于1的正整数。
在本申请实施例中,根据S312,在搜索到第二网络结构后,可将搜索到的第二网络结构在测试集上预测,以得到反馈量来更新第一网络结构,而并非直接用测试集训练LSTM。
具体地,如图9所示,每个操作层对应于长短期记忆人工神经网络(LSTM)的一个时间步(timestep),对于每个时间步,长短期记忆人工神经网络的细胞(Cell)输出一个隐状态(hidden state),对应的S311还可以进一步包括:将隐状态映射为特征向量,特征向量的维度与每个操作层上的操作数量相同;根据特征向量在每个操作层采样一个操作以得到网络结构。
这样可以实现针对每个操作层,在搜索空间内采样一个操作以得到第二网络结构。例如,一共要搜索一个20层的网络,不考虑跳线,需要20个时间步。
如图9所示,实线箭头表示时间步(timestep),时间1表示LSTM的第一个Cell,时间2表示LSTM的第二个Cell……以此类推。方块conv3*3表示在模型中该层的操作,圆形表示操作层与操作层之间的连接关系。
可以理解,由于网络结构的计算有先后顺序,将计算先后的关系的逻辑关系映射到LSTM上,就是图9中一个小方块从左往右,对应的每一个时间的LSTM的cell的状态。
具体地,在时间1下,cell输出的隐状态经过计算得到卷积conv3×3,conv3×3作为时间2下cell的输入层,时间1下cell输出的隐状态也作为时间2下cell的输入,计算得到圆圈1。
同理,圆圈1作为时间3下cell的输入,时间2下cell输出的隐状态也作为时间3的输入,计算得到卷积sep5×5……以此类推。
进一步地,根据特征向量在每个操作层采样一个操作以得到网络结构,包括:
将特征向量进行归一化(softmax)以得到每个操作层的每个操作的概率;
根据概率在每个操作层采样一个操作以得到网络结构。
如此,实现根据特征向量在每个操作层采样一个操作以得到网络结构。具体地,在图9所示的例子中,对LSTM的cell输出的隐状态进行编码(encoding)操作,将其映射维度为6的向量(vector),该向量经过归一化指数函数(softmax),变为概率分布,依据此概率分布进行采样,得到当前层的操作。以此类推最终得到一个网络结构。可以理解,在此例子中,只有一个输入,一共包含六种操作(3×3卷积,5×5卷积,3×3depthwise-separable卷积,5×5depthwise-separable卷积,max pooling,3×3average pooling),向量的维度与搜索空间对应,6是指搜索空间有6个操作可选择。
可选地,在本申请实施例中,训练第一网络结构的S310中的S311与S312可以循环m次,即反复执行S311和S312m次,进而获得第一网络结构的m个反馈量,并根据该m个反馈量,确定目标反馈量,以更新第一网络结构。
可以理解,在m次循环中的每次循环时,都可以采样到一个第二网络结构,这个网络结构在测试集的一批训练数据上进行测试后,可以得到一个关于第一网络结构的反馈量,循环进行足够次数后可以获得第一网络结构对应数量的反馈量。
可选地,该m的值可以根据实际应用进行设置,例如,可以设置该m为20,即第一网络结构的反馈量为20个,或者,m也可以设置为10、15或其他数值。在此不对m的具体数值进行限定。
可选地,第一网络结构可以是根据长短期记忆网络模型来构建,则步骤S310可以包括:根据第一网络结构的m个反馈量、长短期记忆人工神经网络的参数以及采样到的操作,以实现S310中的确定第一网络结构的目标反馈量。具体地,可以通过下面的公式(4)实现:
Figure BDA0002903921840000121
其中,Rk为第k个所述反馈量;θc为所述长短期记忆人工神经网络的参数;at为在第t个所述操作层采样到的所述操作;P(at|a(t-1):1;θc)为采样到所述操作的概率;m是所述反馈量的总数量,即m为上述的步骤S311与S312的循环次数;T为所述第一网络结构预测的超参数的数量。这样可以实现根据多个反馈量的平均值更新第一网络结构。
可选地,T包括操作层和跳线,或者,还可能包含其他想要优化的超参数。在此不对T的具体内容进行限定。
应理解,在现有技术中,通常采用单节点计算方式,即上述步骤S311与S312执行一次,获得一个反馈量,然后执行下一次,再获得一个反馈量,直至循环执行S311和S312共计m次,共获得m个反馈量,以便于根据公式(4)实现对第一网络结构的更新。
例如,如图10所示,第一网络结构在执行S200之后,完成对总图的训练,进而继续执行S300中的S311与S312,并反复循环执行m次,对应确定m个反馈量,即图10中的集合m中包括m个反馈量,再根据公式(4),实现对第一网络结构的更新。其中,对于其中t时刻获得的更新后的第一网络结构的参数Ct是基于更新前的t-1时刻的第一网络结构的参数Ct-1计算的,即表示为下面的公式(5)
Ct=Ct-1-βΔCt-1 (5)
其中,β为系数。
由于这种单节点计算方式,每次只能计算获得一个反馈量,效率较低,因此可以考虑并行计算的方式,以提高效率,即同时执行多次S311与S312。
应理解,根据公式(4)可知,需要确定m个反馈量,那么该m个反馈量中的全部或者部分可以并行确定。具体地,可以同时执行多次S311与S312,这里假设执行m'次,即根据第一网络结构,同时确定m'个第二网络结构;采用测试集中的m'批测试数据,分别预测m'个第二网络结构,进而确定m'个反馈量。这样可以将更新第一网络结构的步骤加速m'倍;并且,采用这种方式更新第一网络结构,同样适用于上述公式(5),对更新结果没有影响。
可选地,m'可以根据实际应用设置为任意大于1的正整数。例如,考虑到根据公式(4),需要确定m个反馈量,那么可以设置m'与m相等;或者考虑其他因素,也可以设置m'满足:m为的m'整数倍,本申请实施例并不限于此。
具体地,如图11所示,假设m'设置为与m相等,那么利用测试集中的数据,可以同时确定m个反馈量,即图11中的集合m可以获得m个反馈量,根据公式(4)取该m个反馈量的均值,以更新第一网络结构。采用这种方式更新,相比于图10,速度可以提升m倍。
在本申请实施例中,步骤S310中根据第一网络结构的反馈量更新第一网络结构也可以循环执行多次,也即是说,在S200之后,在训练第一网络结构步骤S310执行时,可以反复更新第一网络结构多次,这样能够减少采样带来的随机性优化,从而实现第一网络结构的优化。其中,该循环的次数可以根据实际应用进行设置,例如可以设置为50次,或者也可以设置为10,20,30或其他数值,在此不对循环次数的具体数值进行限定。
在本申请实施例中,方法1000中的S200和S300也可以反复执行多次,即对总图的训练和对第一网络结构的更新是多次迭代进行的,该迭代次数可以根据实际应用进行设置,例如可以设置为300次或者200次,或者也可以设置为其他数值,最终获得效果较好的第二网络结构。
因此,本申请实施例的网络结构搜索方法,将顺序计算的ENAS拆分为并行计算算法,例如,对于总图的训练过程和网络结构的训练过程都可以采用并行计算的方式,从而大幅提升网络结构搜索效率,同时可缓解顺序计算带来的bias。可针对移动端、服务器端等任何场景的模型设计进行更加高效网络结构设计。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
上文中结合图1至图11,详细描述了根据本申请实施例的网络结构搜索方法,下面将结合图12,描述根据本申请实施例的网络结构搜索装置。
如图12所示,根据本申请实施例的网络结构搜索装置400包括:多个处理器410和存储器420,其中,存储器420存储有一个或多个程序,在程序被处理器执行的情况下,使得多个处理器410用于执行以下步骤:通过一网络结构搜索模型中的第一网络结构对第一总图进行采样以生成多个子图,并对所述多个子图同时进行训练,以训练所述第一总图,其中,所述第一总图为根据所述网络结构搜索模型对应的搜索空间进行构建的,所述搜索空间包括多个操作,所述第一总图包括所述多个操作中至少一个操作及操作间的连线;对所述多个子图中一个子图进行训练包括:利用训练集中的一批训练数据,训练所述子图;根据训练所述多个子图获得的参数,更新所述第一总图的参数,以生成第二总图;根据所述第二总图,确定所述第一网络结构的反馈量;根据所述第一网络结构的反馈量,更新所述第一网络结构。
应理解,本申请实施了的多个处理器410中的每个处理器可以用于生成多个子图中的一个子图,还可以用于对所述一个子图进行训练,即本申请实施例的多个处理器410可以实现对应的多个子图的同时训练,或者说并行训练多个子图。
可选的,作为一个实施例,所述多个处理器410中的至少一个处理器可以用于:若训练所述多个子图获得的参数中存在至少两个参数对应所述第一总图中的同一操作,根据所述至少两个参数确定目标参数,并采用所述目标参数更新所述同一操作的参数。
可选的,作为一个实施例,所述至少一个处理器具体可以用于:将所述至少两个参数的平均数确定为所述目标参数。
可选的,作为一个实施例,所述至少一个处理器具体可以用于:根据所述至少两个参数的权重,确定所述目标参数。
可选的,作为一个实施例,所述多个处理器410用于:在所述训练所述第一总图,以及所述更新所述第一总图的参数以生成第二总图,循环执行多次之后,生成目标总图;根据所述第一网络结构和所述目标总图的参数,确定所述第一网络结构的反馈量。
可选的,作为一个实施例,所述多个处理器410用于:确定所述第一网络结构的m个反馈量,其中,m为大于1的正整数,确定所述m个反馈量中的任意一个反馈量包括:根据第一网络结构,每个操作层在所述搜索空间采样一个操作,以得到第二网络结构,并利用测试集中的一批测试数据,预测所述第二网络结构,以确定所述第一网络结构的一个反馈量;根据所述第一网络结构的m个反馈量,确定所述第一网络结构的目标反馈量;所述根据所述第一网络结构的反馈量,更新所述第一网络结构,包括:根据所述目标反馈量,更新所述第一网络结构。
应理解,该m个反馈量可以由多个处理器410中的不同的或者相同的处理器确定,本申请实施例并不限于此。
可选的,作为一个实施例,所述多个处理器410用于:同时确定所述第一网络结构的m'个反馈量,1<m'≤m,m'为正整数。即可以通过多个处理器410中每个处理器对应确定一个反馈量,多个处理器410中的m'个处理器可以同时确定出m'个反馈量。
可选的,作为一个实施例,所述第一网络结构是根据长短期记忆网络模型来构建,所述多个处理器410用于:根据所述第一网络结构的m个反馈量、所述长短期记忆人工神经网络的参数以及采样到的操作,确定所述第一网络结构的目标反馈量。例如,可以根据上述公式(4)确定所述第一网络结构的目标反馈量。
可选的,作为一个实施例,所述多个处理器410确定所述第一网络结构的反馈量,以及所述更新所述第一网络结构,循环执行多次。
应理解,本申请实施例中的多个处理器410的数量可以是两个或者多于两个的任意数量。在该多个处理器410中,本申请实施例的网络结构搜索方法的步骤流程可以由不同的处理器410分别执行,例如可以由不同的处理器410分别执行步骤S200和步骤S300。
可选地,本申请实施例的网络结构搜索装置400还可以包括通信接口430,用于将装置400处理完成的数据输出,和/或,将要处理的数据从外部设备输入至装置400。例如,多个处理器410中的至少一个处理器可以用于控制通信接口430输入和/输出数据。
在本申请的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
应理解,本申请各实施例的装置可以基于存储器和处理器实现,各存储器用于存储用于执行本申请个实施例的方法的指令,处理器执行上述指令,使得装置执行本申请各实施例的方法。
应理解,本申请实施例中提及的处理器可以是中央处理单元(CentralProcessing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中提及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
需要说明的是,当处理器为通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件时,存储器(存储模块)集成在处理器中。
应注意,本文描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本申请实施例还提供一种计算机可读存储介质,其上存储有指令,当指令在计算机上运行时,使得计算机执行上述各方法实施例的方法。
本申请实施例还提供一种计算设备,该计算设备包括上述计算机可读存储介质。
本申请实施例可以应用在飞行器,尤其是无人机领域。
应理解,本申请各实施例的电路、子电路、子单元的划分只是示意性的。本领域普通技术人员可以意识到,本文中所公开的实施例描述的各示例的电路、子电路和子单元,能够再行拆分或组合。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(Digital SubscriberLine,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,高密度数字视频光盘(Digital Video Disc,DVD))、或者半导体介质(例如,固态硬盘(Solid State Disk,SSD))等。
应理解,本申请各实施例均是以总位宽为16位(bit)为例进行说明的,本申请各实施例可以适用于其他的位宽。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
应理解,在本申请实施例中,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (18)

1.一种网络结构搜索方法,其特征在于,包括:
通过一网络结构搜索模型中的第一网络结构对第一总图进行采样以生成多个子图,并对所述多个子图同时进行训练,以训练所述第一总图,其中,所述第一总图为根据所述网络结构搜索模型对应的搜索空间进行构建的,所述搜索空间包括多个操作,所述第一总图包括所述多个操作中至少一个操作及操作间的连线;对所述多个子图中一个子图进行训练包括:利用训练集中的一批训练数据,训练所述子图;
根据训练所述多个子图获得的参数,更新所述第一总图的参数,以生成第二总图;
根据所述第二总图,确定所述第一网络结构的反馈量;
根据所述第一网络结构的反馈量,更新所述第一网络结构。
2.根据权利要求1所述的方法,其特征在于,所述根据训练所述多个子图获得的参数,包括:
若训练所述多个子图获得的参数中存在至少两个参数对应所述第一总图中的同一操作,根据所述至少两个参数确定目标参数,并采用所述目标参数更新所述同一操作的参数。
3.根据权利要求2所述的方法,其特征在于,所述根据所述至少两个参数确定目标参数,包括:
将所述至少两个参数的平均数确定为所述目标参数。
4.根据权利要求2所述的方法,其特征在于,所述根据所述至少两个参数确定目标参数,包括:
根据所述至少两个参数的权重,确定所述目标参数。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述根据所述第二总图,确定所述第一网络结构的反馈量,包括:
在所述训练所述第一总图,以及所述更新所述第一总图的参数以生成第二总图,循环执行多次之后,生成目标总图;
根据所述第一网络结构和所述目标总图的参数,确定所述第一网络结构的反馈量。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述确定所述第一网络结构的反馈量,包括:
确定所述第一网络结构的m个反馈量,其中,m为大于1的正整数,确定所述m个反馈量中的任意一个反馈量包括:根据第一网络结构,每个操作层在所述搜索空间中采样一个操作,以得到第二网络结构,并利用测试集中的一批测试数据,预测所述第二网络结构,以确定所述第一网络结构的一个反馈量;
根据所述第一网络结构的m个反馈量,确定所述第一网络结构的目标反馈量;
所述根据所述第一网络结构的反馈量,更新所述第一网络结构,包括:
根据所述目标反馈量,更新所述第一网络结构。
7.根据权利要求6所述的方法,其特征在于,所述确定所述第一网络结构的m个反馈量,包括:
同时确定所述第一网络结构的m'个反馈量,1<m'≤m,m'为正整数。
8.根据权利要求6或7所述的方法,其特征在于,所述第一网络结构是根据长短期记忆网络模型来构建,
所述根据所述第一网络结构的m个反馈量,确定所述第一网络结构的目标反馈量,包括:
根据所述第一网络结构的m个反馈量、所述长短期记忆人工神经网络的参数以及采样到的操作,确定所述第一网络结构的目标反馈量。
9.根据权利要求1至8中任一项所述的方法,其特征在于,所述确定所述第一网络结构的反馈量,以及所述更新所述第一网络结构,循环执行多次。
10.一种网络结构搜索装置,其特征在于,包括多个处理器和存储器,所述存储器存储有一个或多个程序,在所述程序被所述多个处理器执行的情况下,使得所述多个处理器分别用于:
通过一网络结构搜索模型中的第一网络结构对第一总图进行采样以生成多个子图,并对所述多个子图同时进行训练,以训练所述第一总图,其中,所述第一总图为根据所述网络结构搜索模型对应的搜索空间进行构建的,所述搜索空间包括多个操作,所述第一总图包括所述多个操作中至少一个操作及操作间的连线;对所述多个子图中一个子图进行训练包括:利用训练集中的一批训练数据,训练所述子图;
根据训练所述多个子图获得的参数,更新所述第一总图的参数,以生成第二总图;
根据所述第二总图,确定所述第一网络结构的反馈量;
根据所述第一网络结构的反馈量,更新所述第一网络结构。
11.根据权利要求10所述的装置,其特征在于,所述多个处理器中的至少一个处理器用于:
若训练所述多个子图获得的参数中存在至少两个参数对应所述第一总图中的同一操作,根据所述至少两个参数确定目标参数,并采用所述目标参数更新所述同一操作的参数。
12.根据权利要求11所述的装置,其特征在于,所述至少一个处理器用于:
将所述至少两个参数的平均数确定为所述目标参数。
13.根据权利要求11所述的装置,其特征在于,所述至少一个处理器用于:
根据所述至少两个参数的权重,确定所述目标参数。
14.根据权利要求10至13中任一项所述的装置,其特征在于,所述多个处理器用于:
在所述训练所述第一总图,以及所述更新所述第一总图的参数以生成第二总图,循环执行多次之后,生成目标总图;
根据所述第一网络结构和所述目标总图的参数,确定所述第一网络结构的反馈量。
15.根据权利要求10至14中任一项所述的装置,其特征在于,所述多个处理器用于:
确定所述第一网络结构的m个反馈量,其中,m为大于1的正整数,确定所述m个反馈量中的任意一个反馈量包括:根据第一网络结构,每个操作层在所述搜索空间采样一个操作,以得到第二网络结构,并利用测试集中的一批测试数据,预测所述第二网络结构,以确定所述第一网络结构的一个反馈量;
根据所述第一网络结构的m个反馈量,确定所述第一网络结构的目标反馈量;
所述根据所述第一网络结构的反馈量,更新所述第一网络结构,包括:
根据所述目标反馈量,更新所述第一网络结构。
16.根据权利要求15所述的装置,其特征在于,所述多个处理器用于:
同时确定所述第一网络结构的m'个反馈量,1<m'≤m,m'为正整数。
17.根据权利要求15或16所述的装置,其特征在于,所述第一网络结构是根据长短期记忆网络模型来构建,
所述多个处理器用于:
根据所述第一网络结构的m个反馈量、所述长短期记忆人工神经网络的参数以及采样到的操作,确定所述第一网络结构的目标反馈量。
18.根据权利要求10至17中任一项所述的装置,其特征在于,所述多个处理器确定所述第一网络结构的反馈量,以及所述更新所述第一网络结构,循环执行多次。
CN202080004032.2A 2020-01-22 2020-01-22 网络结构搜索方法和装置 Pending CN112513837A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/073674 WO2021146977A1 (zh) 2020-01-22 2020-01-22 网络结构搜索方法和装置

Publications (1)

Publication Number Publication Date
CN112513837A true CN112513837A (zh) 2021-03-16

Family

ID=74953034

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080004032.2A Pending CN112513837A (zh) 2020-01-22 2020-01-22 网络结构搜索方法和装置

Country Status (2)

Country Link
CN (1) CN112513837A (zh)
WO (1) WO2021146977A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114826921B (zh) * 2022-05-05 2024-05-17 苏州大学应用技术学院 基于抽样子图的网络资源动态分配方法、系统及介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190286984A1 (en) * 2018-03-13 2019-09-19 Google Llc Neural architecture search by proxy
CN110175671B (zh) * 2019-04-28 2022-12-27 华为技术有限公司 神经网络的构建方法、图像处理方法及装置
CN110428046B (zh) * 2019-08-28 2023-12-15 腾讯科技(深圳)有限公司 神经网络结构的获取方法及装置、存储介质

Also Published As

Publication number Publication date
WO2021146977A1 (zh) 2021-07-29

Similar Documents

Publication Publication Date Title
US20210319362A1 (en) Incentive control for multi-agent systems
US20220147877A1 (en) System and method for automatic building of learning machines using learning machines
US11681913B2 (en) Method and system with neural network model updating
US11544542B2 (en) Computing device and method
US20220156508A1 (en) Method For Automatically Designing Efficient Hardware-Aware Neural Networks For Visual Recognition Using Knowledge Distillation
CN111401545A (zh) 神经网络优化装置和神经网络优化方法
Sarkar et al. An algorithm for DNA read alignment on quantum accelerators
US20200134453A1 (en) Learning curve prediction apparatus, learning curve prediction method, and non-transitory computer readable medium
CN112513837A (zh) 网络结构搜索方法和装置
CN111656365A (zh) 网络结构搜索的方法及装置、计算机存储介质和计算机程序产品
Zhou et al. An efficient local search for partial vertex cover problem
KR102561799B1 (ko) 디바이스에서 딥러닝 모델의 레이턴시를 예측하는 방법 및 시스템
CN114595641A (zh) 组合优化问题的求解方法和系统
KR102511225B1 (ko) 인공지능 추론모델을 경량화하는 방법 및 시스템
CN111684471A (zh) 网络结构搜索的方法及装置、计算机存储介质和计算机程序产品
CN117561502A (zh) 一种确定失效原因的方法及装置
CN112734008A (zh) 分类网络构建方法以及基于分类网络的分类方法
CN111684472A (zh) 网络结构搜索的方法及装置、计算机存储介质和计算机程序产品
US20220222538A1 (en) Method and apparatus with neural network processing
CN112106077A (zh) 网络结构搜索的方法、装置、存储介质和计算机程序产品
US20240012726A1 (en) Methods and electronic device for repairing memory element in memory device
US20230351146A1 (en) Device and computer-implemented method for a neural architecture search
CN113159100B (zh) 电路故障诊断方法、装置、电子设备和存储介质
US20240184630A1 (en) Device and method with batch normalization
US20210365787A1 (en) Pseudo-rounding in artificial neural networks

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