CN115908909A - 基于贝叶斯卷积神经网络的进化神经架构搜索方法及系统 - Google Patents
基于贝叶斯卷积神经网络的进化神经架构搜索方法及系统 Download PDFInfo
- Publication number
- CN115908909A CN115908909A CN202211426782.6A CN202211426782A CN115908909A CN 115908909 A CN115908909 A CN 115908909A CN 202211426782 A CN202211426782 A CN 202211426782A CN 115908909 A CN115908909 A CN 115908909A
- Authority
- CN
- China
- Prior art keywords
- neural network
- layer
- convolutional
- evolutionary
- training
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Image Analysis (AREA)
Abstract
本发明提供一种基于贝叶斯卷积神经网络的进化神经架构搜索方法及系统,属于神经网络架构搜索技术领域,采用固定长度的整数编码策略编码搜索空间,输入预处理好的目标数据集,输出本发明系统得到的最优网络模型在目标数据集上的分类及KL散度结果;其中,所述最优网络模型由训练集训练得到。本发明将具有变分推理的贝叶斯卷积神经网络和神经网络架构搜索方法相结合,建立经过进化优化后的最优贝叶斯卷积神经网络有效解决了大规模分类任务中过拟合和无法提供不确定性度量的问题,能够在双目标中有更好的表现;在模型中加入了早停机制,大大减少了模型性能评估阶段的耗时,提高了模型训练的效率。
Description
技术领域
本发明涉及神经网络架构搜索技术领域,具体涉及一种基于贝叶斯卷积神经网络的进化神经架构搜索方法及系统。
背景技术
本部分的陈述仅仅是提供了与本公开相关的背景技术信息,不必然构成在先技术。
深度学习方法为计算机视觉和机器学习带来了革命性的进步。传统的深度神经网络已成功应用于许多领域,包括非常敏感的领域,如医疗健康,安全性,欺诈性交易等等。这些领域严重依赖于模型的预测准确性,甚至一个过度自信的决策也可能导致一个难以接受的结果,而当前神经网络架构中又缺少预测中的不确定性度量。此外,传统的神经网络存在两个问题:容易过拟合和对预测结果过度自信。引入贝叶斯的概念可以解决以上问题,即贝叶斯神经网络(Bayesian neural network)。
首先,贝叶斯神经网络将权重作为随机变量看待,不易过拟合。其次,贝叶斯神经网络能够产生不确定性的度量,而非仅给出一个判别结果。先验的加入相当于给网络提供了一种约束和正则,从而对于过度拟合更加鲁棒。相比于单点估计的神经网络,贝叶斯神经网络将服从某分布的随机变量作为权重,而不是固定值,前向传播就是从权值分布中抽样然后计算。因此,贝叶斯网络正是通过其概率分布形式的参数提供了不确定性估计,它在医疗诊断、文本和图像分类、决策支持系统、生物信息学等领域有着广泛的应用。
然而,贝叶斯神经网络带来优势的同时也带来了缺点:贝叶斯神经网络通常会具有更多的参数,并且在大规模数据集上的分类或者回归问题中的表现相比于普通神经网络没有太大优势。因此,为了设计出表现性能优越的贝叶斯网络,在贝叶斯网络的基础上做神经架构搜索是非常有必要的。
神经网络架构搜索(Neural Network Architecture Search,NAS)是近年来兴起的自动化机器学习的重要组成部分。神经网络架构搜索旨在通过人为进行一些限定,让机器能够在一定范围内自动对输入的深度学习任务进行自动模型构建和性能评估,并最终产出一个针对该研究问题的神经网络架构,作为整个算法的产出,从而达到降低人工干预,实现机器自动化,获取高性能模型的目的。NAS方法由三个部分组成:(1)搜索空间,它定义了优化问题的变量,即定义了NAS方法原则上可以搜索到的神经网络架构的集合;(2)搜索策略,即如何在搜索空间中寻找最优网络结构的方法;(3)性能评估策略,即在搜索过程中如何评估生成的架构。不同NAS组件的相互作用如图一所示。现有的大多数文献的做法是基于强化学习(RL)的NAS、基于进化算法(EA)的NAS和基于梯度的方法(如DARTS),这些方法大都不具有不确定性量化能力,并且它们只关注架构的拓扑和构建块,而忽略了网络层的参数对模型评估也至关重要。
发明内容
本发明提供了基于贝叶斯卷积神经网络的进化神经架构搜索方法及系统,以解决上述背景技术中存在的至少一项技术问题。
为了实现上述目的,本发明采取了如下技术方案:
第一方面,本发明提供一种基于贝叶斯卷积神经网络(Bayesian ConvolutionNeural Network,BCNN)的进化神经架构搜索方法,包括:
数据预处理阶段,所述数据为CIFAR10和CIFAR100数据集,采用pytorch加载和预处理这两个数据集。CIFAR-10数据集由10个类的60000个32x32彩色图像组成,每个类有6000个图像。有5万张训练图片和1万张测试图片。数据集分为五个训练批次和一个测试批次,每个测试批次有10000个图像。测试批次包含从每个类中随机选择的1000个图像。训练批包含随机顺序的剩余图像,但某些训练批次可能包含一个类的图像多于另一个类的图像。
其中,训练批次包含每个类的5000幅图像。CIFAR100数据集有100个类。每个类有600张大小为32×32的彩色图像,其中500张作为训练集,100张作为测试集。对于每一张图像,它有fine labels和coarse labels两个标签,分别代表图像的细粒度和粗粒度标签。
编码搜索空间,将神经网络编码为一个具有15维基因位的个体。受先前的贝叶斯卷积神经网络的启发,我们定义了一个含有贝叶斯变分推理的搜索空间,它包括五个激活函数,三个卷积层和多达三个完全连接的层,在相邻卷积层之间采用最大池化操作,以减小特征图的空间大小。
优选的,所述贝叶斯卷积神经网络包括依次连接的前向层、后向层、卷积层c1、激活函数层a1、最大池化层m1、卷积层c2、激活函数层a2、最大池化层m2、卷积层c3、激活函数层a3、最大池化层m3、全连接层f1、Softplus激活函数层、全连接层f2、Softplus激活函数层、全连接层f3和输出层。
优选的,所述前向层,用于向前推算;所述后向层,用于向后推算;
进一步地,所述卷积层c1、卷积层c2以及卷积层c3用于特征提取。
进一步地,所述激活函数层a1、激活函数层a2以及激活函数层a3用于增添非线性元素,增强模型的泛化能力。
进一步地,所述最大池化层m1、最大池化层m2以及最大池化层m3用于过滤一些不重要的特征信息。
进一步地,所述Softplus层用于将全连接层f1及全连接层f2的输出值映射到[0,1]的范围;
进一步地,所述全连接层f1、全连接层f2以及全连接层f3用于高纯度地提取特征以及模型在最后用于图像二分类。
其中,编码策略定义了基因型-表现型,这是使用进化算法来优化神经网络结构所必需的。在这里,基因型是遗传编码,表现型是不同的神经网络结构。在我们的工作中采用一种固定长度的整数编码方案来编码搜索空间,每一个基因位都代表一个可以在某些先验知识的范围内随机取值的参数,这些参数既包好网络层内的,也包含网络层与层之间的。所有的基因位取值完成就生成了一个对应的神经网络架构,当编码的神经网络个体数量达到所设置的种群最大规模时,就标志着搜索空间的设计已完成。
提供非支配排序遗传算法(Non-dominated Sorting Genetic Algorithm-II,NSGAII)作为进化策略来引导神经网络架构的优化方向;
当引入了进化算法的思想来优化神经网络架构,我们就可以将一个神经网络看作是种群中的一个个体。基于所提出的编码策略,种群被随机初始化,其中每个个体代表一个候选的神经网络结构。利用个体之间的交叉、变异实现对种群的迭代优化。
第二方面,本发明提供一种基于贝叶斯卷积神经网络的进化神经架构搜索系统,包括:
数据预处理模块,用于获取用来训练贝叶斯卷积神经网络的数据集,并利用pytorch进行加载和预处理,使得该数据集可以用于训练我们的网络;
所述训练集包括CIFAR10和CIFAR100;其中,
CIFAR-10数据集由10个类的60000个32x32彩色图像组成,每个类有6000个图像。有5万张训练图片和1万张测试图片;
CIFAR100数据集有100个类。每个类有600张大小为32×32的彩色图像,其中500张作为训练集,100张作为测试集;
编码模块,用于将神经网络编码为一个具有15维基因位的个体;其中,
每一个基因位都代表一个可以在某些先验知识的范围内随机取值的参数,这些参数既包好网络层内的,也包含网络层与层之间的;所有的基因位取值完成就生成了一个对应的神经网络架构,当编码的神经网络个体数量达到所设置的种群最大规模时,就标志着搜索空间的设计已完成;
所述被采样的网络将被用数据集进行充分训练,训练好的贝叶斯卷积神经网络个体加入到之后的进化迭代优化过程中。
进化优化模块,利用所提出的编码策略,种群被随机初始化,其中每个个体代表一个候选的神经网络结构。首先,随机生成一个大小为N的初始种群。在神经网络个体的训练期间,为了缩短性能评估带来的时间损耗,我们将训练轮次(epoch)缩减一半,对初始种群中的每个个体都在训练集(Dtrain)上进行训练,然后对其在验证集(Dvalid)上进行评估得到每个个体的适应度值。
随后,利用二元锦标赛选择方法从种群中选择两个亲本个体进行交叉变异生成两个后代。这个过程重复直到N个后代个体生成以形成子代种群,子代种群的训练与评估同初始种群相同。在环境选择的时候,将父代种群和子代种群合并形成一个大小为2N的集合种群,记录下表现最好的个体和它的适应度值,并从集合种群中选出最好的N个个体作为下一代的亲本群体。
第三方面,本发明提供一种早停机制,所述早停机制即当神经网络的性能在几代之内不再有明显提高的时候就停止进化算法的迭代。
第四方面,本发明提供了多目标来综合衡量所设计的神经网络的性能。将分类准确率和KL散度值作为两个目标指导种群的进化优化。
所述KL散度,是一个用来衡量两个概率分布的相似性的一个度量指标。由于贝叶斯卷积神经网络是将服从某分布的随机变量作为权重,所以可以理解为近似估计的概率分布和数据整体真实的概率分布的相似度,或者说差异程度,可以用KL散度来表示,即KL散度越低,代表我们设计出来的神经网络的性能更稳定更具有鲁棒性。
本发明有益效果:将具有变分推理的贝叶斯卷积神经网络和神经架构搜索方法结合起来应用到图像分类及检测上,无需人工设计网络来进行分类,而是直接根据指定的数据集和应用场景自动地构建一个准确高效地神经网络来进行甄别。建立贝叶斯卷积神经网络在一定程度上解决了训练过程中的过拟合问题。对贝叶斯卷积神经网络进行重新编码从而实现参数随机化的目的,有助于减少人为预定义偏见的引入,能够在更大的搜索空间中找到性能表现更加出色的模型。在模型中加入了早停机制,其作用是减少不必要的训练和性能评估时间,进而提高效率,达到快速搜索到最优网络的目的。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所述的不同NAS组件的相互作用示意图。
图2为本发明实施例所述的基于贝叶斯卷积神经网络的进化神经架构搜索框架流程图。
图3为本发明实施例所述的编码搜索空间中神经网络个体的示意图。
图4为本发明实施例所述的一个候选神经网络实例图。
图5为本发明实施例所述的在CIFAR100上准确率的实验结果对比图。
图6为本发明实施例所述的在CIFAR100上KL散度的实验结果对比图。
图7为本发明实施例所述的在CIFAR10上准确率的实验结果对比图。
图8为本发明实施例所述的在CIFAR10上KL散度的实验结果对比图。
具体实施方式
下面详细叙述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。
还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件和/或它们的组。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
为便于理解本发明,下面结合附图以具体实施例对本发明作进一步解释说明,且具体实施例并不构成对本发明实施例的限定。
本领域技术人员应该理解,附图只是实施例的示意图,附图中的部件并不一定是实施本发明所必须的。
实施例1
本发明实施例1提供一种基于贝叶斯卷积神经网络的固定长度整数编码系统,该系统包括:
数据预处理模块,用于获取用来训练贝叶斯卷积神经网络的数据集,并利用pytorch进行加载和预处理,使得该数据集可以用于训练我们的网络;
所述训练集包括CIFAR10和CIFAR100;其中,
CIFAR-10数据集由10个类的60000个32x32彩色图像组成,每个类有6000个图像。有5万张训练图片和1万张测试图片;
CIFAR100数据集有100个类。每个类有600张大小为32×32的彩色图像,其中500张作为训练集,100张作为测试集;
编码模块,用于将神经网络编码为一个具有15维基因的个体;其中,
每一个基因位都代表一个可以在某些先验知识的范围内随机取值的参数,这些参数既包好网络层内的,也包含网络层与层之间的;所有的基因位取值完成就生成了一个对应的神经网络架构,当编码的神经网络个体数量达到所设置的种群最大规模时,就标志着搜索空间的设计已完成;
所述被采样的网络将被用数据集进行充分训练,训练好的贝叶斯卷积神经网络个体加入到之后的进化迭代优化过程中。
在本实施例1中,利用上述的基于贝叶斯卷积神经网络的固定长度整数编码系统实现了贝叶斯卷积神经网络个体的编码方法,包括:
编码搜索空间,将神经网络编码为一个具有15维基因位的个体。受先前的贝叶斯卷积神经网络的启发,我们定义了一个含有贝叶斯变分推理的搜索空间,它包括五个激活函数,三个卷积层和多达三个完全连接的层,在相邻卷积层之间采用最大池化操作,以减小特征图的空间大小。
在本实施例1中,编码策略定义了基因型-表现型,这是使用进化算法来优化神经网络结构所必需的。在这里,基因型是遗传编码,表现型是不同的神经网络结构。
本实例采用一种固定长度的整数编码方案来编码搜索空间,每一个基因位都代表一个可以在某些先验知识的范围内随机取值的参数,这些参数既包好网络层内的,也包含网络层与层之间的。
对所有的基因位取值完成就生成了一个对应的神经网络架构,当编码的神经网络个体数量达到所设置的种群最大规模时,就标志着搜索空间的设计已完成。
在本实施例1中,如图2所示,所述被编码的贝叶斯卷积网络包括依次连接的前向层、后向层、卷积层c1、激活函数层a1、最大池化层m1、卷积层c2、激活函数层a2、最大池化层m2、卷积层c3、激活函数层a3、最大池化层m3、全连接层f1、Softplus激活函数层、全连接层f2、Softplus激活函数层、全连接层f3和输出层。
在本实施例1中,所述前向层,用于向前推算;所述后向层,用于向后推算;所述卷积层c1、卷积层c2以及卷积层c3用于特征提取;所述激活函数层a1、激活函数层a2以及激活函数层a3用于增添非线性元素,增强模型的泛化能力;所述最大池化层m1、最大池化层m2以及最大池化层m3用于过滤一些不重要的特征信息;所述Softplus层用于将全连接层f1及全连接层f2的输出值映射到[0,1]的范围;进一步地,所述全连接层f1、全连接层f2以及全连接层f3用于高纯度地提取特征以及模型在最后用于图像二分类。
实施例2
本实施例2提供了基于贝叶斯卷积神经网络的进化神经架构搜索系统.
如图3所示,基于贝叶斯卷积神经网络的进化神经架构搜索系统(BCNN-EvoNAS),包括:
预处理模块,其被配置为:用pytorch加载和预处理目标数据集;
编码模块,其被配置为:将神经网络编码为一个具有15维基因位的个体;每一个基因位都代表一个可以在某些先验知识的范围内随机取值的参数,这些参数既包好网络层内的,也包含网络层与层之间的;所有的基因位取值完成就生成了一个对应的神经网络架构;
进化优化模块,其被配置为:将编码好的所有候选神经网络结构依次随机采样放到训练数据集上进行训练,个体训练完成后被送到验证集上评估得到适应度值并继续交叉变异产生子代种群。
所述进化优化的具体实现过程包括:
在本实施例2中,所述神经网络个体的训练方法;具体包括:
在神经网络个体的训练期间,为了缩短性能评估带来的时间损耗,我们将训练轮次(epoch)缩减一半,对初始种群中的每个个体都在训练集(Dtrain)上进行训练,然后对其在验证集(Dvalid)上进行评估得到每个个体的适应度值。
在本实施例2中,所述训练完成的个体生成子代种群;具体包括:
利用二元锦标赛选择方法从种群中选择两个亲本个体进行交叉变异生成两个后代。这个过程重复直到N个后代个体生成以形成子代种群,子代种群的训练与评估同初始种群相同。
在环境选择的时候,将父代种群和子代种群合并形成一个大小为2N的集合种群,记录下表现最好的个体和它的适应度值,并从集合种群中选出最好的N个个体作为下一代的亲本群体。
在本实施例2中,所述在环境选择期间得到下一代亲本群体,具体包括:
将父代种群和子代种群合并形成一个大小为2N的集合种群,记录下表现最好的个体和它的适应度值,并从集合种群中选出最好的N个个体作为下一代的亲本群体。
在本实施例2中,如图3实例图所示,所述贝叶斯卷积神经网络,其网络结构包括:
依次连接的前向层、后向层、卷积层c1、激活函数层a1、最大池化层m1、卷积层c2、激活函数层a2、最大池化层m2、卷积层c3、激活函数层a3、最大池化层m3、全连接层f1、Softplus激活函数层、全连接层f2、Softplus激活函数层、全连接层f3和输出层。
其中,所述前向层,用于向前推算;所述后向层,用于向后推算;所述卷积层c1、卷积层c2以及卷积层c3用于特征提取;所述激活函数层a1、激活函数层a2以及激活函数层a3用于增添非线性元素,增强模型的泛化能力;所述最大池化层m1、最大池化层m2以及最大池化层m3用于过滤一些不重要的特征信息;所述Softplus层用于将全连接层f1及全连接层f2的输出值映射到[0,1]的范围;进一步地,所述全连接层f1、全连接层f2以及全连接层f3用于高纯度地提取特征以及模型在最后用于图像二分类。
在本实施例2中,得到训练好的最优贝叶斯卷积神经网络,训练步骤包括:
构建训练集、验证集和测试集;
构建具有变分推理的贝叶斯卷积神经网络;
利用训练集和测试集,对贝叶斯卷积神经网络网络进行训练、验证和测试,当损失函数达到最小值,或者迭代次数满足设定要求时,停止训练,得到训练好的最优贝叶斯卷积神经网络。
在训练过程中,基于目标数据集将数据集分成8:2,其中80%为训练数据集,其余20%为测试数据集,数据集为CIFAR10和CIFAR100包含的各类图片。
在本实施例2中,引用了一个神经网络架构搜索过程,对编码的神经网络个体不断地迭代优化搜索,具体的运行规则是:
该公式是NAS被建模后的数学表达式。其中S是神经模型的搜索空间,w是神经模型的权重。NAS的目标是根据第二个公式在验证数据集Dvalid上找到性能最好的架构,权值w* A可以通过在训练数据集Dtrain上训练神经模型A得到。测试数据集Dtest仅用于测试最终的CNN体系结构的性能。
模型BCNN-EvoNAS的初始输入为目标数据集的图像。经过三层卷积层和最大池化层进行特征的提取和过滤,后经过随机选择的激活函数层的非线性变化,再加上Softplus激活函数和全连接层,就形成了本实施例2中的模型架构。
本实施例2中,为了验证所提出的方法BCNN-EvoNAS,我们使用一个3080TiGPU直接在CIFAR-10和CIFAR100这两个数据集上搜索和评估了所提出的方法,并进行了对比实验。CIFAR-10和CIFAR-100都包含50k训练图像和10k测试图像,大小为32×32像素,分别有10个和100个类。在CIFAR-100上搜索时,我们遵循NAS方法的常见做法,随机拿出80%的原始训练集进行训练,而使用剩下的20%进行验证。在初始化种群阶段,我们把种群规模K设为100,学习速率设置为0.001,批量大小为256,每一代都用Adam优化器进行100个epoch的训练,直到找到最优的模型再进行完整的200个epoch的训练及评估。
如图4所示,为了创建搜索空间,我们在原来的Bayesian3Conv3FC模型的基础上做了改进,具体的做法是将层与层及层内的相关参数在某些先验知识的范围内随机化。每个参数的可能取值如下:卷积核的输出通道数:{8,16,32,64,128};卷积核的大小{1×1,2×2,3×3,5×5};填充值大小:{0,1,2,3};步长大小:{1,2,3},激活函数类型:{Softplus,Relu,LeakyRelu,Tanh}。由于我们没有通过定义体系结构的外部骨架或层数来限制搜索,因此搜索空间非常复杂。也正因如此,我们可以充分对搜索空间进行探索,并探究出这些相关参数对网络模型评估的影响。
本实施例2中,将BCNN-EvoNAS找到的最佳模型在CIFAR-100的完整训练数据集上训练200个epoch。如图5、图6、图7、图8所示,通过跟原贝叶斯卷积网络的实验对比发现,我们搜寻到的模型架构在前期收敛速度不如原模型快,但随着训练的进行,其找到的模型不管在准确率上还是KL散度方面的表现都超过了原来的模型。在CIFAR100上,BCNN-EvoNAS的模型的准确率超过了原模型2.76%,我们的模型的KL散度在初期的收敛速度几乎相同,后期的KL散度明显低于了原模型。
我们进一步将CIFAR-100上搜索到最佳模型迁移到CIFAR10上,以验证我们的方法的通用性。在CIFAR-10上,我们的模型比原模型的准确率提高了3.90%,它的KL散度从训练开始到最后结束的整个过程一直都比原模型的KL散度低。在这两个数据集上,BCNN-EvoNAS充分地显示了最佳的精度-KL散度权衡。
由图5、图6、图7、图8展示的结果可以看出,本实施例2所述的基于贝叶斯卷积神经网络的进化神经架构搜索系统准确率、KL散度均优于原方法。
实施例3
本发明实施例3提供一种早停机制,所述早停机制即当神经网络的性能在几代之内不再有明显提高的时候就停止进化算法的迭代。该方法包括:
在模型的性能评估阶段采用早停机制来进一步防止过拟合,即设定一个限定世代数的计数值Count,当模型在验证集上预测的准确率在几代之内不再明显变化就停止训练。
实施例4
本发明实施例4提供了多目标来综合衡量所设计的神经网络的性能。将分类准确率和KL散度值作为两个目标指导种群的进化优化。具体方法包括:
所述KL散度,是一个用来衡量两个概率分布的相似性的一个度量指标。由于贝叶斯卷积神经网络是将服从某分布的随机变量作为权重,所以可以理解为近似估计的概率分布和数据整体真实的概率分布的相似度,或者说差异程度,可以用KL散度来表示,即KL散度越低,代表我们设计出来的神经网络的性能更稳定更具有鲁棒性。在两个目标数据集CIFAR10和CIFAR100上,BCNN-EvoNAS充分地显示了最佳的精度-KL散度权衡。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本公开的优选实施例而已,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
上述虽然结合附图对本公开的具体实施方式进行了描述,但并非对本公开保护范围的限制,所属领域技术人员应该明白,在本发明公开的技术方案的基础上,本领域技术人员在不需要付出创造性劳动即可做出的各种修改或变形,都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种基于贝叶斯卷积神经网络的进化神经架构搜索方法,其特征在于,包括:
编码搜索空间,将神经网络编码为一个具有15维基因位的个体;其中,受先前的贝叶斯卷积神经网络的启发,我们定义了一个含有贝叶斯变分推理的搜索空间,它包括五个激活函数,三个卷积层和多达三个完全连接的层,在相邻卷积层之间采用最大池化操作,以减小特征图的空间大小。
2.根据权利要求1所述的基于贝叶斯卷积神经网络的进化神经架构搜索方法,其特征在于:
采用一种固定长度的整数编码方案来编码搜索空间,每一个基因位都代表一个可以在某些先验知识的范围内随机取值的参数,这些参数既包好网络层内的,也包含网络层与层之间的,
所有的基因位取值完成就生成了一个对应的神经网络架构,当编码的神经网络个体数量达到所设置的种群最大规模时,就标志着搜索空间的设计已完成。
3.根据权利要求2所述的基于贝叶斯卷积神经网络的进化神经架构搜索方法,其特征在于,训练所述贝叶斯卷积神经包括:
引入进化算法的思想来优化神经网络架构,我们就可以将一个神经网络看作是种群中的一个个体;
基于所提出的编码策略,种群被随机初始化,其中每个个体代表一个候选的神经网络结构,利用个体之间的交叉、变异实现对种群的迭代优化;
构建贝叶斯卷积神经网络,利用训练集的各类图片训练所述贝叶斯卷积神经网络,当损失函数达到最小值,或者迭代次数满足设定要求时,停止训练,得到训练好的最优贝叶斯卷积神经网络。
4.根据权利要求2所述的基于贝叶斯卷积神经网络的进化神经架构搜索方法,其特征在于,所述贝叶斯卷积神经网络包括依次连接的前向层、后向层、卷积层c1、激活函数层a1、最大池化层m1、卷积层c2、激活函数层a2、最大池化层m2、卷积层c3、激活函数层a3、最大池化层m3、全连接层f1、Softplus激活函数层、全连接层f2、Softplus激活函数层、全连接层f3和输出层。
5.根据权利要求4所述的基于贝叶斯卷积神经网络的进化神经架构搜索方法,其特征在于,所述前向层,用于向前推算;所述后向层,用于向后推算;所述卷积层c1、卷积层c2以及卷积层c3用于特征提取;所述激活函数层a1、激活函数层a2以及激活函数层a3用于增添非线性元素,增强模型的泛化能力;所述最大池化层m1、最大池化层m2以及最大池化层m3用于过滤一些不重要的特征信息;所述Softplus层用于将全连接层f1及全连接层f2的输出值映射到[0,1]的范围;进一步地,所述全连接层f1、全连接层f2以及全连接层f3用于高纯度地提取特征以及模型在最后用于图像二分类。
6.根据权利要求3所述的基于贝叶斯卷积神经网络的进化神经架构搜索方法,其特征在于,在训练和性能评估过程中,使用早停机制来进一步防止过拟合。
7.根据权利要求3所述的基于贝叶斯卷积神经网络的进化神经架构搜索方法,其特征在于,获取子代种群,利用二元锦标赛选择方法从种群中选择两个亲本个体进行交叉变异生成两个后代,
这个过程重复直到N个后代个体生成以形成子代种群,子代种群的训练与评估同初始种群相同。
8.一种基于贝叶斯卷积神经网络的进化神经架构搜索系统,其特征在于,包括:
预处理模块,用于获取用来训练贝叶斯卷积神经网络的数据集,并利用pytorch进行加载和预处理,使得该数据集可以用于训练我们的网络;
编码模块,于将神经网络编码为一个具有15维基因的个体;其中,
每一个基因位都代表一个可以在某些先验知识的范围内随机取值的参数,这些参数既包好网络层内的,也包含网络层与层之间的;所有的基因位取值完成就生成了一个对应的神经网络架构,当编码的神经网络个体数量达到所设置的种群最大规模时,就标志着搜索空间的设计已完成;
所述被采样的网络将被用数据集进行充分训练,训练好的贝叶斯卷积神经网络个体加入到之后的进化迭代优化过程中。
9.一种早停机制,所述早停机制即当神经网络的性能在几代之内不再有明显提高的时候就停止进化算法的迭代。
10.一种多目标设计方法来综合衡量所搜索到的最优神经网络的性能,将分类准确率和KL散度值作为两个目标指导种群的进化优化,KL散度,是一个用来衡量两个概率分布的相似性的一个度量指标,KL散度越低,代表我们设计出来的神经网络的性能更稳定更具有鲁棒性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211426782.6A CN115908909A (zh) | 2022-11-14 | 2022-11-14 | 基于贝叶斯卷积神经网络的进化神经架构搜索方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211426782.6A CN115908909A (zh) | 2022-11-14 | 2022-11-14 | 基于贝叶斯卷积神经网络的进化神经架构搜索方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115908909A true CN115908909A (zh) | 2023-04-04 |
Family
ID=86490894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211426782.6A Pending CN115908909A (zh) | 2022-11-14 | 2022-11-14 | 基于贝叶斯卷积神经网络的进化神经架构搜索方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115908909A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117152568A (zh) * | 2023-11-01 | 2023-12-01 | 常熟理工学院 | 深度集成模型的生成方法、装置和计算机设备 |
-
2022
- 2022-11-14 CN CN202211426782.6A patent/CN115908909A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117152568A (zh) * | 2023-11-01 | 2023-12-01 | 常熟理工学院 | 深度集成模型的生成方法、装置和计算机设备 |
CN117152568B (zh) * | 2023-11-01 | 2024-01-30 | 常熟理工学院 | 深度集成模型的生成方法、装置和计算机设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111898689B (zh) | 一种基于神经网络架构搜索的图像分类方法 | |
CN111798921B (zh) | 一种基于多尺度注意力卷积神经网络的rna结合蛋白预测方法及装置 | |
CN108334949B (zh) | 一种基于优化深度卷积神经网络结构快速进化的图像分类器构建方法 | |
Bibaeva | Using metaheuristics for hyper-parameter optimization of convolutional neural networks | |
CN115331732B (zh) | 基于图神经网络的基因表型训练、预测方法及装置 | |
CN112465120A (zh) | 一种基于进化方法的快速注意力神经网络架构搜索方法 | |
CN111400494B (zh) | 一种基于GCN-Attention的情感分析方法 | |
CN112508104A (zh) | 一种基于快速网络架构搜索的跨任务图像分类方法 | |
WO2022126448A1 (zh) | 一种基于演化学习的神经网络结构搜索方法和系统 | |
CN113033786B (zh) | 基于时间卷积网络的故障诊断模型构建方法及装置 | |
CN112084877A (zh) | 基于nsga-net的遥感图像识别方法 | |
CN115310664A (zh) | 基于基因调控遗传算法的rbf神经网络训练方法及预测系统 | |
Shang et al. | Evolutionary neural architecture search based on evaluation correction and functional units | |
CN115908909A (zh) | 基于贝叶斯卷积神经网络的进化神经架构搜索方法及系统 | |
CN114241267A (zh) | 基于结构熵采样的多目标架构搜索骨质疏松图像识别方法 | |
CN114792126A (zh) | 一种基于遗传算法的卷积神经网络设计方法 | |
CN113257359A (zh) | 一种基于CNN-SVR的CRISPR/Cas9向导RNA编辑效率预测方法 | |
CN114943866B (zh) | 基于进化神经网络结构搜索的图像分类方法 | |
CN112819161B (zh) | 变长基因遗传算法的神经网络构建系统、方法及存储介质 | |
Sanchez | Reconstructing our past˸ deep learning for population genetics | |
CN110162704B (zh) | 基于多因子遗传算法的多规模关键用户提取方法 | |
CN109858127B (zh) | 基于递归时序深度置信网络的蓝藻水华预测方法 | |
CN113139624A (zh) | 基于机器学习的网络用户分类方法 | |
CN113011091A (zh) | 一种自动分组的多尺度轻量型深度卷积神经网络优化方法 | |
CN111797988A (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 |