CN110991621A - 一种基于通道数搜索卷积神经网络的方法 - Google Patents
一种基于通道数搜索卷积神经网络的方法 Download PDFInfo
- Publication number
- CN110991621A CN110991621A CN201911282344.5A CN201911282344A CN110991621A CN 110991621 A CN110991621 A CN 110991621A CN 201911282344 A CN201911282344 A CN 201911282344A CN 110991621 A CN110991621 A CN 110991621A
- Authority
- CN
- China
- Prior art keywords
- convolutional neural
- neural network
- mutation
- initial
- convolutional
- 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 211
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000035772 mutation Effects 0.000 claims abstract description 88
- 230000006870 function Effects 0.000 claims abstract description 83
- 238000012549 training Methods 0.000 claims abstract description 45
- 230000009466 transformation Effects 0.000 claims abstract description 25
- 230000008859 change Effects 0.000 claims description 13
- 238000005070 sampling Methods 0.000 claims description 13
- 238000010187 selection method Methods 0.000 claims description 9
- 230000003247 decreasing effect Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 238000013508 migration Methods 0.000 claims description 3
- 230000005012 migration Effects 0.000 claims description 3
- 238000013528 artificial neural network Methods 0.000 description 25
- 238000012360 testing method Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 238000012795 verification Methods 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 5
- 230000001537 neural effect Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000013434 data augmentation Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- RTAQQCXQSZGOHL-UHFFFAOYSA-N Titanium Chemical compound [Ti] RTAQQCXQSZGOHL-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000000137 annealing Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000013526 transfer learning 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/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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明提供一种基于通道数搜索卷积神经网络的方法,包括:构建与待优化卷积神经网络的卷积层层数相同的初始卷积神经网络,并将该初始卷积神经网络每层的初始通道数设为相同数值并使初始卷积神经网络的初始通道数不超过待优化卷积神经网络的最小通道数,训练该初始卷积神经网络至收敛;对初始卷积神经网络进行多次突变以得到多个突变卷积神经网络,其中,单次突变是从预设的增量函数中随机选择一个增量函数对该次突变中的卷积神经网络的卷积层通道数进行增量变换后训练至收敛得到一个突变卷积神经网络;从多个突变卷积神经网络中选择图像分类准确率最高的突变卷积神经网络作为搜索结果。本发明可以从一个初始小规模网络,在控制网络参数量的同时迅速搜索产生性能较高的卷积神经网络,并大大减少训练消耗。
Description
技术领域
本发明涉及计算机深度学习领域,具体地说,涉及神经网络结构设计优化方法中的神经网络结构搜索领域,更具体地说,涉及一种基于通道数搜索卷积神经网络的方法。
背景技术
近年来,深度学习在计算机视觉等领域取得了重要成就。作为决定卷积神经网络性能的重要因素,许多优秀的神经结构被设计出来,如VGGNet(Visual Geometry GroupNetwork)、ResNet(Residual Neural Network)、SENet(Squeeze-and-ExcitationNetworks)等。尽管这些人工设计的卷积神经网络在特定的分类数据集上不断刷新了最高准确率,但是它们严重依赖专家经验且难以面对各种新的复杂数据集。随着对神经结构搜索方面越来越多的关注,很多自动搜索的神经网络结构已经在性能上超越了从前人工设计的神经结构。
现有技术下,大都是侧重于神经网络结构之间的连接方面的探索,并没有针对卷积神经网络通道数搜索方面的深入研究。众所周知,一个RGB图片,在最初输入时其通道数是3(红绿蓝),而在某一卷积层的卷积操作完成后输出的通道数,取决于该卷积层卷积核(也叫滤波器)的数量,卷积核数量等于卷积操作后输出的通道数,该层输出的通道数也会作为下一个卷积层卷积操作时输入的通道数。而早从人工设计神经网络开始,神经网络的通道数设计就是一个重要研究点,神经网络通道数是影响卷积神经网络对应的图像分类准确率的重要因素。传统的卷积神经网络通常会在降采样的同时剧烈增加特征图维度,从而粗略地保证高维度特征的多样性,进而保证模型的性能。一些后续研究者对神经网络的通道数也进行了改进型尝试,例如,WRNs(Wide Residual Networks)增加了ResNet的宽度,PyramidNet(Deep pyramidal residual networks)设计了乘性和加性金字塔结构缓慢增加通道数。但是,这两种方法对通道数的改变所产生的搜索空间是很有限的,同时需要很大的参数量。一些自动搜索的方法如DenseNAS等,虽然在模型性能上取得了较好结果,但是搜索的过程是计算昂贵的,并且搜索的效率不令人满意。
发明内容
因此,本发明的目的在于克服上述现有技术的缺陷,提供一种新的可以基于通道数快速搜索卷积神经网络的方法。
根据本发明的第一方面,本发明提供一种基于通道数搜索卷积神经网络的方法,包括:
S1、构建与待优化卷积神经网络的卷积层层数相同的初始卷积神经网络,并将该初始卷积神经网络每层的初始通道数设为相同数值并使初始卷积神经网络的初始通道数不超过待优化卷积神经网络的最小通道数且大于等于待优化卷积神经网络的最小通道数的二分之一,训练该初始卷积神经网络至收敛。
S2、对经步骤S1训练后的初始卷积神经网络进行多次突变以得到多个突变卷积神经网络,其中,单次突变是从预设的增量函数中随机选择一个增量函数对该次突变中的卷积神经网络的卷积层通道数进行增量变换后训练至收敛得到一个突变卷积神经网络;包括:
S21、以经步骤S1训练后的初始卷积神经网络为基础进行单次突变得到初始突变卷积神经网络,重复多次,以得到预设初始规模的多个初始突变卷积神经网络组成初始种群;优选的,所述预设初始规模对应的初始种群的卷积神经网络数量为10~15;
S22、从初始种群中采用锦标赛选择方法选择一个初始突变卷积神经网络进行单次突变获得一代突变卷积神经网络并放回初始种群,重复多次,直至初始种群的规模达到预设的一代规模形成突变卷积神经网络的一代种群;优选的,所述预设的一代规模对应的卷积神经网络数量为18~23;
S23、从一代种群中采用锦标赛选择方法选择一个突变卷积神经网络进行单次突变获得二代突变卷积神经网络并放回一代种群同时淘汰一代种群中图像分类准确率最低的突变卷积神经网络,重复多次,直到一代种群中的图像分类准确率最高的卷积神经网络在预设的次数内均不发生变化,获得突变卷积神经网络的二代种群。
S3、从步骤S2中的多个突变卷积神经网络中选择图像分类准确率最高的突变卷积神经网络作为搜索结果。
S4、对搜索出的具有最高图像分类准确率的卷积神经网络进行后训练至收敛。
S5、基于后训练得到的卷积神经网络更新搜索结果。
其中,单次突变中的增量变换是指基于本次突变随机选择的增量函数,计算卷积神经网络每个卷积层通道数的增量,针对卷积神经网络的每个卷积层,以本次增量变换前该卷积层的通道数与本次计算出的该卷积层通道数的增量之和来更新其卷积层通道数。单次突变中将增量变换后的卷积神经网络训练至收敛是指对增量变换后的卷积神经网络进行多次训练,直到在某次训练后与该次训练前相比,其图像分类准确率的变化范围小于等预设阈值,判定该卷积神经网络已训练至收敛。单次突变中对增量变换后的卷积神经网络采用功能保持的方法对其进行训练,以本次突变前的卷积神经网络为教师网络进行功能保持的迁移学习得到的学生网络为收敛的突变卷积神经网络。
所述预设的增量函数包括:
斜率递增的函数:
与所述斜率递增的函数关于x=N/2对称的函数:
斜率不变的函数:
与所述斜率不变的函数关于x=N/2对称的函数:
斜率递减的函数:
与所述斜率递减的函数关于x=N/2对称的函数:
阶梯式函数:
与所述阶梯式函数相反的函数:
其中,N表示卷积层的总层数,自变量x表示相应卷积层的层号,λ代表最大增量,在函数fg(x)和函数fh(x)中,Kt(t∈{1,2,……,n-1})表示第t个降采样操作前的卷积层数,n代表被降采样分割的部分总数量。
根据本发明的第二方面,本发明提供一种图像分类方法,使用本发明第一方面所述方法搜索出的卷积神经网络对图像数据进行分类。
与现有技术相比,本发明的优点在于:本发明适用于图像分类数据集上任何卷积神经网络的通道数搜索。本发明能够实现卷积神经网络通道数高效搜索,迅速找到特定数据集上的卷积神经网络通道数分布规律,优化特定的卷积神经网络性能。本发明可以从一个初始小规模网络,在控制网络参数量的同时迅速搜索产生性能较高的卷积神经网络,并大大减少训练消耗。与其他现有方法相比,本发明实现了在控制网络参数量的同时迅速搜索出性能较高的卷积神经网络通道数分布规律,同时消耗更少的计算代价。通过本发明最终搜索到的卷积神经相较传统方法依托的卷积神经网络在测试集上的准确率更高,参数量更少。
附图说明
以下参照附图对本发明实施例作进一步说明,其中:
图1为根据本发明实施例的一个待优化卷积神经网络的结构示意图;
图2为根据本发明实施例的采用本发明方法构建图1中的卷积神经网络的初始卷积神经网络的结构示意图;
图3为根据本发明实施例的增量函数的曲线示意图及其对应的卷积层通道数变化的示意图;
图4为根据本发明实施例的通道数搜索时间对比示意图;
图5为根据本发明实施例的方法搜索到的卷积神经网络与优化前卷积神经网络的分类效果对比示意图。
具体实施方式
为了使本发明的目的,技术方案及优点更加清楚明白,以下结合附图通过具体实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
如在背景技术中提到的,现有的方法对通道数的改变方式较为单一,产生的搜索空间有限,并且搜索过程昂贵,搜索的效果也不令人满意。而且,应当注意的是,“搜索”一词在神经网络领域的含义完全不同于从存储着数据的数据库中搜索所需数据时“搜索”一词所对应的含义。在神经网络领域,搜索神经网络是一个用机器创建神经网络的过程,搜索出的神经网络是在搜索的过程中新创建的神经网络,而非本来就存在的神经网络。本发明以待优化卷积神经网络为基础设置初始卷积神经网络,保持其深度(卷积层层数)不变,而以通道数为作用对象,从一个初始小规模的卷积神经网络,在功能保持的基础上,通过使用预设的多个彼此不同的增量函数对卷积层的通道数进行改变,在控制网络参数量的同时迅速搜索产生性能较高的卷积神经网络,大大减少训练消耗。其中,功能保持的思想是将已训练好的教师网络的信息快速迁移到学生网络,这一方法已被少量用于神经结构搜索,但搜索都侧重于神经结构之间的连接方面的探索,没有针对卷积神经网络通道数方面进行探索,导致搜索效率不高。
根据本发明的一个实施例,本发明提供一种基于通道数搜索卷积神经网络的方法,包括P1、P2、P3和/或P4、P5,下面详细介绍每个步骤。
在步骤P1中,构建与待优化卷积神经网络的卷积层层数相同的初始卷积神经网络,并将该初始卷积神经网络每层的初始通道数设为相同数值并使初始卷积神经网络的初始通道数不超过待优化卷积神经网络的最小通道数且大于等于待优化卷积神经网络的最小通道数的二分之一,训练该初始卷积神经网络至收敛。
根据本发明的一个示例,如图1所示,为了更直观的理解通道数,用卷积层网络的宽度变换来表示通道数的变化,如图中待优化卷积神经网络的矩形长度示卷积层宽度,即矩形长度越长,该卷积层越宽,通道数越多,且原始待优化卷积神经网络的宽度通常是变化的。如图2所示,构建如图1所示的卷积神经网络的初始网络,为每个卷积层选择相同的通道数(如图2显示为矩形长度相同),优选的初始卷积神经网络的通道数都是很小的,不超过待优化卷积神经网络最小通道数,且大于最小通道数的一半。初始卷积神经网络与待优化卷积神经网络是逐层对应的,通过构建初始卷积神经网络,使用本发明的方法进行搜索。例如,卷积神经网络ResNet-18的通道数包括4种:64,128,256,512,每一种通道数分布在4层卷积神经网络。针对卷积神经网络ResNet-18进行通道数搜索时,可构建一个深度相同的小网络(16个卷积层),但通道数都初始化为32个。需要说明的是,初始卷积神经网络直接用窄的小网络,从随机初始化开始训练,不是变窄,而是初始网络就是窄的网络,其他非卷积层的设定也相同,比如池化层都是最大池化,输出层都是softmax回归,除了卷积层宽度,别的没有变。构建的初始网络的层数与要优化的特定卷积神经网络相同,这样的设置是必要的,这是为了保证除通道数外,其他的网络设置都相同,便于准确地调节网络通道数。关于初始通道数的设置,应保证不能过小,这会导致初始网络表现很差;也不应过大,会导致搜索空间过小,优选的,将范围定在最小通道数的一半到最小通道数之间。权重初始化为He正态分布(不需要调整,按照He正态分布随机初始化即可),并对权重应用0.0001大小的L2正则化,有利于提高网络的泛化能力。
在步骤P2中,对经步骤P1训练后的初始卷积神经网络进行多次突变以得到多个突变卷积神经网络,其中,单次突变是从预设的增量函数中随机选择一个增量函数对该次突变中的卷积神经网络的卷积层通道数进行增量变换后训练至收敛得到一个突变卷积神经网络。
根据本发明的一个实施例,所述预设的增量函数包括如下函数中的一个或多个:
斜率递增的函数:
与所述斜率递增的函数关于x=N/2对称的函数:
斜率不变的函数:
与所述斜率不变的函数关于x=N/2对称的函数:
斜率递减的函数:
与所述斜率递减的函数关于x=N/2对称的函数:
其中,N代表卷积层的总层数,x代表的是当前要拓宽的卷积层的序号数,比如说当前要计算第2层的拓宽量,x的值就为2。λ代表最大增量,通常设定为0.2。也就是说,通道数最多增大到1+λ倍,自变量x的取值范围是(0,N]。如图3所示,采用不同的增量函数时,对应的卷积神经网络的变化。如图3(a)中所示,函数fa(x)是斜率逐渐增大的函数,那么采用fa(x)进行变换后的卷积神经网络也是从第一个卷积层到最后一个卷积层的通道数增幅逐渐增大的,最终形成如图3(a)对应示意卷积神经网络模型。N代表卷积层的总层数,x代表的是当前要拓宽的卷积层的序号数,比如说当前要计算第2层的拓宽量,x的值就为2,λ代表最大增量,通常设定为0.2,也就是说,通道数最多增大到1+λ倍,自变量x的取值范围是(0,N]。同理可得采用其他增量函数进行增量变换之后的卷积神经网络模型,如图3(b)、3(c)、图3(d)、图3(e)、图3(f)所示。
除了上述增量函数以外,根据本发明的一个实施例,还提供用于增量变换的阶梯式函数,如下所示:
阶梯式函数:
与所述阶梯式函数相反的函数:
其中,以Kt表示第t个降采样操作前的卷积层数。n=max{t}+1,n代表被降采样分割的部分总数量。例如,降采样2次:卷积层1、卷积层2、降采样1、卷积层3、卷积层4、卷积层5、降采样2、卷积层6。那么t=2(2次降采样),n=3(分成了三个部分),K1=2,K2=3。降采样2次也即代表卷积神经网络中包含2个最大池化层,降采样1在卷积层2到卷积层3之间,代表最大池化层1也在卷积层2到卷积层3之间,降采样2再卷积层5到卷积层6之间,代表最大池化层2也在卷积层5和卷积层6之间。采用阶梯式函数进行增量变换之后的卷积神经网络模型,如图3(g)、3(h)所示。
根据以上8个函数随机选择,每次对网络的通道数进行增量变化,最终的通道数变化是由多次增量变化叠加而成的,如果每次选择的函数都一样,则会得到相同的网络。
根据本发明的一个示例,以Θ代表最初的卷积层集合,θi代表第i个卷积层的通道数,Θ'代表m次变化后的卷积层集合,ξ代表函数的随机选择,p是一个统计次数用的变量,代表式子从1累乘到m。fξp(i)表示第p次为网络选择的突变函数。搜索过程可以表示为:
根据本发明的一个实施例,单次突变中的增量变换是指基于本次突变随机选择的增量函数,计算卷积神经网络每个卷积层通道数的增量,针对卷积神经网络的每个卷积层,以本次增量变换前该卷积层的通道数与本次计算出的该卷积层通道数的增量之和来更新其卷积层通道数。
根据本发明的一个实施例,单次突变中将增量变换后的卷积神经网络训练至收敛是指对增量变换后的卷积神经网络进行多次训练,当其在某次训练后与该次训练前相比,其图像分类准确率的变化范围小于等于预设阈值时,则判定该卷积神经网络已训练至收敛,优选的预设阈值取值范围0.1~1%。优选的,单次突变中对增量变换后的卷积神经网络采用功能保持的方法对其进行训练,以本次突变前的卷积神经网络为教师网络进行功能保持的迁移学习得到的学生网络为收敛的突变卷积神经网络。
其中,需要说明的是,功能保持是指教师网络和学生网络在相同输入的情况下具有相同的输出,通过参数的复制和调整(除以复制数量),可以实现功能保持。例如,α代表网络的输入,由教师模型F(α;θ)使用迁移的方法选择一个新的参数集合θ′使学生网络对于相同输入具有相同的输出,即:
本发明基于功能保持对卷积神经网络的卷积层进行拓宽操作,将要进行迁移改变的第i个卷积层由形如(k1,k2,c,f)的矩阵W(i)表示,其中:k1、k2代表卷积核尺寸,c代表该层通道数,f代表该层滤波器数量。W(i)随机从原网络参数中复制矩阵中最后一维参数形成新的网络参数,并在W(i+1)中将第三维对应位置参数除以上一个卷积层相同滤波器数量,从而利用已完成训练的参数实现神经网络的功能保持。其中,上层复制相同的参数后,生成了相同的特征图,对多个相同的特征图加和后除以数量,得到原有的输出值。矩阵形状是由k1*k2*c*f组成的,最后一维即第四维,第三维就是c这一维度,为提升结果鲁棒性,将一个0至0.05倍的参数随机添加到新参数中W(i+1)(即所得参数乘以1+(0~0.05)倍,如下面公式中所示)以打破新参数的对称性。具体公示如下:
其中,Random sample from是指从某集合中随机抽样。
U代表变换后新的参数矩阵,j代表一个自变量,f代表参数矩阵中滤波器数量f,f’代表第i+1层的滤波器数量,δ代表为提升鲁棒性的随机小参数(即噪声,0~0.05倍)
通过这一变换后,新产生的网络与原网络是功能保持的,即对于相同的输入得到相同的输出。因为只修改特定的层,不仅该卷积层成立,所有修改的卷积层都成立时,整个网络自然也成立了。
根据本发明的一个实施例,对经步骤P1训练后的初始卷积神经网络进行多次突变包括:
P21、以经步骤P1训练后的初始卷积神经网络为基础进行单次突变得到初始突变卷积神经网络,重复多次,以得到预设初始规模的多个初始突变卷积神经网络组成初始种群;
P22、从初始种群中采用锦标赛选择方法选择一个初始突变卷积神经网络进行单次突变获得一代突变卷积神经网络并放回初始种群,重复多次,直至初始种群的规模达到预设的一代规模形成突变卷积神经网络的一代种群;
P23、从一代种群中采用锦标赛选择方法选择一个突变卷积神经网络进行单次突变获得二代突变卷积神经网络并放回一代种群同时淘汰一代种群中图像分类准确率最低的突变卷积神经网络,重复多次,直到一代种群中的图像分类准确率最高的卷积神经网络在预设的次数内均不发生变化,获得突变卷积神经网络的二代种群。
优选的,所述预设初始规模对应的初始种群的卷积神经网络数量为10~15,所述预设的一代规模对应的卷积神经网络数量为18~23。
优选的,本发明采用特定的数据集验证种群中卷积神经网络个体的适应度,以分析其图像分类准确率。本发明所用特定的数据集是在原始训练集上通过分层抽样,随机抽取10000张图像形成的验证集,通过该验证集来评估种群中个体的适应度,同时使用剩余的40000张图像对进化过程中的个体进行训练。使用图片标准化和归一化处理,并采用标准的数据增强进行数据增广,通过数据增广扩充了训练集规模,可以提高网络对目标数据集的训练准确率。
在步骤P3中,从步骤P2中的多个突变卷积神经网络中选择图像分类准确率最高的突变卷积神经网络作为搜索结果。
在步骤P4中,对搜索出的具有最高图像分类准确率的卷积神经网络进行后训练至收敛;
在步骤P5中,基于后训练得到的卷积神经网络更新搜索结果。
为了更好的理解本发明,下面结合示例详细说明本发明。
以一次搜索卷积神经网络ResNet-18对于CIFAR-10数据集的更优通道数为例,其中,预设的阈值为0.2%,预设初始种群规模为12,预设一代种群规模为20,其搜索过程包括如下步骤:
R1、构建ResNet-18的初始卷积神经网络,对初始网络使用SGDR(stochasticgradient descent with restarts带有余弦退火和重启动的随即梯度下降法)训练31轮,网络基本收敛。此处,SGDR的优点是可以用较少的轮次使初始卷积神经网络收敛到一个相对更好的结果。
R2、对步骤R1中训练至收敛的初始卷积神经网络进行12次突变,得到包括12个初始突变卷积神经网络的初始种群,其中,每一次突变均是随机从8个增量函数中选取一个增量函数,对初始卷积神经网络进行增量变换后训练至收敛得到一个初始突变卷积神经网络。具体地说,在突变时,先随机选择一个增量搜索函数,根据初始卷积神经网络每一层的通道数和所选择函数,计算每个卷积层通道数的拓宽数量,然后得到新的卷积层通道数规则,通过功能保持的拓宽操作,对每一个卷积层,逐一进行通道数的改变。这一过程,网络的通道数变化成为了新的通道数规律,此后的变化由于是功能保持的,所以在重新训练时非常高效。通道数规律是从拓宽后卷积神经网络通道数分布的结果反映出来的。例如,初始卷积神经网络共5层,每层通道数分别为32,32,32,32,32。拓宽后通道数规律可能会变为32,36,40,44,48。
R3、采用锦标赛选择方法从初始种群中选择一个初始突变卷积神经网络进行突变操作,对突变的新的卷积神经网络采用功能保持的方法训练15至收敛后放回初始种群,重复多次,直到种群规模达到20,形成一代种群。其中,锦标赛选择方法是从初始种群随机选择三个卷积神经网络,再从三个卷积神经网络中选择图像分类准确率最高的一个。
R4、继续采用锦标赛选择方法从一代种群中选择一个卷积神经网络进行突变操作,并训练15轮至收敛,采用验证集评估其适应度后将新卷积神经网络放回一代种群,同时淘汰一代种群中适应度最差的卷积神经网络,从而将种群大小保持在20;重复多次,直至突变后卷积神经网络在验证集上的最高适应度无变化为止,形成突变卷积神经网络的二代种群;
R5、待资源耗尽后,提取二代种群中在验证集上适应度最高的卷积神经网络进行后训练,再测试该卷积神经网络在测试集上的准确率。
其中,资源耗尽是指卷积神经网络模型变得很大,GPU显存溢出。在实际应用中,通常根据当经过很多轮次突变后最高适应度不再增长,基本收敛,就手动停止突变,然后从二代种群中选出适应度最高的卷积神经网络进行后训练。后训练是将我们选择出的最好的结构,在完整的训练集上训练到收敛,从而得到该模型的最好性能,再与其他模型进行比较,后训练可以使用Mixup、Autoaugment或Cutout这几种正则化方法,后训练使用全部训练集,并且训练轮次多,所以经后训练的网络性能比训练之前优,再测试该模型在测试集上的准确率。CIFAR数据集是本领域常用的分类数据集,测试集有50000张,测试集10000张,我们将测试集分割为40000测试,10000验证,最终网络在测试集上测试准确率,以保证公平,具体演化过程示意图如图4所示。图中横轴为搜索时间,左侧纵轴对应图中柱状图,表示搜索过程中种群适应度的占比,右侧纵轴对应图中折线图,表示搜索过程中种群中最高适应度个体的适应度变化,每个点是适应度最高的一个个体。
至此,上述搜索ResNet-18卷积神经网络通道数过程结束。
同理,在使用resnet-34、VGG-16、SE-Resnet-50作为特定网络进行搜索时,只需在上述步骤R1中,使用SGDR训练之前,先使用SGD(随机梯度下降法)训练30轮,SGD学习率设为0.1,然后再使用SGDR训练即可,其他步骤一样。
本发明的方法与传统卷积神经网络的效果对比见图5(所有模型适用Cutout正则化方法(遮挡大小为16*16)训练到收敛。训练的批大小为128,轮次511轮。SGDR的超参数:最大学习率lmax=0.1,初始重启轮次为T0=1,每次翻倍)。本发明使用很小的搜索资源(0.4~1.3个GPU-days,本发明使用一个Titan Xp GPU)可以搜索到更加有效的神经网络通道数分布规律。在CIFAR-10分类问题上,本发明的方法使用更少的参数大概可以提升0.5%的准确率,在CIFAR-100分类问题上,本发明方法使用更少地参数提高最多2.33%的准确率。
本发明适用于图像分类数据集上任何卷积神经网络的通道数搜索。与其他方式相比,本发明侧重于卷积神经网络通道数的搜索而不是神经网络结构连接方面,可以从一个初始小规模网络,在控制网络参数量的同时迅速搜索产生性能较高的卷积神经网络,并大大减少训练消耗。本发明实现了在控制网络参数量的同时迅速搜索出性能较高的卷积神经网络通道数分布规律,同时消耗更少的计算代价。通过本发明最终搜索到的卷积神经相较传统方法依托的卷积神经网络在测试集上的准确率更高,参数量更少。
需要说明的是,虽然上文按照特定顺序描述了各个步骤,但是并不意味着必须按照上述特定顺序来执行各个步骤,实际上,这些步骤中的一些可以并发执行,甚至改变顺序,只要能够实现所需要的功能即可。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (12)
1.一种基于通道数搜索卷积神经网络的方法,其特征在于,包括:
S1、构建与待优化卷积神经网络的卷积层层数相同的初始卷积神经网络,并将该初始卷积神经网络每层的初始通道数设为相同数值并使初始卷积神经网络的初始通道数不超过待优化卷积神经网络的最小通道数,训练该初始卷积神经网络至收敛;
S2、对经步骤S1训练后的初始卷积神经网络进行多次突变以得到多个突变卷积神经网络,其中,单次突变是从预设的增量函数中随机选择一个增量函数对该次突变中的卷积神经网络的卷积层通道数进行增量变换后训练至收敛得到一个突变卷积神经网络;
S3、从步骤S2中的多个突变卷积神经网络中选择图像分类准确率最高的突变卷积神经网络作为搜索结果。
2.根据权利要求1所述的一种基于通道数搜索卷积神经网络的方法,其特征在于,所述初始通道数大于等于待优化卷积神经网络的最小通道数的二分之一。
3.根据权利要求1所所述的一种基于通道数搜索卷积神经网络的方法,其特征在于,所述步骤S2中对经步骤S1训练后的初始卷积神经网络进行多次突变包括:
S21、以经步骤S1训练后的初始卷积神经网络为基础进行单次突变得到初始突变卷积神经网络,重复多次,以得到预设初始规模的多个初始突变卷积神经网络组成初始种群;
S22、从初始种群中采用锦标赛选择方法选择一个初始突变卷积神经网络进行单次突变获得一代突变卷积神经网络并放回初始种群,重复多次,直至初始种群的规模达到预设的一代规模形成突变卷积神经网络的一代种群;
S23、从一代种群中采用锦标赛选择方法选择一个突变卷积神经网络进行单次突变获得二代突变卷积神经网络并放回一代种群同时淘汰一代种群中图像分类准确率最低的突变卷积神经网络,重复多次,直到一代种群中的图像分类准确率最高的卷积神经网络在预设的次数内均不发生变化,获得突变卷积神经网络的二代种群。
4.根据权利要求3所述的一种基于通道数搜索卷积神经网络的方法,其特征在于,单次突变中的增量变换是指基于本次突变随机选择的增量函数,计算卷积神经网络每个卷积层通道数的增量,针对卷积神经网络的每个卷积层,以本次增量变换前该卷积层的通道数与本次计算出的该卷积层通道数的增量之和来更新其卷积层通道数。
5.根据权利要求4所述的一种基于通道数搜索卷积神经网络的方法,其特征在于,单次突变中将增量变换后的卷积神经网络训练至收敛是指对增量变换后的卷积神经网络进行多次训练,直到在某次训练后与该次训练前相比,其图像分类准确率的变化范围小于等预设阈值,判定该卷积神经网络已训练至收敛。
6.根据权利要求5所述的一种基于通道数搜索卷积神经网络的方法,其特征在于,单次突变中对增量变换后的卷积神经网络采用功能保持的方法对其进行训练,以本次突变前的卷积神经网络为教师网络进行功能保持的迁移学习得到的学生网络为收敛的突变卷积神经网络。
7.根据权利要求3所述的一种基于通道数搜索卷积神经网络的方法,其特征在于,所述预设初始规模对应的初始种群的卷积神经网络数量为10~15,所述预设的一代规模对应的卷积神经网络数量为18~23。
8.根据权利要求3所述的一种基于通道数搜索卷积神经网络的方法,其特征在于,所述方法还包括:
S4、对搜索出的具有最高图像分类准确率的卷积神经网络进行后训练至收敛;
S5、基于后训练得到的卷积神经网络更新搜索结果。
10.一种图像分类方法,其特征在于,使用权利要求1至9任一项所述的方法搜索出的卷积神经网络对图像数据进行分类。
11.一种计算机可读存储介质,其特征在于,其上包含有计算机程序,所述计算机程序可被处理器执行以执行权利要求1至9中任一项所述的方法的步骤。
12.一种电子设备,包括存储器和处理器,在所述存储器上存储有能够在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至9中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911282344.5A CN110991621A (zh) | 2019-12-13 | 2019-12-13 | 一种基于通道数搜索卷积神经网络的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911282344.5A CN110991621A (zh) | 2019-12-13 | 2019-12-13 | 一种基于通道数搜索卷积神经网络的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110991621A true CN110991621A (zh) | 2020-04-10 |
Family
ID=70093357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911282344.5A Pending CN110991621A (zh) | 2019-12-13 | 2019-12-13 | 一种基于通道数搜索卷积神经网络的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110991621A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112085070A (zh) * | 2020-08-19 | 2020-12-15 | 北京影谱科技股份有限公司 | 一种基于遗传算法的cnn图像分类方法及系统 |
CN112700446A (zh) * | 2021-03-23 | 2021-04-23 | 常州微亿智造科技有限公司 | 用于工业质检的算法模型训练方法和装置 |
WO2021258964A1 (zh) * | 2020-06-22 | 2021-12-30 | 华为技术有限公司 | 神经网络结构搜索的方法、装置与系统 |
CN113963338A (zh) * | 2020-07-03 | 2022-01-21 | 第四范式(北京)技术有限公司 | 针对图像中的文本识别的特征提取方法及装置 |
WO2022114913A1 (ko) * | 2020-11-30 | 2022-06-02 | 경희대학교 산학협력단 | 인공지능 기술을 이용한 적층형 저항 변화 메모리 소자의 계층 최적화 시스템 및 그 방법 |
-
2019
- 2019-12-13 CN CN201911282344.5A patent/CN110991621A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021258964A1 (zh) * | 2020-06-22 | 2021-12-30 | 华为技术有限公司 | 神经网络结构搜索的方法、装置与系统 |
CN113963338A (zh) * | 2020-07-03 | 2022-01-21 | 第四范式(北京)技术有限公司 | 针对图像中的文本识别的特征提取方法及装置 |
CN112085070A (zh) * | 2020-08-19 | 2020-12-15 | 北京影谱科技股份有限公司 | 一种基于遗传算法的cnn图像分类方法及系统 |
WO2022114913A1 (ko) * | 2020-11-30 | 2022-06-02 | 경희대학교 산학협력단 | 인공지능 기술을 이용한 적층형 저항 변화 메모리 소자의 계층 최적화 시스템 및 그 방법 |
CN112700446A (zh) * | 2021-03-23 | 2021-04-23 | 常州微亿智造科技有限公司 | 用于工业质检的算法模型训练方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110991621A (zh) | 一种基于通道数搜索卷积神经网络的方法 | |
CN109948029B (zh) | 基于神经网络自适应的深度哈希图像搜索方法 | |
US11556778B2 (en) | Automated generation of machine learning models | |
CN111758105A (zh) | 学习数据增强策略 | |
CN109583474B (zh) | 一种用于工业大数据处理的训练样本生成方法 | |
JP2023523029A (ja) | 画像認識モデル生成方法、装置、コンピュータ機器及び記憶媒体 | |
WO2022105108A1 (zh) | 一种网络数据分类方法、装置、设备及可读存储介质 | |
CN117313789A (zh) | 使用神经网络的黑盒优化 | |
CN115688913A (zh) | 一种云边端协同个性化联邦学习方法、系统、设备及介质 | |
CN114492279B (zh) | 一种模拟集成电路的参数优化方法及系统 | |
US20220366257A1 (en) | Small and Fast Video Processing Networks via Neural Architecture Search | |
CN111968744B (zh) | 基于贝叶斯优化的脑卒中与慢性病模型的参数优化方法 | |
CN115905691B (zh) | 一种基于深度强化学习的偏好感知推荐方法 | |
CN111340179A (zh) | 一种卷积神经网络拓扑方法 | |
CN113486963A (zh) | 一种密度自适应的点云端到端采样方法 | |
CN110222816B (zh) | 深度学习模型的建立方法、图像处理方法及装置 | |
CN111242176B (zh) | 计算机视觉任务的处理方法、装置及电子系统 | |
CN117058235A (zh) | 跨多种室内场景的视觉定位方法 | |
CN110866866A (zh) | 图像仿色处理方法、装置、电子设备及存储介质 | |
CN116258923A (zh) | 图像识别模型训练方法、装置、计算机设备和存储介质 | |
CN115619563A (zh) | 一种基于神经网络的股票价格分析方法 | |
CN114638823A (zh) | 基于注意力机制序列模型的全切片图像分类方法及装置 | |
CN114861917A (zh) | 贝叶斯小样本学习的知识图谱推理模型、系统及推理方法 | |
CN114494284A (zh) | 一种基于显式监督区域关系的场景解析模型及方法 | |
EP4386657A1 (en) | Image optimization method and apparatus, electronic device, medium, and program product |
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: 20200410 |
|
RJ01 | Rejection of invention patent application after publication |