CN111105029B - 神经网络的生成方法、生成装置和电子设备 - Google Patents

神经网络的生成方法、生成装置和电子设备 Download PDF

Info

Publication number
CN111105029B
CN111105029B CN201811269254.8A CN201811269254A CN111105029B CN 111105029 B CN111105029 B CN 111105029B CN 201811269254 A CN201811269254 A CN 201811269254A CN 111105029 B CN111105029 B CN 111105029B
Authority
CN
China
Prior art keywords
neural network
network
selecting
subunit
neural
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
Application number
CN201811269254.8A
Other languages
English (en)
Other versions
CN111105029A (zh
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.)
Beijing Horizon Robotics Technology Research and Development Co Ltd
Original Assignee
Beijing Horizon Robotics Technology Research and Development 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 Beijing Horizon Robotics Technology Research and Development Co Ltd filed Critical Beijing Horizon Robotics Technology Research and Development Co Ltd
Priority to CN201811269254.8A priority Critical patent/CN111105029B/zh
Priority to US16/666,344 priority patent/US11195098B2/en
Publication of CN111105029A publication Critical patent/CN111105029A/zh
Application granted granted Critical
Publication of CN111105029B publication Critical patent/CN111105029B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • 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
    • G06N3/086Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • G06F18/24137Distances to cluster centroïds
    • G06F18/2414Smoothing the distance, e.g. radial basis function networks [RBFN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/285Selection of pattern recognition techniques, e.g. of classifiers in a multi-classifier system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • 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
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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/044Recurrent networks, e.g. Hopfield networks
    • 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/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Physiology (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Abstract

公开了一种神经网络的生成方法、生成装置和电子设备。该方法包括:通过进化算法从神经网络框架中获得最优神经网络和最劣神经网络;通过强化学习算法从所述最优神经网络获得优化神经网络;通过将所述优化神经网络加入所述神经网络框架并从所述神经网络框架中删除所述最劣神经网络来更新所述神经网络框架;以及,从更新后的神经网络框架中确定最终生成的神经网络。这样,可以通过结合进化算法和强化学习算法来从神经网络框架优化和更新神经网络,从而快速和稳定地自动生成神经网络结构。

Description

神经网络的生成方法、生成装置和电子设备
技术领域
本申请涉及深度学习和神经网络领域,且更为具体地,涉及一种神经网络的生产方法、生成装置和电子设备。
背景技术
目前,深度学***。
针对上述应用领域,设计出了各种不同的神经网络结构,以解决各领域中的特定问题。但是,这些神经网络结构都是人类专家手工设计的,需要大量的人工先验经验和大量的实验验证,且需要耗费大量的计算资源和时间来不断尝试。此外,人工设计的神经网络结构还无法针对不同任务进行自适应的变换,可迁移性差。
因此,期望提供的神经网络的生成方案。
发明内容
为了解决上述技术问题,提出了本申请。本申请的实施例提供了一种神经网络的生成方法、生成装置和电子设备,其通过结合进化算法和强化学习算法来从神经网络框架优化和更新神经网络,从而快速和稳定地自动生成神经网络结构。
根据本申请的一个方面,提供了一种神经网络的生成方法,包括:通过进化算法从神经网络框架中获得最优神经网络和最劣神经网络;通过强化学习算法从所述最优神经网络获得优化神经网络;通过将所述优化神经网络加入所述神经网络框架并从所述神经网络框架中删除所述最劣神经网络来更新所述神经网络框架;以及,从更新后的神经网络框架中确定最终生成的神经网络。
根据本申请的另一方面,提供了一种神经网络的生成装置,包括:进化单元,用于通过进化算法从神经网络框架中获得最优神经网络和最劣神经网络;强化学习单元,用于通过强化学习算法从所述进化单元获得的最优神经网络获得优化神经网络;更新单元,用于通过将所述强化学习单元获得的所述优化神经网络加入所述神经网络框架并从所述神经网络框架中删除所述进化单元获得的所述最劣神经网络来更新所述神经网络框架;以及,选择单元,用于从所述更新单元更新后的神经网络框架中确定最终生成的神经网络。
根据本申请的再一方面,提供了一种电子设备,包括:处理器;以及,存储器,在所述存储器中存储有计算机程序指令,所述计算机程序指令在被所述处理器运行时使得所述处理器执行如上所述的神经网络的生成方法。
根据本申请的又一方面,提供了一种计算机可读介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行如上所述的神经网络的生成方法。
与现有技术相比,本申请提供的神经网络的生成方法、生成装置和电子设备可以通过进化算法从神经网络框架中获得最优神经网络和最劣神经网络;通过强化学习算法从所述最优神经网络获得优化神经网络;通过将所述优化神经网络加入所述神经网络框架并从所述神经网络框架中删除所述最劣神经网络来更新所述神经网络框架;以及,从更新后的神经网络框架中确定最终生成的神经网络。这样,由于通过强化学习算法替代进化算法中的随机变异,来基于每次的进化结果的反馈而更新神经网络框架,可以提高神经网络的生成速度和稳定性。
附图说明
通过结合附图对本申请实施例进行更详细的描述,本申请的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本申请实施例的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1图示了根据本申请实施例的神经网络的生成方法的流程图。
图2图示了根据本申请实施例的CIFAR-10神经网络架构的示意图。
图3图示了根据本申请实施例的ImageNet神经网络架构的示意图。
图4图示了根据本申请实施例的进化算法的网络结构的示意图。
图5图示了根据本申请实施例的通过进化算法获得最优和最劣神经网络的过程的流程图。
图6图示了根据本申请实施例的强化学习算法的网络结构的示意图。
图7图示了根据本申请实施例的通过强化学习算法优化最优神经网络的过程的流程图。
图8图示了神经网络架构中的每个网络结构模块的示意图。
图9图示了根据本申请实施例的神经网络的生成装置的框图。
图10图示了根据本申请实施例的电子设备的框图。
具体实施方式
下面,将参考附图详细地描述根据本申请的示例实施例。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是本申请的全部实施例,应理解,本申请不受这里描述的示例实施例的限制。
申请概述
如上所述,针对深度学习中的神经网络的设计问题,目前主要采用自适应的网络结构搜索的方式。例如,针对计算机视觉中经典的图像分类任务,一种方法NAS(NeuralArchitecture Search:神经架构搜索)需要在800块GPU上运行28天的时间,另一种方法NasNet则需要消耗500块GPU,并花费4天时间。这样的计算资源和时间成本在很多情况下是无法接受的。
针对上述技术问题,本申请的基本构思是结合进化算法和强化学习算法,以强化学习算法替代进化算法中的随机变异来对进化算法中选出的最优神经网络进行优化,并基于每次的进化结果的反馈更新神经网络框架。
具体地,本申请提供了一种神经网络的生成方法、生成装置和电子设备,其首先通过进化算法从神经网络框架中获得最优神经网络和最劣神经网络,然后通过强化学习算法从所述最优神经网络获得优化神经网络,再通过将所述优化神经网络加入所述神经网络框架并从所述神经网络框架中删除所述最劣神经网络来更新所述神经网络框架,最后从更新后的神经网络框架中确定最终生成的神经网络。
这样,通过强化学习算法优化进化算法所获得的最优神经网络代替进化算法中的随机变异,更加符合人类专家设计神经网络结构的思路。并且,基于每次的进化结果的反馈而更新神经网络框架而不是强硬地逐层选择,可以提高神经网络的生成速度。此外,由于传统的进化算法采用随机变异的方式,当有害变异积攒到一定程度时,进化就会停滞甚至崩溃,本申请能够提高神经网络的生成稳定性。
在介绍了本申请的基本原理之后,下面将参考附图来具体介绍本申请的各种非限制性实施例。
示例性方法
图1图示了根据本申请实施例的神经网络的生成方法的流程图。
如图1所示,根据本申请实施例的神经网络的生成方法包括如下步骤。
在步骤S110中,通过进化算法从神经网络框架中获得最优神经网络和最劣神经网络。
这里,在本申请实施例中,所述神经网络框架中可以包括针对不同应用领域设计的各种神经网络结构,例如CIFAR-10神经网络架构,如图2所示,ImageNet神经网络架构,如图3所示。其中,图2图示了根据本申请实施例的CIFAR-10神经网络架构的示意图,图3图示了根据本申请实施例的ImageNet神经网络架构的示意图。
在本申请实施例中,每个神经网络结构由多个神经网络模块组成,这是因为在神经网络结构的生成过程中,如果没有任何限制条件,直接对网络结构进行搜索,那么会由于搜索空间过大,导致搜索耗时过大,致使搜索陷入困境,无法得到想要的结果。
因此,本申请实施例中将需要搜索的网络结构规范化成为这种由模块组成的结构,从而在搜索过程中,不需要搜索整体的网络结构,将搜索空间限制到模块内,从而实现合理的加速。针对不同的任务或数据集,可以通过组装不同数量的模块来从而实现对网络深度和模型大小的控制。
并且,在本申请实施例中,所述神经网络既可以是卷积神经网络(CNN),也可以是其它神经网络,例如循环神经网络(RNN)。
这里,进化算法是将单个神经网络结构当作种群中的个体,逐步实现神经网络结构的变异、淘汰、进化,从而实现神经网络结构的逐步优化。可以以不同的评价指标来确定最优神经网络和最劣神经网络,例如,在本申请实施例中,通过神经网络的精度来进行评价,即,具有最优精度的神经网络为最优神经网络,且具有最劣精度的神经网络为最劣神经网络。进化算法的其它细节将在下文详细描述。
在步骤S120中,通过强化学习算法从所述最优神经网络获得优化神经网络。在本申请实施例中,强化学习算法用于一层一层地对神经网络结构中每层的类别和连接方式进行选择,以优化神经网络结构,本申请实施例中的强化学习算法的细节将在下文详细描述。
在步骤S130中,将所述优化神经网络加入所述神经网络框架并从所述神经网络框架中删除所述最劣神经网络来更新所述神经网络框架。
也就是说,在步骤S120中通过强化学习算法优化所述最优神经网络以得到优化神经网络之后,将其与在步骤S110中获得的最劣神经网络的结果一起返回到所述神经网络框架,从而通过加入所述优化神经网络并删除所述最劣神经网络来更新所述神经网络框架。
最后,在步骤S140中,从更新后的神经网络框架中确定最终生成的神经网络。
因此,在根据本申请实施例的神经网络的生成方法中,通过进化算法基于每次的进化结果的反馈而更新神经网络框架而不是强硬地逐层选择,可以提高神经网络的生成速度。
此外,由于传统的进化算法采用随机变异的方式,当有害变异积攒到一定程度时,进化就会停滞甚至崩溃,相对地,在本申请实施例中,通过强化学习算法优化进化算法所获得的最优神经网络代替进化算法中的随机变异,更加符合人类专家设计神经网络结构的思路,且能够提高神经网络的生成稳定性。
下面,将结合图4和图5详细说明根据本申请实施例的进化算法。
图4图示了根据本申请实施例的进化算法的网络结构的示意图。图5图示了根据本申请实施例的通过进化算法获得最优和最劣神经网络的过程的流程图。如图5所示,在上述图1所示实施例的基础上,步骤S110可包括如下步骤:S210,获取包括随机初始化的N个输入神经网络的神经网络框架,其中N是大于1的整数;S220,从所述N个输入神经网络随机选择M个神经网络样本,其中M是大于1的整数;S230,训练所述M个神经网络样本以获得所述M个神经网络样本的精度;以及S240,基于所述M个神经网络样本的精度获得所述最优神经网络和所述最劣神经网络。
因此,针对所获得的最优神经网络,例如精度最高的神经网络,通过强化学习算法进行优化并加入到种群中,而对于所获得的最劣神经网络,例如精度最低的神经网络,将其从种群中删除,从而更新种群。
此外,在本申请实施例中,可以通过迭代方式来更新所述神经网络框架。也就是说,可以通过迭代方式执行上述步骤S110、S120和S130,以更新所述神经网络框架。因此,通过循环迭代,可以得到包含N个优化后的神经网络的神经网络框架。
因此,通过采用进化算法而不是强硬地逐层选择,更加符合人类专家设计神经网络结构的思路,并且可以根据每次的更新结果得到的反馈进行修改,提高神经网络的生成速度。
此外,在计算神经网络的精度时,可以利用网络结构之间的权重共享,来减少评价单个网络所需要的时间,从而实现神经网络的生成的加速作用。
图6图示了根据本申请实施例的强化学习算法的网络结构的示意图。图7图示了根据本申请实施例的通过强化学习算法优化最优神经网络的过程的流程图。如图7所示,在上述图1所示实施例的基础上,步骤S210可包括如下步骤:
S310,将所述最优神经网络中的每个网络结构模块进行编码,得到编码结果。结合图6,针对步骤S110中通过进化算法获得的所述最优神经网络,假定其为如图2所示的CIFAR-10神经网络架构,则对于其中的每个网络结构模块,例如图2中的单元步进1,单元步进2等进行编码以得到编码结果。具体地,可以将每个网络结构模块编码为独热码。
因此,通过将需要搜索的网络结构规范化成为这种由模块组成的结构并编码,在搜索过程中不需要搜索整体的网络结构,将搜索空间限制到模块内,从而实现合理的加速。并且,针对不同的任务或数据集,可以通过组装不同数量的模块来从而实现对网络深度和模型大小的控制。
S320,将所述编码结果编码为网络结构模块特征。具体地,通过编码器,例如双向长短期记忆(Bi-LSTM)将所述编码结果编码为网络结构模块特征。
S330,通过选择器选择修改所述每个网络结构模块的特征处理层类型或者连接方式。
图8图示了神经网络架构中的每个网络结构模块的示意图。如图8所示,每个网络结构模块包括特征处理层,例如特征处理层OP1和特征处理层OP2,其分别接收输入IN1和IN2,并进行相应的处理。具体地,特征处理层OP1和OP2表示执行卷积、池化等神经网络里的基本操作,并且输入IN1和IN2指的是之前层的输出特征。例如,如果初始输入是图像,且之前层是池化层,那么输入IN1和IN2就是池化后的图像特征。
这里,OP1和OP2就是网络结构模块的特征处理层类型,且OP1接收输入IN1和OP2接收输入IN2就是所述网络结构模块的连接方式。然后,通过OP1和OP2产生的操作结果,例如池化后的图像特征经由编码器编码,并作为输出特征Fb,例如特征向量输出。
S340,响应于所述选择器的选择,修改所述每个网络结构模块的特征处理层类型或者连接方式以获得所述优化神经网络。
这样,响应于所述选择器的选择,通过修改所述每个网络结构模块的特征处理层类型或者连接方式,就可以获得所述优化神经网络。因此,由于通过强化学习算法替代了进化算法中的随机变异,相比于传统的进化算法当有害变异积攒到一定程度时进化会停滞甚至崩溃,提高了神经网络的生成的稳定性。
具体地,在本申请实施例中,响应于所述选择器选择修改所述每个网络结构模块的特征处理层类型,通过特征处理层类型修改器选择所述每个网络结构模块的特征处理层类型之一,以及,响应于所述选择器选择修改所述每个网络结构模块的连接方式,通过网络连接方式修改器选择所述每个网络结构模块的连接方式之一。
因此,返回参考图6,通过特征处理层类型修改器选择OP1或者OP2,或者通过网络连接方式修改器选择接收IN1或者IN2,可以获得网络结构模块相对于随机变异的有效优化,提高神经网络的生成速度。
如上所述,在进化算法中,通过神经网络的精度来选择评价神经网络,在如图1所示的步骤S140中,也可以采用相同的评价指标,即神经网络的精度,来确定最终生成的神经网络。另外,需要注意的是,在得到更新后的神经网络框架后,还需要训练所述更新后的神经网络框架中的多个神经网络,例如上述的N个神经网络以使其收敛,然后,计算收敛后的每个神经网络的精度,以选择具有最优精度的神经网络作为最终生成的神经网络。因此,可以保证最终生成的神经网络的精度要求。
经过测试,根据本申请实施例的神经网络的生成方法仅需要4块GPU,并花费1.5天左右的时间进行训练,就可以在经典数据集,例如Imagenet上达到了目前最优的性能,包括计算量和精度。
示例性装置
图9图示了根据本申请实施例的神经网络的生成装置的框图。
如图9所示,根据本申请实施例的神经网络的生成装置400包括:进化单元410,用于通过进化算法从神经网络框架中获得最优神经网络和最劣神经网络;强化学习单元420,用于通过强化学习算法从所述进化单元410获得的最优神经网络获得优化神经网络;更新单元430,用于通过将所述强化学习单元420获得的所述优化神经网络加入所述神经网络框架并从所述神经网络框架中删除所述进化单元410获得的所述最劣神经网络来更新所述神经网络框架;以及选择单元440,用于从所述更新单元430更新后的神经网络框架中确定最终生成的神经网络。
在一个示例中,在上述神经网络的生成装置400中,所述进化单元410包括:获取子单元,用于获取包括随机初始化的N个输入神经网络的神经网络框架,N是大于1的整数;选择子单元,用于从所述获取子单元获取的所述N个输入神经网络随机选择M个神经网络样本,M是大于1的整数;训练子单元,用于训练所述选择子单元选择的所述M个神经网络样本以获得所述M个神经网络样本的精度;以及,获得子单元,用于基于所述训练子单元获得的所述M个神经网络样本的精度获得所述最优神经网络和所述最劣神经网络。
在一个示例中,在上述神经网络的生成装置400中,所述强化学习单元420包括:编码子单元,用于将所述最优神经网络中的每个网络结构模块进行编码,得到编码结果;特征获得子单元,用于将所述编码子单元得到的编码结果编码为网络结构模块特征;选择子单元,用于通过选择器选择修改所述特征获得子单元编码得到的每个网络结构模块的特征处理层类型或者连接方式;以及,修改子单元,用于响应于所述选择子单元做出的所述选择器的选择,修改所述每个网络结构模块的特征处理层类型或者连接方式以获得所述优化神经网络。
在一个示例中,在上述神经网络的生成装置400中,所述修改子单元包括:特征处理层类型修改器,用于响应于所述选择器选择修改所述每个网络结构模块的特征处理层类型,选择所述每个网络结构模块的特征处理层类型之一;以及,网络连接方式修改器,用于响应于所述选择器选择修改所述每个网络结构模块的连接方式,选择所述每个网络结构模块的连接方式之一。
在一个示例中,在上述神经网络的生成装置400中,所述选择单元440包括:训练子单元,用于训练所述更新后的多个神经网络以使得所述更新后的多个神经网络收敛;计算子单元,用于计算收敛后的多个神经网络中每个神经网络的精度;以及选择子单元,用于选择具有最优的精度的神经网络作为所述最终生成的神经网络。
这里,本领域技术人员可以理解,上述神经网络的生成装置400中的各个单元和模块的具体功能和操作已经在上面参考图1到图8的神经网络的生成方法的描述中得到了详细介绍,并因此,将省略其重复描述。
如上所述,根据本申请实施例的神经网络的生成装置400可以实现在各种终端设备中,例如用于生成神经网络的服务器等。在一个示例中,根据本申请实施例的神经网络的生成装置400可以作为一个软件模块和/或硬件模块而集成到终端设备中。例如,该神经网络的生成装置400可以是该终端设备的操作***中的一个软件模块,或者可以是针对于该终端设备所开发的一个应用程序;当然,该神经网络的生成装置200同样可以是该终端设备的众多硬件模块之一。
替换地,在另一示例中,该神经网络的生成装置400与该终端设备也可以是分立的设备,并且该神经网络的生成装置400可以通过有线和/或无线网络连接到该终端设备,并且按照约定的数据格式来传输交互信息。
示例性电子设备
下面,参考图10来描述根据本申请实施例的电子设备。
图10图示了根据本申请实施例的电子设备的框图。
如图10所示,电子设备10包括一个或多个处理器11和存储器12。
处理器11可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备10中的其他组件以执行期望的功能。
存储器12可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器11可以运行所述程序指令,以实现上文所述的本申请的各个实施例的神经网络的生成方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如最优神经网络、最劣神经网络、优化神经网络等各种内容。
在一个示例中,电子设备10还可以包括:输入装置13和输出装置14,这些组件通过总线***和/或其他形式的连接机构(未示出)互连。
该输入装置13可以包括例如键盘、鼠标等等。
该输出装置14可以向外部输出各种信息,包括最终生成的神经网络等。该输出装置14可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图10中仅示出了该电子设备10中与本申请有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备10还可以包括任何其他适当的组件。
示例性计算机程序产品和计算机可读存储介质
除了上述方法和设备以外,本申请的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的神经网络的生成方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本申请实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本申请的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的神经网络的生成方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本申请的基本原理,但是,需要指出的是,在本申请中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本申请的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本申请为必须采用上述具体的细节来实现。
本申请中涉及的器件、装置、设备、***的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、***。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
还需要指出的是,在本申请的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本申请的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本申请。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本申请的范围。因此,本申请不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本申请的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

Claims (7)

1.一种用于图像分类的神经网络的生成方法,包括:
通过进化算法从神经网络框架中获得最优神经网络和最劣神经网络;所述神经网络框架用于处理图像输入;通过强化学习算法从所述最优神经网络获得优化神经网络;
通过将所述优化神经网络加入所述神经网络框架并从所述神经网络框架中删除所述最劣神经网络来更新所述神经网络框架;
通过迭代方式执行上述过程,以更新所述神经网络框架;以及
从更新后的神经网络框架中确定最终生成的神经网络,
其中,通过强化学习算法从所述最优神经网络获得优化神经网络包括:将所述最优神经网络中的每个网络结构模块进行编码,得到编码结果;将所述编码结果编码为网络结构模块特征;通过选择器选择修改所述每个网络结构模块的特征处理层类型或者连接方式;以及响应于所述选择器的选择,修改所述每个网络结构模块的特征处理层类型或者连接方式以获得所述优化神经网络,包括:响应于所述选择器选择修改所述每个网络结构模块的特征处理层类型,通过特征处理层类型修改器选择所述每个网络结构模块的特征处理层类型之一;以及响应于所述选择器选择修改所述每个网络结构模块的连接方式,通过网络连接方式修改器选择所述每个网络结构模块的连接方式之一;
其中,将所述最优神经网络中的每个网络结构模块进行编码,得到编码结果;包括:所述网络结构模块对初始输入图像进行特征处理,得到特征处理后的图像特征;所述图像特征由编码器编码,作为特征向量输出。
2.如权利要求1所述的神经网络的生成方法,其中,通过进化算法从神经网络框架中获得最优神经网络和最劣神经网络包括:
获取包括随机初始化的N个输入神经网络的神经网络框架,N是大于1的整数;
从所述N个输入神经网络随机选择M个神经网络样本,M是大于1的整数;
训练所述M个神经网络样本以获得所述M个神经网络样本的精度;以及
基于所述M个神经网络样本的精度获得所述最优神经网络和所述最劣神经网络。
3.如权利要求1所述的神经网络的生成方法,其中,从更新后的多个神经网络选择最终生成的神经网络包括:
训练所述更新后的多个神经网络以使得所述更新后的多个神经网络收敛;
计算收敛后的多个神经网络中每个神经网络的精度;以及
选择具有最优的精度的神经网络作为所述最终生成的神经网络。
4.一种用于图像分类的神经网络的生成装置,包括:
进化单元,用于通过进化算法从神经网络框架中获得最优神经网络和最劣神经网络;所述神经网络框架用于处理图像输入;
强化学习单元,用于通过强化学习算法从所述进化单元获得的最优神经网络获得优化神经网络;
更新单元,用于通过将所述强化学习单元获得的所述优化神经网络加入所述神经网络框架并从所述神经网络框架中删除所述进化单元获得的所述最劣神经网络来更新所述神经网络框架;以及
选择单元,用于从所述更新单元更新后的神经网络框架中确定最终生成的神经网络;
其中,所述强化学习单元包括:
编码子单元,用于将所述最优神经网络中的每个网络结构模块进行编码,得到编码结果;包括:所述网络结构模块对初始输入图像进行特征处理,得到特征处理后的图像特征;所述图像特征由编码器编码,作为特征向量输出;
特征获得子单元,用于将所述编码子单元得到的编码结果编码为网络结构模块特征;
选择子单元,用于通过选择器选择修改所述特征获得子单元编码得到的每个网络结构模块的特征处理层类型或者连接方式;以及
修改子单元,用于响应于所述选择子单元做出的所述选择器的选择,修改所述每个网络结构模块的特征处理层类型或者连接方式以获得所述优化神经网络;
所述修改子单元包括:特征处理层类型修改器,用于响应于所述选择器选择修改所述每个网络结构模块的特征处理层类型,选择所述每个网络结构模块的特征处理层类型之一;以及,网络连接方式修改器,用于响应于所述选择器选择修改所述每个网络结构模块的连接方式,选择所述每个网络结构模块的连接方式之一。
5.如权利要求4所述的神经网络的生成装置,其中,所述进化单元包括:
获取子单元,用于获取包括随机初始化的N个输入神经网络的神经网络框架,N是大于1的整数;
选择子单元,用于从所述获取子单元获取的所述N个输入神经网络随机选择M个神经网络样本,M是大于1的整数;
训练子单元,用于训练所述选择子单元选择的所述M个神经网络样本以获得所述M个神经网络样本的精度;以及
获得子单元,用于基于所述训练子单元获得的所述M个神经网络样本的精度获得所述最优神经网络和所述最劣神经网络。
6.一种电子设备,包括:
处理器;以及
存储器,在所述存储器中存储有计算机程序指令,所述计算机程序指令在被所述处理器运行时使得所述处理器执行如权利要求1-3中任一项所述的神经网络的生成方法。
7.一种计算机可读介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行如权利要求1-3中任一项所述的神经网络的生成方法。
CN201811269254.8A 2018-10-29 2018-10-29 神经网络的生成方法、生成装置和电子设备 Active CN111105029B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201811269254.8A CN111105029B (zh) 2018-10-29 2018-10-29 神经网络的生成方法、生成装置和电子设备
US16/666,344 US11195098B2 (en) 2018-10-29 2019-10-28 Method for generating neural network and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811269254.8A CN111105029B (zh) 2018-10-29 2018-10-29 神经网络的生成方法、生成装置和电子设备

Publications (2)

Publication Number Publication Date
CN111105029A CN111105029A (zh) 2020-05-05
CN111105029B true CN111105029B (zh) 2024-04-16

Family

ID=70328713

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811269254.8A Active CN111105029B (zh) 2018-10-29 2018-10-29 神经网络的生成方法、生成装置和电子设备

Country Status (2)

Country Link
US (1) US11195098B2 (zh)
CN (1) CN111105029B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111414849B (zh) * 2020-03-19 2020-12-29 四川大学 一种基于演化卷积神经网络的人脸识别方法
CN111563591B (zh) * 2020-05-08 2023-10-20 北京百度网讯科技有限公司 超网络的训练方法和装置
CN113873539A (zh) * 2020-06-30 2021-12-31 华为技术有限公司 获取神经网络的方法和装置
CN111882059A (zh) * 2020-07-17 2020-11-03 北京市商汤科技开发有限公司 数据处理方法及装置、电子设备和存储介质
CN112329997A (zh) * 2020-10-26 2021-02-05 国网河北省电力有限公司雄安新区供电公司 电力需求负荷预测方法及***、电子设备和存储介质
CN112508104A (zh) * 2020-12-08 2021-03-16 浙江工业大学 一种基于快速网络架构搜索的跨任务图像分类方法
CN112580803B (zh) * 2020-12-18 2024-01-09 北京百度网讯科技有限公司 模型获取方法、装置、电子设备、存储介质和程序产品
CN114648685B (zh) * 2022-03-23 2024-07-12 成都臻识科技发展有限公司 一种anchor-free算法转换为anchor-based算法的方法及***
CN115993831B (zh) * 2023-03-23 2023-06-09 安徽大学 基于深度强化学习的机器人无目标网络的路径规划方法

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1529281A (zh) * 2003-10-21 2004-09-15 上海交通大学 神经网络建模方法
CN104090573A (zh) * 2014-06-27 2014-10-08 赵希源 一种基于蚁群算法的机器人足球动态决策装置及其方法
CN105279555A (zh) * 2015-10-28 2016-01-27 清华大学 一种基于进化算法的自适应学习神经网络实现方法
CN105488528A (zh) * 2015-11-26 2016-04-13 北京工业大学 基于改进自适应遗传算法的神经网络图像分类方法
CN106650933A (zh) * 2017-01-12 2017-05-10 西安电子科技大学 基于协同进化和反向传播的深度神经网络优化方法
CN106951962A (zh) * 2017-03-22 2017-07-14 北京地平线信息技术有限公司 用于神经网络的复合运算单元、方法和电子设备
CN106951959A (zh) * 2017-01-24 2017-07-14 上海交通大学 基于学习自动机的深度神经网络优化方法
CN107239829A (zh) * 2016-08-12 2017-10-10 北京深鉴科技有限公司 一种优化人工神经网络的方法
CN107273976A (zh) * 2017-06-29 2017-10-20 广州日滨科技发展有限公司 一种神经网络的优化方法、装置、计算机及存储介质
CN107851216A (zh) * 2015-09-11 2018-03-27 谷歌有限责任公司 训练强化学习神经网络
CN108027897A (zh) * 2015-07-24 2018-05-11 渊慧科技有限公司 利用深度强化学习的连续控制
CN108090218A (zh) * 2017-12-29 2018-05-29 北京百度网讯科技有限公司 基于深度强化学习的对话***生成方法和装置
CN108229647A (zh) * 2017-08-18 2018-06-29 北京市商汤科技开发有限公司 神经网络结构的生成方法和装置、电子设备、存储介质
CN108229657A (zh) * 2017-12-25 2018-06-29 杭州健培科技有限公司 一种基于演化算法的深度神经网络训练与优化算法
CN108229646A (zh) * 2017-08-08 2018-06-29 北京市商汤科技开发有限公司 神经网络模型压缩方法、装置、存储介质和电子设备
CN108334949A (zh) * 2018-02-11 2018-07-27 浙江工业大学 一种优化深度卷积神经网络结构的快速进化方法
CN108446534A (zh) * 2018-03-13 2018-08-24 腾讯科技(深圳)有限公司 选择神经网络超参数的方法、装置和计算机可读存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1557788B1 (en) * 2004-01-26 2008-04-16 Honda Research Institute Europe GmbH Reduction of fitness evaluations using clustering technique and neural network ensembles
US20060224532A1 (en) * 2005-03-09 2006-10-05 Case Western Reserve University Iterative feature weighting with neural networks
US8756404B2 (en) * 2006-12-11 2014-06-17 International Business Machines Corporation Cascaded delayed float/vector execution pipeline
US11507844B2 (en) * 2017-03-07 2022-11-22 Cognizant Technology Solutions U.S. Corporation Asynchronous evaluation strategy for evolution of deep neural networks

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1529281A (zh) * 2003-10-21 2004-09-15 上海交通大学 神经网络建模方法
CN104090573A (zh) * 2014-06-27 2014-10-08 赵希源 一种基于蚁群算法的机器人足球动态决策装置及其方法
CN108027897A (zh) * 2015-07-24 2018-05-11 渊慧科技有限公司 利用深度强化学习的连续控制
CN107851216A (zh) * 2015-09-11 2018-03-27 谷歌有限责任公司 训练强化学习神经网络
CN105279555A (zh) * 2015-10-28 2016-01-27 清华大学 一种基于进化算法的自适应学习神经网络实现方法
CN105488528A (zh) * 2015-11-26 2016-04-13 北京工业大学 基于改进自适应遗传算法的神经网络图像分类方法
CN107239829A (zh) * 2016-08-12 2017-10-10 北京深鉴科技有限公司 一种优化人工神经网络的方法
CN106650933A (zh) * 2017-01-12 2017-05-10 西安电子科技大学 基于协同进化和反向传播的深度神经网络优化方法
CN106951959A (zh) * 2017-01-24 2017-07-14 上海交通大学 基于学习自动机的深度神经网络优化方法
CN106951962A (zh) * 2017-03-22 2017-07-14 北京地平线信息技术有限公司 用于神经网络的复合运算单元、方法和电子设备
CN107273976A (zh) * 2017-06-29 2017-10-20 广州日滨科技发展有限公司 一种神经网络的优化方法、装置、计算机及存储介质
CN108229646A (zh) * 2017-08-08 2018-06-29 北京市商汤科技开发有限公司 神经网络模型压缩方法、装置、存储介质和电子设备
CN108229647A (zh) * 2017-08-18 2018-06-29 北京市商汤科技开发有限公司 神经网络结构的生成方法和装置、电子设备、存储介质
CN108229657A (zh) * 2017-12-25 2018-06-29 杭州健培科技有限公司 一种基于演化算法的深度神经网络训练与优化算法
CN108090218A (zh) * 2017-12-29 2018-05-29 北京百度网讯科技有限公司 基于深度强化学习的对话***生成方法和装置
CN108334949A (zh) * 2018-02-11 2018-07-27 浙江工业大学 一种优化深度卷积神经网络结构的快速进化方法
CN108446534A (zh) * 2018-03-13 2018-08-24 腾讯科技(深圳)有限公司 选择神经网络超参数的方法、装置和计算机可读存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"基于强化学习的进化神经网络及其在机器人导航中的应用";李佳鹤、姚明海;《浙江工业大学学报》;第38卷(第6期);第655-660页 *
一种基于进化算法的BP神经网络优化方法及应用;周国亮;刘希玉;;计算机技术与发展(08);64-66+69 *
进化神经网络的研究进展;唐春明, 高协平;***工程与电子技术;20011020(10);94-98 *

Also Published As

Publication number Publication date
US11195098B2 (en) 2021-12-07
US20200134471A1 (en) 2020-04-30
CN111105029A (zh) 2020-05-05

Similar Documents

Publication Publication Date Title
CN111105029B (zh) 神经网络的生成方法、生成装置和电子设备
US9990558B2 (en) Generating image features based on robust feature-learning
CN111414987B (zh) 神经网络的训练方法、训练装置和电子设备
WO2020048389A1 (zh) 神经网络模型压缩方法、装置和计算机设备
US20200074296A1 (en) Learning to search deep network architectures
KR20190041790A (ko) 신경망 번역 모델 구축 장치 및 방법
CN112052948B (zh) 一种网络模型压缩方法、装置、存储介质和电子设备
US11544542B2 (en) Computing device and method
CN112699215B (zh) 基于胶囊网络与交互注意力机制的评级预测方法及***
CN113505583B (zh) 基于语义决策图神经网络的情感原因子句对提取方法
CN112085166B (zh) 一种卷积神经网络模型加速训练方法、装置、电子设备及存储介质
CN113360670A (zh) 一种基于事实上下文的知识图谱补全方法及***
CN112560456A (zh) 一种基于改进神经网络的生成式摘要生成方法和***
CN115017178A (zh) 数据到文本生成模型的训练方法和装置
WO2020195940A1 (ja) ニューラルネットワークのモデル縮約装置
CN115878330A (zh) 线程的运行控制方法及其***
CN116307624A (zh) 一种erp***的资源调度方法及其***
CN113111190A (zh) 一种知识驱动的对话生成方法及装置
JP6325762B1 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
CN116977885A (zh) 视频文本任务处理方法、装置、电子设备及可读存储介质
CN115599918B (zh) 一种基于图增强的互学习文本分类方法及***
CN117056595A (zh) 一种交互式的项目推荐方法、装置及计算机可读存储介质
WO2022127603A1 (zh) 一种模型处理方法及相关装置
CN111259673A (zh) 一种基于反馈序列多任务学习的法律判决预测方法及***
CN107944045B (zh) 基于t分布哈希的图像检索方法及***

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