CN111242268A - 一种搜索卷积神经网络的方法 - Google Patents
一种搜索卷积神经网络的方法 Download PDFInfo
- Publication number
- CN111242268A CN111242268A CN202010012084.6A CN202010012084A CN111242268A CN 111242268 A CN111242268 A CN 111242268A CN 202010012084 A CN202010012084 A CN 202010012084A CN 111242268 A CN111242268 A CN 111242268A
- Authority
- CN
- China
- Prior art keywords
- convolutional neural
- neural network
- mutation
- convolutional
- layer
- 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
Links
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 159
- 238000000034 method Methods 0.000 title claims abstract description 55
- 230000035772 mutation Effects 0.000 claims abstract description 117
- 238000012549 training Methods 0.000 claims abstract description 29
- 238000011176 pooling Methods 0.000 claims abstract description 24
- 230000006870 function Effects 0.000 claims description 10
- 238000010187 selection method Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 3
- 230000014759 maintenance of location Effects 0.000 claims description 3
- 238000013508 migration Methods 0.000 claims description 3
- 230000005012 migration Effects 0.000 claims description 3
- 239000000126 substance Substances 0.000 claims 1
- 238000013528 artificial neural network Methods 0.000 abstract description 14
- 230000008859 change Effects 0.000 abstract description 9
- 230000001537 neural effect Effects 0.000 description 16
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 238000012360 testing method Methods 0.000 description 9
- 238000012795 verification Methods 0.000 description 7
- 230000004913 activation Effects 0.000 description 5
- 230000032683 aging Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000008030 elimination Effects 0.000 description 4
- 238000003379 elimination reaction Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000002787 reinforcement Effects 0.000 description 2
- 238000000137 annealing Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008309 brain mechanism Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000013434 data augmentation Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000869 mutational effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000002028 premature Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation 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/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/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial 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]
-
- 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/086—Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Physiology (AREA)
- Image Analysis (AREA)
Abstract
本发明提供一种搜索卷积神经网络的方法,包括:构建初始卷积神经网络并训练至收敛,其中所述初始卷积神经网络包括一个或多个进化模块、全局平均池化层、全连接层;以训练后的初始卷积神经网络为基础进行多次迭代突变以得到多个突变卷积神经网络,其中,单次突变是从预设的突变方式中随机选择一种突变方式对当前卷积神经网络中的所有进化模块的结构同时进行突变后对整个卷积神经网络进行训练至收敛得到一个新的突变卷积神经网络,每次突变得到一个突变卷积神经网络;从步多个突变卷积神经网络中选择适应度最大的突变卷积神经网络作为搜索结果。采用本发明可以根据已有网络结构和参数方面的经验,有方向性地改变神经网络结构,并减少训练消耗。
Description
技术领域
本发明涉及计算机深度学习领域,具体地说,涉及神经网络结构设计优化方法中的神经网络结构搜索领域,更具体地说,涉及一种快速搜索卷积神经网络的方法。
背景技术
卷积神经网络通过模仿人脑机制的神经结构提取特征,在计算机视觉、目标检测等领域具有突出的性能。为了提高图像分类的准确性,研究人员先后提出了包含多个有效模块的人工设计的神经结构,如ResNet、DenseNet、PyramidNet等。为了设计出适用于各种数据集的神经结构,越来越多的研究人员对实现神经结构的自动搜索进行深入研究。
研究人员对特定数据集进行神经结构搜索时,将数据集划分为训练集与验证集,将搜索出的每个神经结构在训练集训练后,在验证集上验证其效果,通过迭代该过程,逐步探索更优神经结构。许多神经结构搜索算法性能优异,但计算量大。例如,使用进化算法需要450个GPU共7天(或使用800个GPU进行28天的强化学习,才能对CIFAR-10数据集获得一个先进的架构。
最新的一些算法提出了加快搜索过程,但无论是基于演化算法、强化学习、贝叶斯优化等在离散搜索空间完成搜索或基于梯度下降方法在连续域搜索,都基本无方向性,都是盲目随机地对搜索空间进行探索,在没有信息指导的情况下训练每一个中间架构的计算开销都很大。
发明内容
因此,本发明的目的在于克服上述现有技术的缺陷,提供一种新的可以快速搜索卷积神经网络的方法。
本发明提供一种搜索卷积神经网络的方法,包括如下步骤:
S1、训练初始卷积神经网络至收敛,其中所述初始卷积神经网络包括一个或多个进化模块;优选的所述初始卷积神经网络包括全局平均池化层以及全连接层,所述初始卷积神经网络在进化模块与全平均池化层之间包括一个或两个最大池化层、一个或多个丢弃块层;其中,最大池化层的步长为2,丢弃块层的保持率为0.75;在包含两个最大池化层时,靠前的最大池化层的块尺寸为7,靠后的最大池化层的块尺寸为5。
S2、以经步骤S1训练后的初始卷积神经网络为基础进行多次迭代突变以得到多个突变卷积神经网络,其中,每次突变是从预设的突变方式中随机选择一种突变方式对当前卷积神经网络中的所有进化模块的结构同时进行突变,并对其进行训练至收敛得到一个新的突变卷积神经网络;在本发明的一些实施例中,所述每一个进化模块包括一个或多个卷积层,所述每一个卷积层包含多个滤波器,对每个进化模块的结构进行突变是随机选择进化模块中的一个卷积层采用一种突变方式对其结构进行突变。
在本发明的一些实施例中,所述步骤S2包括:
S21、以经步骤S1训练后的初始卷积神经网络为基础进行多次迭代突变以得到预设初始规模的多个突变卷积神经网络组成初始种群;其中,第一次突变是从预设的突变方式中随机选择一种突变方式对初始卷积神经网络的所有进化模块的结构同时进行突变后对整个卷积神经网络进行训练至收敛得到一个突变卷积神经网络,后面的每次迭代突变是从预设的突变方式中随机选择一种突变方式对上一次突变后的卷积神经网络中的所有进化模块的结构同时进行突变后对整个卷积神经网络进行训练至收敛得到新的突变卷积神经网络;
S22、从初始种群中采用锦标赛选择方法选择一个突变卷积神经网络进行单次突变获得一个新的突变卷积神经网络并放回初始种群,重复多次,直至初始种群的规模达到预设的一代规模形成突变卷积神经网络的一代种群;
S23、从一代种群中采用锦标赛选择方法选择一个突变卷积神经网络进行单次突变获得新的突变卷积神经网络并放回当前种群同时随机淘汰当前种群中最老或适应度最低的突变卷积神经网络,重复多次,直到种群中的突变卷积神经网络的最高适应度不再变化或资源耗尽。
S3、从步骤S2的多个突变卷积神经网络中选择适应度最大的突变卷积神经网络作为搜索结果。
优选的,所述预设初始规模对应的初始种群的卷积神经网络数量为10~15,所述预设的一代规模对应的卷积神经网络数量为18~23。
优选的,预设的突变方式包括以下方式中的一种或多种:
拓宽:将待突变卷积层的滤波器进行随机复制,并将复制的滤波器添加到待突变卷积层中实现待突变卷积层的拓宽;
拆分:将待突变卷积层的滤波器进行等分,拆分为滤波器数量相同的两个新卷积层实现待突变卷积层的拆分,并对两个新卷积层的输出参数进行连接操作后;
加深:在待突变卷积层后直接添加一个与待突变卷积层滤波器数量相同的新卷积层;;
添加短路连接:在待突变卷积层后直接添加一个与待突变卷积层滤波器数量相同的且参数为0的新卷积层,并对该新卷积层的输出与待突变卷积层的输出进行叠加操作;
添加密集连接:在卷积神经网络中待突变卷积层后直接添加一个与待突变卷积层滤波器数量相同的且参数为0的新卷积层,并对该新卷积层的输出与待突变卷积层的输出进行连接操作。
S4、对搜索出的具有最大适应度的卷积神经网络进行后训练至收敛。
S5、基于后训练得到的卷积神经网络更新搜索结果。
其中,将卷积神经网络训练至收敛是指对卷积神经网络进行多次训练,直到在某次训练后与该次训练前相比,其适应度的变化范围小于等于预设阈值,判定该卷积神经网络已训练至收敛。
优选的,单次突变中对卷积神经网络采用功能保持的方法对其进行突变,以本次突变前的卷积神经网络为教师网络进行功能保持的迁移学习得到学生网络通过训练至收敛为突变后的卷积神经网络。
与现有技术相比,本发明适用于分类数据集上任何初始卷积神经网络的结构搜索,本发明的搜索方法可以迅速完成适合测试问题的神经结构搜索过程。与其他方式相比,本发明可以根据已有网络结构和参数方面的经验,有方向性地改变神经网络结构,并减少训练消耗。本发明既实现了神经结构高效进化,更好地加速了搜索过程,同时消耗更少的计算代价。通过本发明最终搜索到的神经结构相较传统方法得到的结构在测试集上的准确率更高,参数量更少。
附图说明
以下参照附图对本发明实施例作进一步说明,其中:
图1为根据本发明实施例的初始卷积神经网络的结构示意图;
图2为根据本发明实施例的待突变的卷积神经网络部分结构示意图;
图3为根据本发明实施例的对图2所示示例进行拓宽突变后的神经网络部分结构示意图;
图4为根据本发明实施例的对图2所示示例进行拆分突变后的神经网络部分结构示意图;
图5为根据本发明实施例的对图2所示示例进行加深突变后的神经网络部分结构示意图;
图6为根据本发明实施例的对图2所示示例进行添加短路连接突变后的神经网络部分结构示意图;
图7为根据本发明实施例的对图2所示示例进行添加密集连接突变后的神经网络部分结构示意图;
图8为根据本发明实施例的采用本发明方法在CIFAR-10数据集上搜索卷积神经网络的演化过程中种群变化示意图;
图9为根据本发明实施例的采用本发明方法在CIFAR-10数据集上搜索卷积神经网络的演化过程随时间变化示意图。
具体实施方式
为了使本发明的目的,技术方案及优点更加清楚明白,以下结合附图通过具体实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
需要说明的是,本发明不同于人工设计神经网络结构,本发明使用演化算法实现神经结构的自动搜索。本发明在原始训练集上通过分层抽样,随机抽取10000张图像,形成一个验证集来评估个体的适应度,同时使用剩余的40000张图像对突变进化过程中的个体进行训练,使用图片标准化和归一化处理,并采用标准的数据增强进行数据增广。
根据本发明的一个实施例,本发明提供一种基于通道数搜索卷积神经网络的方法,包括P1、P2、P3和/或P4、P5,下面详细介绍每个步骤。
在步骤P1中,构建初始卷积神经网络并训练至收敛。根据本发明的一个实施例,如图1所示,首先提供一个简单网络模型,作为一个基础网络开始演化,其参数个数为0.67M。该模型包括第一个卷积层(包括卷积、池化和激活),然后是交替连接的三个进化模块和两个用于降采样的最大池化层,接下来是第二个卷积层(包括卷积、池化和激活),接着是全局平均池化层和全连接层,用于从特征映射到分类的转换。优选的,第一卷积层和第二卷积层均为一个卷积核大小为3*3的卷积层—归一化层—激活函数层的结构,且第一卷积层包含64个滤波器,第二卷积层包含256个滤波器;每一个进化模块包括一个或多个卷积层(每个卷积层包括卷积、池化和激活),优选的,每个卷积层包含128个滤波器;两个最大池化层的步长均为2,且第一最大池化层的块尺寸为7,第二最大池化层的块尺寸为5。其中,卷积层中的激活函数为ReLU,权重采用L2正则化0.0001,权重初始化为He正态分布,即:
如图1所示,在数据输入到第一卷积层之前,可选地要进行数据增强,数据增强是一种通用的对数据预处理的方法,可以增强对数据的使用,有效防止过拟合;全连接层可以是用于处理分类问题的输出上的归一化函数softmax。可选地在每一个最大池化层后添加丢弃块层,每一个丢弃块层的保持率均为0.75,以提升图像处理的鲁棒性。
在步骤P2中,对经步骤P1训练后的初始卷积神经网络进行多次迭代突变以得到多个突变卷积神经网络,其中,单次突变是从预设的突变方式中随机选择一种突变方式对当前卷积神经网络中的所有进化模块的结构同时进行突变后对整个卷积神经网络进行训练至收敛得到一个新的突变卷积神经网络,每次突变得到一个突变卷积神经网络;将卷积神经网络训练至收敛是指对卷积神经网络进行多次训练,直到在某次训练后与该次训练前相比,其适应度的变化范围小于或者等于预设阈值,判定该卷积神经网络已训练至收敛,其中预设阈值优选为0.2%。优选的,单次突变中对卷积神经网络采用功能保持的方法对其进行突变,以本次突变前的卷积神经网络为教师网络进行功能保持的迁移学习得到的学生网络通过训练至收敛为突变后的卷积神经网络。其中,根据本发明的一个实施例,所述步骤P2进一步包括:
P21、以经步骤P1训练后的初始卷积神经网络为基础进行多次迭代突变以得到预设初始规模的多个突变卷积神经网络组成初始种群;其中,第一次突变是从预设的突变方式中随机选择一种突变方式对初始卷积神经网络的所有进化模块的结构同时进行突变后对整个卷积神经网络进行训练至收敛得到一个突变卷积神经网络,后面的每次迭代突变是从预设的突变方式中随机选择一种突变方式对上一次突变后的卷积神经网络中的所有进化模块的结构同时进行突变后对整个卷积神经网络进行训练至收敛得到新的突变卷积神经网络;
P22、从初始种群中采用锦标赛选择方法选择一个突变卷积神经网络进行单次突变获得一个新的突变卷积神经网络并放回初始种群,重复多次,直至初始种群的规模达到预设的一代规模形成突变卷积神经网络的一代种群;
P23、从一代种群中采用锦标赛选择方法选择一个突变卷积神经网络进行单次突变获得新的突变卷积神经网络并放回当前种群同时随机淘汰当前种群中最老或适应度最低的突变卷积神经网络,重复多次,直到种群中的突变卷积神经网络的最高适应度不再变化或资源耗尽。
根据本发明的一个实施例,采用选择和淘汰策略对初始种群中卷积神经网络进行进一步突变和筛选。例如,在选择个体时使用锦标赛选择方法从当前种群中随机选择k个个体作为一个集合,一个个体对应一个卷积神经网络,在集合中选取适应度最高的个体,这样的选择方法可以使优秀的个体更容易被选择,但表现较差的个体也有机会被选到。为了限制种群的规模,当种群规模达到N时,产生新的个体会执行丢弃个体操作。在一个实施例中,设定老化和非老化淘汰各为50%,以调节收敛速度和过拟合。其中,老化和非老化淘汰分别指的是淘汰最老的个体和淘汰最差的个体,频繁淘汰最差的个体容易导致演化过早拟合,频繁淘汰最老的个体容易导致种群适应度上升缓慢。根据实验,选择0.5这一参数,效果较好,也就是说,在每轮丢弃操作中,丢弃最坏的模型和丢弃最老的模型概率相同,可以更好的获得优秀的个体。
根据本发明的一个实施例,上述单次突变中的突变方式是从以下方式中随机选取的一种,其中,为了更好的理解突变操作,采用如图2所示的卷积神经网络的部分结构作为一个示例,用以下方法分别对其进行突变操作。如图2所示,一个卷积神经网络的部分结构,包括三个卷积层,其中每一个方框代表一个卷积层,方框中的圆圈代表滤波器,每个卷积层有n个滤波器,虚线框内代表进化模块,此处的进化模块包含一个卷积层,a、b、c、d用以示意性的表示卷积层的初始输入参数,e、f、g、h用以示意性的表示卷积层的初始输出参数。每一个卷积层的输入都是经上一个卷积层处理之后的特征图像,每一个卷积层的输入参数和输出参数分别影响该卷积层对输入的特征图像的处理及特征图像的输出。
拓宽:如图3所示,相对于图2的卷积神经网络中的进化模块,针对进化模块中的卷积层的滤波器进行随机复制,并将复制的滤波器添加到原卷积层中以使原卷积层拓宽。其中,将因复制增加的新滤波器的输入参数设置为原卷积层中被复制的滤波器对应的输入参数,其他未被复制过的滤波器的输入参数保持不变;将因复制增加的新滤波器以及被复制的滤波器的输出参数设置为被复制的滤波器原输出参数的1/(x+1),其中x代表该滤波器被复制的次数,新卷积层中其他滤波器的输出参数设置为被拓宽前的卷积层中对应滤波器的输出参数。例如,如图3所示,进化模块的卷积层包含n个滤波器,其中第n个滤波器的输入参数为d,输出参数为h,对第n个滤波器复制一次并添加到原卷积层中,使原卷积层拓宽为具有n+1个滤波器的新卷积层,新增的第n+1个滤波器的输入参数设置为与被复制的第n个滤波器的输入参数d保持一致,第n个和第n+1个滤波器的输出参数设置为h/2。
拆分:如图4所示,相对于图2的卷积神经网络中的进化模块,针对进化模块中的卷积层的滤波器进行等分,拆分为滤波器数量相同的两个新卷积层实现待突变卷积层的拆分,并对两个新卷积层的输出进行连接操作;其中,拆分后的两个新卷积层中滤波器的输入参数和输出参数与被拆分前卷积层中对应滤波器的输入参数和输出参数保持一致。例如,如图4所示,进化模块的卷积层包含n个滤波器,输入参数示意性表示为a、b、c、d,等分拆分后,原卷积层变为两个分别包含n/2个滤波器的新卷积层,且新卷积层中滤波器的参数与被拆分前保持一致,并使两个新卷积层的输出进行叠加以使新卷积层的输出与原卷积层的输出保持不变。经过拆分操作后,进化模块的卷积层发生了变化,在下一次对该进化模块进行突变操作时,是在拆分突变后的进化模块基础上进行,随机选择进化模块中的一个卷积层进行突变操作。
加深:如图5所示,相对于图2的卷积神经网络中的进化模块,在进化模块中的卷积层后直接添加一个与其滤波器数量相同的新卷积层,并将新卷积层中与原卷积层中直接对应的滤波器间的连接的参数设置为1,其余滤波器间的连接的参数设置为0,使新卷积层的输出与原卷积层的输出保持不变。例如,如图5所示,进化模块的卷积层包含n个滤波器,进行加深突变是在其后直接添加一个包含n个滤波器的新卷积层,并对新卷积层的参数进行设置使新卷积层的输出与加深前原卷积的输出一致。
添加短路连接:如图6所示,相对于图2的卷积神经网络中的进化模块,在进化模块中的卷积层后直接添加一个与待突变卷积层滤波器数量相同的且参数为0的新卷积层,并对该新卷积层的输出与待突变卷积层的输出进行叠加操作后使叠加后的输出与原卷积层的输出保持不变。例如,如图6所示,进化模块的卷积层包含n个滤波器,进行添加短路连接的突变是在其后直接添加一个包含n个滤波器的新卷积层,并将新卷积层的参数设置为0,然后将新卷积层的输出与原卷积层的输出进行叠加并保持与原卷积层的输出一致。
添加密集连接:如图7所示,相对于图2的卷积神经网络中的进化模块,在进化模块中的卷积层后直接添加一个与待突变卷积层滤波器数量相同的且参数为0的新卷积层,并对该新卷积层的输出与原卷积层的输出进行连接操作,将该新卷积层与原卷积层与下一个卷积层做全连接。例如,如图7所示,进化模块的卷积层包含n个滤波器,进行添加密集连接的突变是在其后直接添加一个包含n个滤波器的新卷积层,并将新卷积层的参数设置为0,然后将新卷积层的输出与原卷积层的输出进行叠加并保持与原卷积层的输出一致。
采用上述各种突变方式对进化模块中的卷积层进行突变操作后,再对神经网络进行训练至收敛,进化模块中卷积层的参数发生改变,在下一次迭代突变时,是在参数发生改变后的进化模块基础上进行,随机选择当前进化模块中的一个卷积层进行突变操作。
在步骤P3中,从步骤P2的多个突变卷积神经网络中选择适应度最大的突变卷积神经网络作为搜索结果。
在步骤P4中,对搜索出的具有最高适应度的卷积神经网络进行后训练至收敛;
在步骤P5中,基于后训练得到的卷积神经网络更新搜索结果。
为了更好的理解本发明,下面结合一个具体的示例来详细说明本发明。
以一个简单神经网络结构在CIFAR-10数据集上演化为例来说明本发明搜索卷积神经网络的方法。步骤如下:
步骤101:对初始网络使用SGDR(带有余弦退火和重启动的随即梯度下降法)训练63轮,简单网络基本收敛。
步骤102:对简单网络进行12次迭代突变,每一次突变得到一个新的卷积神经网络结果,对每个新结构分别训练15轮,构成大小为12的初始种群。其中,第一次突变是对简单网络进行突变得到一个突变神经网络,第二次以后的每次突变是在上一次突变卷积神经网络的基础上进行突变。
步骤103:采用锦标赛选择方法每次从步骤102中的种群选择一个个体进行突变操作得到一个新的卷积神经网络结构,对新结构训练15轮放回原种群,采用从CIFAR-10数据集中抽取的验证集评估种群中每个个体的适应度。
步骤104:执行步骤103若干次,直到种群大小达到20。
步骤105:使用本发明中的选择和淘汰策略反复选择和淘汰新个体以淘汰最老或最差的个体,每个新个体训练15轮使种群大小保持在20。其中,每个个体生成时,会按顺序进行编号,丢弃当前编号最小的个体,就是淘汰最老的个体。每个个体训练后会在验证集上进行验证,验证集上准确率代表个体适应度,淘汰最差的个体,就是选择适应度最低的个体进行淘汰。
步骤106:待资源耗尽后,提取在验证集上适应度最高的卷积神经网络结构进行后训练,再测试该模型在测试集上的准确率,其中,资源耗尽指的是GPU资源耗尽,通常由于模型很复杂,参数量过大,设备显存无法承受,在种群突变到一定程度后会耗尽资源。
步骤103和步骤104中的具体演化过程如图8、图9所示,从初始种群的12个卷积神经网络开始演化,每一个卷积神经网络为一个个体,体现在图中是每个节点(图中演化树每个分支末梢)代表个体,节点间的连接代表节点的父子关系,即子节点对应的个体是由父节点对应的个体演化而来。
如图8所示的圆形图中左侧图例代表适应度范围,和圆形图中外圈相对应;倒数第二圈不同颜色代表不同个体的祖先(最初种群中的个体),不同数字代表不同个体的编号,不同数字相同颜色表示这些不同数字对应的个体来自同一祖先,可以注意到种群逐渐被某一同源群体占领。从图8可以看出,由初始种群种的1至12号个体进行演化,比较优秀的6号个体最容易被选到,直接体现在图8中是由6号个体演化而来的个体占据的倒数第二圈的范围最广,且适应度也较高,由此证明,采用本发明的方法是可以快速有效的搜索到优秀的卷积神经网络结构的。
同理,如图9所示的矩形图中最右侧代表适应度,与图9中的节点相对应,图中横轴为搜索时间,搜索时间越长的代表越后演化得到的个体,横向演化树中由同一个分支演化出来的个体代表同源群体。从图9可以看出,初始种群种优秀的6号个体容易被选到,直接体现在图9中是搜索时间越长,由6号个体演化而来的同源个体越多,且适应度逐渐攀升,由此可以证明,本发明的方法可以使种群的总体适应度稳步、持续地上升。
至此,神经结构高效演化流程结束,为了验证本发明方法的有效性,通过实验对比本发明方法与其他方法的搜索时间和测试错误率,如表1所示,传统方法通常需要1~3150个GPU-days的搜索时间,本发明方法使用0.65个GPU-days的搜索时间,达到了更高的结果准确率(更低的测试错误率,如表1所示,本发明测试错误率为2.56%)。
本发明适用于分类数据集上任何初始卷积神经网络的结构搜索,本发明的搜索方法可以迅速完成适合测试问题的神经结构搜索过程。与其他方式相比,本发明可以根据已有网络结构和参数方面的经验,有方向性地改变神经网络结构,并减少训练消耗。既本发明实现了神经结构高效进化,更好地加速了搜索过程,同时消耗更少的计算代价。通过本发明最终搜索到的神经结构相较传统方法得到的结构在测试集上的准确率更高,参数量更少。
本发明适用于图像分类数据集上任何卷积神经网络的结构搜索。
需要说明的是,虽然上文按照特定顺序描述了各个步骤,但是并不意味着必须按照上述特定顺序来执行各个步骤,实际上,这些步骤中的一些可以并发执行,甚至改变顺序,只要能够实现所需要的功能即可。
表1
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (10)
1.一种搜索卷积神经网络的方法,其特征在于,包括:
S1、训练初始卷积神经网络至收敛,其中所述初始卷积神经网络包括一个或多个进化模块;
S2、以经步骤S1训练后的初始卷积神经网络为基础进行多次迭代突变以得到多个突变卷积神经网络,其中,每次突变是从预设的突变方式中随机选择一种突变方式对当前卷积神经网络中的所有进化模块的结构同时进行突变,并对其进行训练至收敛得到一个新的突变卷积神经网络;
S3、从步骤S2的多个突变卷积神经网络中选择适应度最大的突变卷积神经网络作为搜索结果。
2.根据权利要求1所述的一种搜索卷积神经网络的方法,其特征在于,所述每一个进化模块包括一个或多个卷积层,所述每一个卷积层包含多个滤波器,对每个进化模块的结构进行突变是随机选择进化模块中的一个卷积层采用一种突变方式对其结构进行突变。
3.根据权利要求2所述的一种搜索卷积神经网络的方法,其特征在于,所述初始卷积神经网络包括全局平均池化层以及全连接层,
所述初始卷积神经网络在进化模块与全平均池化层之间包括一个或两个最大池化层、一个或多个丢弃块层;其中,
最大池化层的步长为2,丢弃块层的保持率为0.75;
在两个最大池化层中,靠前的最大池化层的块尺寸为7,靠后的最大池化层的块尺寸为5。
4.根据权利要求3所述的一种搜索卷积神经网络的方法,其特征在于,所述步骤S2中以经步骤S1训练后的初始卷积神经网络为基础进行多次迭代突变以得到多个突变卷积神经网络包括:
S21、以经步骤S1训练后的初始卷积神经网络为基础进行多次迭代突变以得到预设初始规模的多个突变卷积神经网络组成初始种群;其中,第一次突变是从预设的突变方式中随机选择一种突变方式对初始卷积神经网络的所有进化模块的结构同时进行突变后对整个卷积神经网络进行训练至收敛得到一个突变卷积神经网络,后面的每次迭代突变是从预设的突变方式中随机选择一种突变方式对上一次突变后的卷积神经网络中的所有进化模块的结构同时进行突变后对整个卷积神经网络进行训练至收敛得到新的突变卷积神经网络;
S22、从初始种群中采用锦标赛选择方法选择一个突变卷积神经网络进行单次突变获得一个新的突变卷积神经网络并放回初始种群,重复多次,直至初始种群的规模达到预设的一代规模形成突变卷积神经网络的一代种群;
S23、从一代种群中采用锦标赛选择方法选择一个突变卷积神经网络进行单次突变获得新的突变卷积神经网络并放回当前种群同时随机淘汰当前种群中最老或适应度最低的突变卷积神经网络,重复多次,直到种群中的突变卷积神经网络的最高适应度不再变化或资源耗尽。
5.根据权利要求4所述的一种搜索卷积神经网络的方法,其特征在于,所述预设初始规模对应的初始种群的卷积神经网络数量为10~15,所述预设的一代规模对应的卷积神经网络数量为18~23。
6.根据权利要求1所述的一种搜索卷积神经网络的方法,其特征在于,预设的突变方式包括以下方式中的一种或多种:
拓宽:将待突变卷积层的滤波器进行随机复制,并将复制的滤波器添加到待突变卷积层中实现待突变卷积层的拓宽;
拆分:将待突变卷积层的滤波器进行等分,拆分为滤波器数量相同的两个新卷积层实现待突变卷积层的拆分,并对两个新卷积层的输出参数进行连接操作后;
加深:在待突变卷积层后直接添加一个与待突变卷积层滤波器数量相同的新卷积层;
添加短路连接:在待突变卷积层后直接添加一个与待突变卷积层滤波器数量相同的且参数为0的新卷积层,并对该新卷积层的输出与待突变卷积层的输出进行叠加操作;
添加密集连接:在卷积神经网络中待突变卷积层后直接添加一个与待突变卷积层滤波器数量相同的且参数为0的新卷积层,并对该新卷积层的输出与待突变卷积层的输出进行连接操作。
7.根据权利要求1至6任一所述的一种搜索卷积神经网络的方法,其特征在于将卷积神经网络训练至收敛是指对卷积神经网络进行多次训练,直到在某次训练后与该次训练前相比,其适应度的变化范围小于等于预设阈值,判定该卷积神经网络已训练至收敛。
8.根据权利要求7所述的一种搜索卷积神经网络的方法,其特征在于,单次突变中对卷积神经网络采用功能保持的方法对其进行突变,以本次突变前的卷积神经网络为教师网络进行功能保持的迁移学习得到学生网络通过训练至收敛为突变后的卷积神经网络。
9.根据权利要求1所述的一种搜索卷积神经网络的方法,其特征在于,所述方法还包括:
S4、对搜索出的具有最大适应度的卷积神经网络进行后训练至收敛;
S5、基于后训练得到的卷积神经网络更新搜索结果。
10.一种电子设备,包括存储器和处理器,在所述存储器上存储有能够在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至9中任一项所述的方法的步骤。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910835140 | 2019-09-05 | ||
CN2019108351403 | 2019-09-05 | ||
CN2019108351390 | 2019-09-05 | ||
CN201910835139 | 2019-09-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111242268A true CN111242268A (zh) | 2020-06-05 |
Family
ID=70864847
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010012122.8A Pending CN111340179A (zh) | 2019-09-05 | 2020-01-07 | 一种卷积神经网络拓扑方法 |
CN202010012084.6A Pending CN111242268A (zh) | 2019-09-05 | 2020-01-07 | 一种搜索卷积神经网络的方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010012122.8A Pending CN111340179A (zh) | 2019-09-05 | 2020-01-07 | 一种卷积神经网络拓扑方法 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN111340179A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113139579A (zh) * | 2021-03-23 | 2021-07-20 | 广东省科学院智能制造研究所 | 一种基于图像特征自适应卷积网络的图像分类方法和系统 |
CN113379034A (zh) * | 2021-06-15 | 2021-09-10 | 南京大学 | 一种基于网络结构搜索技术的神经网络结构优化方法 |
WO2021258964A1 (zh) * | 2020-06-22 | 2021-12-30 | 华为技术有限公司 | 神经网络结构搜索的方法、装置与系统 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112381667B (zh) * | 2020-11-12 | 2023-02-03 | 国网四川省电力公司电力科学研究院 | 一种基于深度学习的配网电气拓扑识别方法 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030134278A1 (en) * | 2000-09-07 | 2003-07-17 | Karpen Gary H. | Chromosome inheritance modifiers and their uses |
CN104850890A (zh) * | 2015-04-14 | 2015-08-19 | 西安电子科技大学 | 基于实例学习和Sadowsky分布的卷积神经网络参数调整方法 |
CN106874955A (zh) * | 2017-02-24 | 2017-06-20 | 深圳市唯特视科技有限公司 | 一种基于深度卷积神经网络的三维形状分类方法 |
CN106874956A (zh) * | 2017-02-27 | 2017-06-20 | 陕西师范大学 | 图像分类卷积神经网络结构的构建方法 |
CN108491923A (zh) * | 2018-04-10 | 2018-09-04 | 吉林大学 | 基于改进狼群算法优化贝叶斯网络的害虫图像识别方法 |
CN108764463A (zh) * | 2018-05-30 | 2018-11-06 | 成都视观天下科技有限公司 | 卷积神经网络知识迁移配对优化方法、设备及存储介质 |
CN109299142A (zh) * | 2018-11-14 | 2019-02-01 | 中山大学 | 一种基于进化算法的卷积神经网络结构搜索方法及系统 |
CN109407067A (zh) * | 2018-10-13 | 2019-03-01 | 中国人民解放军海军航空大学 | 基于时频图卷积神经网络的雷达动目标检测与分类一体化方法 |
CN109492674A (zh) * | 2018-10-19 | 2019-03-19 | 北京京东尚科信息技术有限公司 | 用于目标检测的ssd框架的生成方法及装置 |
CN109658396A (zh) * | 2018-12-06 | 2019-04-19 | 华中科技大学 | 一种基于选择性搜索与cnn的铸件x光图像缺陷识别方法 |
CN109711640A (zh) * | 2019-01-23 | 2019-05-03 | 北京工业大学 | 一种基于模糊c均值交通流量聚类以及误差反馈卷积神经网络的短时交通流预测方法 |
US10339450B2 (en) * | 2017-09-08 | 2019-07-02 | DeepCube LTD. | System and method for efficient evolution of deep convolutional neural networks using filter-wise recombination and propagated mutations |
CN110135486A (zh) * | 2019-05-08 | 2019-08-16 | 西安电子科技大学 | 基于自适应卷积神经网络的筷子图像分类方法 |
-
2020
- 2020-01-07 CN CN202010012122.8A patent/CN111340179A/zh active Pending
- 2020-01-07 CN CN202010012084.6A patent/CN111242268A/zh active Pending
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030134278A1 (en) * | 2000-09-07 | 2003-07-17 | Karpen Gary H. | Chromosome inheritance modifiers and their uses |
CN104850890A (zh) * | 2015-04-14 | 2015-08-19 | 西安电子科技大学 | 基于实例学习和Sadowsky分布的卷积神经网络参数调整方法 |
CN106874955A (zh) * | 2017-02-24 | 2017-06-20 | 深圳市唯特视科技有限公司 | 一种基于深度卷积神经网络的三维形状分类方法 |
CN106874956A (zh) * | 2017-02-27 | 2017-06-20 | 陕西师范大学 | 图像分类卷积神经网络结构的构建方法 |
US10339450B2 (en) * | 2017-09-08 | 2019-07-02 | DeepCube LTD. | System and method for efficient evolution of deep convolutional neural networks using filter-wise recombination and propagated mutations |
CN108491923A (zh) * | 2018-04-10 | 2018-09-04 | 吉林大学 | 基于改进狼群算法优化贝叶斯网络的害虫图像识别方法 |
CN108764463A (zh) * | 2018-05-30 | 2018-11-06 | 成都视观天下科技有限公司 | 卷积神经网络知识迁移配对优化方法、设备及存储介质 |
CN109407067A (zh) * | 2018-10-13 | 2019-03-01 | 中国人民解放军海军航空大学 | 基于时频图卷积神经网络的雷达动目标检测与分类一体化方法 |
CN109492674A (zh) * | 2018-10-19 | 2019-03-19 | 北京京东尚科信息技术有限公司 | 用于目标检测的ssd框架的生成方法及装置 |
CN109299142A (zh) * | 2018-11-14 | 2019-02-01 | 中山大学 | 一种基于进化算法的卷积神经网络结构搜索方法及系统 |
CN109658396A (zh) * | 2018-12-06 | 2019-04-19 | 华中科技大学 | 一种基于选择性搜索与cnn的铸件x光图像缺陷识别方法 |
CN109711640A (zh) * | 2019-01-23 | 2019-05-03 | 北京工业大学 | 一种基于模糊c均值交通流量聚类以及误差反馈卷积神经网络的短时交通流预测方法 |
CN110135486A (zh) * | 2019-05-08 | 2019-08-16 | 西安电子科技大学 | 基于自适应卷积神经网络的筷子图像分类方法 |
Non-Patent Citations (3)
Title |
---|
TRAVIS DESELL: "Accelerating the Evolution of Convolutional Neural Networks with Node-Level Mutations and Epigenetic Weight Initialization", 《HTTPS://DL.ACM.ORG/DOI/10.1145/3205651.3205792》 * |
余东行等: "级联卷积神经网络的遥感影像飞机目标检测", 《测绘学报》 * |
朱冠男等: "基于线性脉冲耦合振荡器模型的WSN时间同步", 《武汉理工大学学报》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021258964A1 (zh) * | 2020-06-22 | 2021-12-30 | 华为技术有限公司 | 神经网络结构搜索的方法、装置与系统 |
CN113139579A (zh) * | 2021-03-23 | 2021-07-20 | 广东省科学院智能制造研究所 | 一种基于图像特征自适应卷积网络的图像分类方法和系统 |
CN113139579B (zh) * | 2021-03-23 | 2024-02-02 | 广东省科学院智能制造研究所 | 一种基于图像特征自适应卷积网络的图像分类方法和系统 |
CN113379034A (zh) * | 2021-06-15 | 2021-09-10 | 南京大学 | 一种基于网络结构搜索技术的神经网络结构优化方法 |
CN113379034B (zh) * | 2021-06-15 | 2023-10-20 | 南京大学 | 一种基于网络结构搜索技术的神经网络结构优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111340179A (zh) | 2020-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111242268A (zh) | 一种搜索卷积神经网络的方法 | |
CN111428818B (zh) | 基于神经通路激活状态的深度学习模型测试方法与装置 | |
CN112101190B (zh) | 一种遥感图像分类方法、存储介质及计算设备 | |
CN109948029B (zh) | 基于神经网络自适应的深度哈希图像搜索方法 | |
US11710044B2 (en) | System and method for efficient evolution of deep convolutional neural networks using filter-wise recombination and propagated mutations | |
CN110276377A (zh) | 一种基于贝叶斯优化的对抗样本生成方法 | |
Yang et al. | A modified clustering method based on self-organizing maps and its applications | |
CN112836820B (zh) | 用于图像分类任务的深度卷积网络训练方法、装置及系统 | |
CN110991621A (zh) | 一种基于通道数搜索卷积神经网络的方法 | |
Dozono et al. | Convolutional self organizing map | |
Bakhshi et al. | Fast evolution of CNN architecture for image classification | |
CN111695624A (zh) | 数据增强策略的更新方法、装置、设备及存储介质 | |
CN114548591A (zh) | 一种基于混合深度学习模型和Stacking的时序数据预测方法及系统 | |
CN115659807A (zh) | 一种基于贝叶斯优化模型融合算法对人才表现预测的方法 | |
CN110222816B (zh) | 深度学习模型的建立方法、图像处理方法及装置 | |
CN110993121A (zh) | 一种基于双协同线性流形的药物关联预测方法 | |
CN115908909A (zh) | 基于贝叶斯卷积神经网络的进化神经架构搜索方法及系统 | |
CN112837739B (zh) | 基于自编码器与蒙特卡洛树的层次化特征系统发育模型 | |
EP3679511A1 (en) | System and method for efficient evolution of deep convolutional neural networks using filter-wise recombination and propagated mutations | |
CN109918659B (zh) | 一种基于不保留最优个体遗传算法优化词向量的方法 | |
CN108333940B (zh) | 一种优化指定控制器参数的方法及装置 | |
Yan et al. | Evolutionary multiobjective neural architecture search for organ medical image classification | |
CN113887636B (zh) | 基于遗传算法的可选择数据增强方法及系统 | |
CN113011446A (zh) | 一种基于多源异构数据学习的智能目标识别方法 | |
CN110457155A (zh) | 一种样本类别标签的修正方法、装置及电子设备 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200605 |
|
RJ01 | Rejection of invention patent application after publication |