CN116796821A - 面向3d目标检测算法的高效神经网络架构搜索方法及装置 - Google Patents
面向3d目标检测算法的高效神经网络架构搜索方法及装置 Download PDFInfo
- Publication number
- CN116796821A CN116796821A CN202310799193.0A CN202310799193A CN116796821A CN 116796821 A CN116796821 A CN 116796821A CN 202310799193 A CN202310799193 A CN 202310799193A CN 116796821 A CN116796821 A CN 116796821A
- Authority
- CN
- China
- Prior art keywords
- architecture
- neural network
- network sub
- evaluation
- predictor
- 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
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 333
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 56
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000001514 detection method Methods 0.000 title claims abstract description 30
- 238000012549 training Methods 0.000 claims abstract description 175
- 238000013209 evaluation strategy Methods 0.000 claims abstract description 169
- 238000005070 sampling Methods 0.000 claims abstract description 26
- 238000011156 evaluation Methods 0.000 claims description 121
- 239000013598 vector Substances 0.000 claims description 23
- 230000015654 memory Effects 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 7
- 230000004927 fusion Effects 0.000 claims description 6
- 230000008569 process Effects 0.000 abstract description 16
- 238000004891 communication Methods 0.000 description 8
- 238000013527 convolutional neural network Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000035772 mutation Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000012512 characterization method Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010801 machine learning Methods 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
- 238000005457 optimization Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 108090000623 proteins and genes Proteins 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及一种面向3D目标检测算法的高效神经网络架构搜索方法及装置,方法包括:基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成其单次和零次评估策略,并分别评估每个神经网络子架构的性能,得到最优神经网络子架构,同时采用独立评估策略对最优神经网络子架构进行独立训练,得到至少一个神经网络子架构的性能预测器;获取至少一个神经网络子架构的延迟数据训练延迟预测器,基于性能预测器和延迟预测器,结合帕累托进化算法搜索得到最优神经网络架构。由此,解决了在搜索过程需要耗费大量计算资源,且网络架构搜索精度低、高延迟的问题,通过采用多种评估策略训练对应的性能预测器,提高了网络架构的搜索效率及精度。
Description
技术领域
本发明涉及3D目标检测技术领域,特别涉及一种面向3D目标检测算法的高效神经网络架构搜索方法及装置。
背景技术
深度学习是机器学习领域中最具影响力的方法之一,随着机器算力的不断提升,深度神经网络已经在各个领域被广泛应用。其中,卷积神经网络是受生物学中感受野机制的启发而提出的一种具有局部连接、权重共享、汇聚等特点的前馈神经网络,一般由卷积层、池化层、全连接层和Softmax等部分组成。卷积神经网络的架构设计对整个模型的表达能力有很大的影响,随着任务难度的提升,模型的规模正在不断变大,设计模型结构所需要的专家工作量也在变得越来越大,因此,使得人工设计神经网络变得愈发的困难,需要采取由计算机自动搜索合适的神经网络方案设计神经网络。
相关技术中,3D感知算法应用趋势越来越普及,无人驾驶车辆需要获取道路环境中车辆、行人等危险目标障碍物的准确3D信息,以保证行车安全。
然而,3D感知算法应用在实际部署时会产生不可忽略的延迟,在计算资源受限的车端计算平台上尤为明显,因此对自动驾驶的实时性数据处理不够友好。具体来说,在分类、目标检测等2D视觉任务中,骨干网络作为提取特征的部分占据着最多推理时间,同时,在2D视觉任务中常用量化、剪枝、神经网络架构搜索等手段来压缩骨干网络以减少延迟,使其在压缩后仍然保持较高的精度,但在3D视觉中,目前还没有可直接应用于3D点云感知算法的神经网络搜索方案,亟需解决。
发明内容
本申请提供一种面向3D目标检测算法的高效神经网络架构搜索方法及装置,以解决在搜索过程需要耗费大量计算资源,且网络架构搜索精度低、高延迟的等问题。
本申请第一方面实施例提供一种面向3D目标检测算法的高效神经网络架构搜索方法,包括以下步骤:
基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成所述至少一个神经网络子架构的单次评估策略和零次评估策略;
基于所述单次评估策略和所述零次评估策略,分别评估每个神经网络子架构的性能,并根据评估结果得到最优神经网络子架构,并采用独立评估策略对所述最优神经网络子架构进行独立训练,得到所述至少一个神经网络子架构的性能预测器;以及
获取所述至少一个神经网络子架构的延迟数据,根据所述延迟数据训练延迟预测器,并基于所述性能预测器和所述延迟预测器,结合预设的帕累托进化算法搜索所述至少一个神经网络子架构,得到最优神经网络架构。
根据本申请的一个实施例,所述基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成所述至少一个神经网络子架构的单次评估策略和零次评估策略,包括:
基于所述预先训练的超网模型,在所述超网模型中采样所述至少一个神经网络子架构,并通过所述超网模型权重参数共享得到所述至少一个神经网络子架构的权重参数;
根据所述至少一个神经网络子架构的权重参数生成所述至少一个神经网络子架构的单次评估策略和零次评估策略。
根据本申请的一个实施例,根据所述评估结果得到所述最优神经网络子架构之前,还包括:
基于所述至少一个神经网络子架构的所述单次评估策略和所述零次评估策略,分别训练单次评估预测器和零次评估预测器,得到所述单次评估预测器的训练结果和所述零次评估预测器的训练结果。
根据本申请的一个实施例,所述分别训练所述单次评估预测器和所述零次评估预测器,得到所述单次评估预测器的训练结果和所述零次评估预测器的训练结果,包括:
将所述至少一个神经网络子架构序列化为一个架构选项序列,并通过预设的编码器将所述架构选项序列转换为稠密向量;
根据所述稠密向量,分别通过所述单次评估策略和所述零次评估策略评估所述至少一个神经网络子架构,得到基于所述单次评估策略对应的至少一个神经网络子架构的性能对以及基于所述零次评估策略对应的至少一个神经网络子架构的性能对;
通过所述单次评估策略和所述零次评估策略训练所述单次评估预测器和所述零次评估预测器,分别得到所述单次评估预测器的训练结果和所述零次评估预测器的训练结果。
根据本申请的一个实施例,所述采用所述独立评估策略对所述最优神经网络子架构进行独立训练,得到所述至少一个神经网络子架构的性能预测器,包括:
根据稠密向量,采用所述独立评估策略评估所述最优神经网络子架构,得到基于独立评估策略对应的最优神经网络子架构的性能对;
通过所述独立评估策略训练所述最优神经网络子架构,得到所述独立评估策略训练结果,基于所述独立评估策略训练结果将所述单次评估预测器的训练结果和所述零次评估预测器的训练结果加权融合,得到所述至少一个神经网络子架构的性能预测器。
根据本申请的一个实施例,所述基于所述性能预测器和所述延迟预测器,结合所述预设的帕累托进化算法搜索所述至少一个神经网络子架构,得到所述最优神经网络架构,包括:
基于所述帕累托进化算法采样所述至少一个神经网络子架构形成种群,并对所述种群进行迭代;
选择所述种群中符合预设条件的所述至少一个神经网络子架构作为父本,并对所述父本进行突变得到突变后的所述至少一个神经网络子架构,并对所述突变后的所述至少一个神经网络子架构进行评估训练,将所述评估训练结果加入至所述种群,并记录所述训练结果;
基于所述记录的训练结果,选择所述训练结果中评分最高的所述神经网络子架构作为所述最优神经网络架构。
根据本申请实施例的面向3D目标检测算法的高效神经网络架构搜索方法,基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成其单次评估策略和零次评估策略,并分别评估每个神经网络子架构的性能,从而得到最优神经网络子架构,同时采用独立评估策略对最优神经网络子架构进行独立训练,得到至少一个神经网络子架构的性能预测器;获取至少一个神经网络子架构的延迟数据训练延迟预测器,并基于性能预测器和延迟预测器,结合预设的帕累托进化算法搜索至少一个神经网络子架构,从而得到最优神经网络架构。由此,解决了在搜索过程需要耗费大量计算资源,且网络架构搜索架构精度低、高延迟的问题,通过采用多种评估策略训练对应的性能预测器,提高了网络架构的搜索效率及精度。
本申请第二方面实施例提供一种面向3D目标检测算法的高效神经网络架构搜索装置,包括:
生成模块,用于基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成所述至少一个神经网络子架构的单次评估策略和零次评估策略;
训练模块,用于基于所述单次评估策略和所述零次评估策略,分别评估每个神经网络子架构的性能,并根据评估结果得到最优神经网络子架构,并采用独立评估策略对所述最优神经网络子架构进行独立训练,得到所述至少一个神经网络子架构的性能预测器;以及
获取模块,用于获取所述至少一个神经网络子架构的延迟数据,根据所述延迟数据训练延迟预测器,并基于所述性能预测器和所述延迟预测器,结合预设的帕累托进化算法搜索所述至少一个神经网络子架构,得到最优神经网络架构。
根据本申请的一个实施例,所述生成模块,具体用于:
基于所述预先训练的超网模型,在所述超网模型中采样所述至少一个神经网络子架构,并通过所述超网模型权重参数共享得到所述至少一个神经网络子架构的权重参数;
根据所述至少一个神经网络子架构的权重参数生成所述至少一个神经网络子架构的单次评估策略和零次评估策略。
根据本申请的一个实施例,根据所述评估结果得到所述最优神经网络子架构之前,所述训练模块,还用于:
基于所述至少一个神经网络子架构的所述单次评估策略和所述零次评估策略,分别训练单次评估预测器和零次评估预测器,得到所述单次评估预测器的训练结果和所述零次评估预测器的训练结果。
根据本申请的一个实施例,所述训练模块,具体用于:
将所述至少一个神经网络子架构序列化为一个架构选项序列,并通过预设的编码器将所述架构选项序列转换为稠密向量;
根据所述稠密向量,分别通过所述单次评估策略和所述零次评估策略评估所述至少一个神经网络子架构,得到基于所述单次评估策略对应的至少一个神经网络子架构的性能对以及基于所述零次评估策略对应的至少一个神经网络子架构的性能对;
通过所述单次评估策略和所述零次评估策略训练所述单次评估预测器和所述零次评估预测器,分别得到所述单次评估预测器的训练结果和所述零次评估预测器的训练结果。
根据本申请的一个实施例,所述训练模块,具体用于:
根据稠密向量,采用所述独立评估策略评估述最优神经网络子架构,得到基于独立评估策略对应的最优神经网络子架构的性能对;
通过所述独立评估策略训练所述最优神经网络子架构,得到所述独立评估策略训练结果,基于所述独立评估策略训练结果将所述单次评估预测器的训练结果和所述零次评估预测器的训练结果加权融合,得到所述至少一个神经网络子架构的性能预测器。
根据本申请的一个实施例,所述获取模块,具体用于:
基于所述帕累托进化算法采样所述至少一个神经网络子架构形成种群,并对所述种群进行迭代;
选择所述种群中符合预设条件的所述至少一个神经网络子架构作为父本,并对所述父本进行突变得到突变后的所述至少一个神经网络子架构,并对所述突变后的所述至少一个神经网络子架构进行评估训练,将所述评估训练结果加入至所述种群,并记录所述训练结果;
基于所述记录的训练结果,选择所述训练结果中评分最高的所述神经网络子架构作为所述最优神经网络架构。
根据本申请实施例的面向3D目标检测算法的高效神经网络架构搜索装置,基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成其单次评估策略和零次评估策略,并分别评估每个神经网络子架构的性能,从而得到最优神经网络子架构,同时采用独立评估策略对最优神经网络子架构进行独立训练,得到至少一个神经网络子架构的性能预测器;获取至少一个神经网络子架构的延迟数据训练延迟预测器,并基于性能预测器和延迟预测器,结合预设的帕累托进化算法搜索至少一个神经网络子架构,从而得到最优神经网络架构。由此,解决了在搜索过程需要耗费大量计算资源,且网络架构搜索架构精度低、高延迟的问题,通过采用多种评估策略训练对应的性能预测器,提高了网络架构的搜索效率及精度。
本申请第三方面实施例提供一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如上述实施例所述的面向3D目标检测算法的高效神经网络架构搜索方法。
本申请第四方面实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以用于实现如上述实施例所述的面向3D目标检测算法的高效神经网络架构搜索方法。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本申请实施例提供的一种面向3D目标检测算法的高效神经网络架构搜索方法的流程图;
图2为根据本申请一个实施例的性能预测器的训练示意图;
图3为根据本申请一个实施例的延迟预测器的训练过程示意图;
图4为根据本申请一个实施例的整体搜索示意图;
图5为根据本申请一个实施例的面向3D目标检测算法的高效神经网络架构搜索方框示意图;
图6为根据本申请实施例的电子设备的结构示意图。
具体实施方式
下面详细描述本发明的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参照附图描述根据本申请实施例的面向3D目标检测算法的高效神经网络架构搜索方法及装置,针对上述背景技术中提到的在搜索过程需要耗费大量计算资源,且网络架构搜索精度低、高延迟的问题,本申请提供了一种面向3D目标检测算法的高效神经网络架构搜索方法,在该方法中,基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成其单次评估策略和零次评估策略,并分别评估每个神经网络子架构的性能,从而得到最优神经网络子架构,同时采用独立评估策略对最优神经网络子架构进行独立训练,得到至少一个神经网络子架构的性能预测器;获取至少一个神经网络子架构的延迟数据训练延迟预测器,并基于性能预测器和延迟预测器,结合预设的帕累托进化算法搜索至少一个神经网络子架构,从而得到最优神经网络架构。由此,解决了在搜索过程需要耗费大量计算资源,且网络架构搜索架构精度低、高延迟的问题,通过采用多种评估策略训练对应的性能预测器,提高了网络架构的搜索效率及精度。
在介绍本申请实施例之前,首先介绍一下相关技术中网络架构的搜索方法,相关技术在对网络架构搜索的过程中面临一定的挑战,例如网络搜索空间大、每个网络架构评估耗时长等,网络搜索空间大对应的关键组件为搜索空间,每个网络架构评估耗时长对应的关键组件为评估策略和搜索策略。针对网络搜索空间大的问题,相关技术人员仍需要消耗大量计算资源进行网络搜索,无法满足实际应用需求,因此,针对网络架构评估耗时长提出了相应的解决方案。
具体而言,在网络搜索策略方面,可以通过预测器来预测网络架构的性能,其中,预测器为小型的、经过训练的神经网络,可以在极短的时间内完成对不同网络架构的性能评估,极大的提升了搜索效率。在网络训练过程中,需要获取网络架构-性能对作为训练数据,然而现有的基于预测器的方法时常因为评估架构耗时长而变得低效,当采用独立训练策略进行评估时会耗费大量的时间和资源,例如,如果一个独立模型需要训练80轮,构成预测器的训练数据通常需要上千个模型,这将需要上百个GPU(Graphics Processing Unit,图形处理器)天,因此,计算代价大,效率低。
进一步地,在评估策略方面,单次评估策略是一种较为高效的方法,一般的流程是在搜索空间中定义神经网络架构的集合,构造一个超网,每次在网络搜索空间采样出子网络,这些子网络架构直接从超网中继承权重,完成训练和推理。网络架构的评估本质上是获取模型权重并做测试的过程,单次评估策略的特点是只训练一个超网就可以向其所有的子网络架构通过参数共享进行评估,节省了单独训练每个子网络架构获取权重的时间。然而,一方面,从超网中直接取出的子网络架构很难具备较高的精度,无法直接使用;另一方面,子网络架构和独立训练策略的结果(真值)往往不具有很高的相关性,从而不能保证最终搜索的模型是最优的。零次评估策略是目前最快的评估策略,是一种基于元学习的神经网络架构搜索技术,通过学习不同任务之间的共性来加快搜索最优神经网络架构的过程,然而,零次评估策略更大程度上牺牲了准确性以换取评估速度,从而难以保证评估的质量。
因此,本申请实施例采用基于预测器的NAS(Network Attached Storage,网络附属存储)方法,综合不同评估策略的优点,首先,使用单次评估策略和零次评估策略作为评估方式,分别训练对应的性能预测器,随后仅使用少量的真值(独立评估策略的结果)对上述性能预测器的结果进行微调;其次,训练延迟预测器,以节省对于每个采样的网络架构都进行实际部署并测试延迟的时间;最后,使用性能预测器和延迟预测器,并结合帕累托进化算法进行多目标搜索,找到高性能、低延迟的最佳网络架构。由此,发挥了单次评估和零次评估效率高的优势,又通过少量的独立评估提升了结果的准确性,结合预测器和进化算法的高效搜索策略,在保证搜索结果的前提下大大节省了计算开销,为使本申请的实施方案更清晰明了,本申请的具体实施过程将在以下具体实施例中进行描述。
图1是本发明一个实施例的面向3D目标检测算法的高效神经网络架构搜索方法的流程示意图。
如图1所示,该面向3D目标检测算法的高效神经网络架构搜索方法包括以下步骤:
在步骤S101中,基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成至少一个神经网络子架构的单次评估策略和零次评估策略。
进一步地,在一些实施例中,基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成至少一个神经网络子架构的单次评估策略和零次评估策略,包括:基于预先训练的超网模型,在超网模型中采样至少一个神经网络子架构,并通过超网模型权重参数共享得到至少一个神经网络子架构的权重参数;根据至少一个神经网络子架构的权重参数生成至少一个神经网络子架构的单次评估策略和零次评估策略。
具体地,如图2所示,本申请实施例首先在搜索空间中定义神经网络架构的集合,根据集合构建超网模型,当超网模型表现收敛时,在超网模型中随机采样一个神经网络子架构,得到至少一个神经网络子架构的权重参数,其中,每采样一个神经网络子架构后,仅对该神经网络子架构的权重参数进行更新,其他权重参数保持不变,以完成对超网模型的训练和推理,从而根据至少一个神经网络子架构的权重参数生成至少一个神经网络子架构的单次评估策略和零次评估策略。
举例而言,本申请以CNN(Convolutional Neural Network,卷积神经网络)为例,CNN可以选择的维度有卷积核尺寸、宽度和深度,每个维度都可以自行定义不同的选项,神经网络子架构即由不同维度的选项组合而成。假设一个CNN网络有u个单元,每个单元的卷积核尺寸、宽度和深度的选项分别有k,w,d={x1,x2,…,xd}个,则搜索空间的大小N为:
由此可以看出N个神经网络子架构的权重都包含在超网模型中,每个神经网络子架构在评估时只需要从超网模型中共享相应的权重参数进行测试即可,该测试结果将用于训练单次评估预测器,从而提升神经网络子架构性能和真值之间的相关性。
需要说明的是,本申请实施例超网模型的权重参数共享是按照权重的绝对值大小进行选择的,但由于在不同的任务中很难保证神经网络子架构的绝对性能,因此,更可靠的办法是从超网模型中找到相对表现最佳的神经网络子架构,再对它进行独立训练。
在步骤S102中,基于单次评估策略和零次评估策略,分别评估每个神经网络子架构的性能,并根据评估结果得到最优神经网络子架构,并采用独立评估策略对最优神经网络子架构进行独立训练,得到至少一个神经网络子架构的性能预测器。
进一步地,在一些实施例中,根据评估结果得到最优神经网络子架构之前,还包括:基于至少一个神经网络子架构的单次评估策略和零次评估策略,分别训练单次评估预测器和零次评估预测器,得到单次评估预测器的训练结果和零次评估预测器的训练结果。
具体地,本申请实施例基于采样的至少一个神经网络子架构,分别通过单次评估策略和零次评估策略对每个神经网络子架构的性能进行评估,根据评估结果分别训练单次评估预测器和零次评估预测器,得到单次评估预测器的训练结果和零次评估预测器的训练结果。
进一步地,在一些实施例中,分别训练单次评估预测器和零次评估预测器,得到单次评估预测器的训练结果和零次评估预测器的训练结果,包括:将至少一个神经网络子架构序列化为一个架构选项序列,并通过预设的编码器将架构选项序列转换为稠密向量;根据稠密向量,分别通过单次评估策略和零次评估策略评估至少一个神经网络子架构,得到基于单次评估策略对应的至少一个神经网络子架构的性能对以及基于零次评估策略对应的至少一个神经网络子架构的性能对;通过单次评估策略和零次评估策略训练单次评估预测器和零次评估预测器,分别得到单次评估预测器的训练结果和零次评估预测器的训练结果。
其中,预设的编码器可以由本领域技术人员根据实际训练需求选用相应的编码器,在此不做具体限定。
具体地,本申请实施例通过至少一个神经网络子架构的单次评估策略和零次评估策略分别训练单次评估预测器和零次评估预测器的过程中,首先,将至少一个神经网络子架构序列化为一个架构选项序列,并通过预设的编码器将架构选项序列转换为稠密向量,如利用LSTM(Long Short-Term Memory,长短期记忆网络)编码器将架构选项序列转换为维度为20的稠密向量,即将离散的架构信息映射到连续的表征空间,编码后少一个神经网络子架构之间的相似性可以通过计算向量之间的距离来衡量;其次,根据稠密向量,分别通过单次评估策略和零次评估策略评估至少一个神经网络子架构,得到基于单次评估策略对应的至少一个神经网络子架构的性能对以及基于零次评估策略对应的至少一个神经网络子架构的性能对,并通过单次评估策略和零次评估策略分别训练单次评估预测器和零次评估预测器,从而分别得到单次评估预测器的训练结果和零次评估预测器的训练结果,并根据训练结果得到最优神经网络子架构。
进一步地,在一些实施例中,采用独立评估策略对最优神经网络子架构进行独立训练,得到至少一个神经网络子架构的性能预测器,包括:根据稠密向量,采用独立评估策略评估最优神经网络子架构,得到基于独立评估策略对应的最优神经网络子架构的性能对;通过独立评估策略训练最优神经网络子架构,得到独立评估策略训练结果,基于独立评估策略训练结果将单次评估预测器的训练结果和零次评估预测器的训练结果加权融合,得到至少一个神经网络子架构的性能预测器。
具体地,在本申请实施例中,由于独立评估策略获取神经网络子架构性能所需要的时间耗时长,因此本申请实施例根据稠密向量,通过独立评估策略对上述得到的最优神经网络子架构进行评估,得到基于独立评估策略对应的最优神经网络子架构的性能对,以对单次评估预测器和零次评估预测器进行微调,以提高预测器的准确性。
进一步地,本申请实施例通过独立评估策略训练最优神经网络子架构,得到独立评估策略训练结果,并基于独立评估策略训练结果利用MLP(Multi-Layer Perceptron,多层神经网络)和softmax将单次评估预测器的训练结果和零次评估预测器的训练结果加权融合,得到至少一个神经网络子架构的性能预测器。
在步骤S103中,获取至少一个神经网络子架构的延迟数据,根据延迟数据训练延迟预测器,并基于性能预测器和延迟预测器,结合预设的帕累托进化算法搜索至少一个神经网络子架构,得到最优神经网络架构。
进一步地,在一些实施例中,基于性能预测器和延迟预测器,结合预设的帕累托进化算法搜索至少一个神经网络子架构,得到最优神经网络架构,包括:基于帕累托进化算法采样至少一个神经网络子架构形成种群,并对种群进行迭代;选择种群中符合预设条件的至少一个神经网络子架构作为父本,并对父本进行突变得到突变后的至少一个神经网络子架构,并对突变后的至少一个神经网络子架构进行评估训练,将评估训练结果加入至种群,并记录训练结果;基于记录的训练结果,选择训练结果中评分最高的神经网络子架构作为最优神经网络架构。
其中,预设的帕累托进化算法和预设条件均可以为本领域技术人员根据实际训练需求采用的相关算法和条件,在此不做具体限定。
具体地,如图3所示,为节省对于每个采样的神经网络架构都进行实际部署并测试延迟的时间,本申请实施例还需要对延迟预测器进行训练,由于延迟预测器的训练过程相对简单,因此本申请实施例可以首先随机采样100个神经网络子架构并将其部署到端侧芯片来测试每个神经网络子架构的延迟,得到延迟数据,从而根据延迟数据训练延迟预测器;其次,基于性能预测器和延迟预测器,结合预设的帕累托进化算法进行多目标联合搜索至少一个神经网络子架构,以得到最优神经网络架构。
其中,进化算法是一类基于自然进化规律构建的计算模型,模拟生物进化机制对问题进行优化。其核心思想是通过迭代一个种群,选出其中优秀的个体作为父本,对其进行变异来不断对种群进行更新和优化。
进一步地,对神经网络架构搜索而言,一个神经网络架构即为一个个体,神经网络架构的性能即为判断该个体是否优秀的条件,突变则是指在神经网络架构的选项序列中随机改变一个或多个选项生成一个新的神经网络子架构,每次突变的基因个数需要提前指定,一般突变个数与神经网络架构选项序列的长度相关。
具体而言,如图4所示,本申请实施例基于性能预测器和延迟预测器,结合预设的帕累托进化算法进行多目标联合搜索至少一个神经网络子架构过程中,首先,从搜索空间随机采样P个神经网络架构形成种群,并对种群进行迭代;其次,在之后的每一轮迭代中,从该种群抽取S个神经网络架构使用性能预测器做性能评估训练,选择出得分最高的神经网络架构作为父本,并对该父本进行突变得到至少一个神经网络子架构,再对每个神经网络子架构进行评估训练并添加到种群,记录训练结果;最后,基于记录的训练结果,在种群更新结束后选择训练结果中评分最高的神经网络子架构作为最优神经网络架构。
进一步地,本申请实施例为减少每次抽取神经网络架构的重复性,可以在加入神经网络子架构后,从种群中去除最老的神经网络架构,保持种群大小不变。因此,可以借助性能预测器和延迟预测器来维护一个帕累托前沿集合实现多目标(性能、延迟)优化,选择出符合高精度、低延迟要求的最优神经网络架构。
根据本申请实施例的面向3D目标检测算法的高效神经网络架构搜索方法,基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成其单次评估策略和零次评估策略,并分别评估每个神经网络子架构的性能,从而得到最优神经网络子架构,同时采用独立评估策略对最优神经网络子架构进行独立训练,得到至少一个神经网络子架构的性能预测器;获取至少一个神经网络子架构的延迟数据训练延迟预测器,并基于性能预测器和延迟预测器,结合预设的帕累托进化算法搜索至少一个神经网络子架构,从而得到最优神经网络架构。由此,解决了在搜索过程需要耗费大量计算资源,且网络架构搜索架构精度低、高延迟的问题,通过采用多种评估策略训练对应的性能预测器,提高了网络架构的搜索效率及精度。
其次参照附图描述根据本申请实施例提出的面向3D目标检测算法的高效神经网络架构搜索装置。
图5是本申请实施例的面向3D目标检测算法的高效神经网络架构搜索装置的方框示意图。
如图5所示,该基于面向3D目标检测算法的高效神经网络架构搜索装置10包括:生成模块100、训练模块200和获取模块300。
其中,生成模块100,用于基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成至少一个神经网络子架构的单次评估策略和零次评估策略;
训练模块200,用于基于单次评估策略和零次评估策略,分别评估每个神经网络子架构的性能,并根据评估结果得到最优神经网络子架构,并采用独立评估策略对最优神经网络子架构进行独立训练,得到至少一个神经网络子架构的性能预测器;以及
获取模块300,用于获取至少一个神经网络子架构的延迟数据,根据延迟数据训练延迟预测器,并基于性能预测器和延迟预测器,结合预设的帕累托进化算法搜索至少一个神经网络子架构,得到最优神经网络架构。
进一步地,在一些实施例中,生成模块100,具体用于:
基于预先训练的超网模型,在超网模型中采样至少一个神经网络子架构,并通过超网模型权重参数共享得到至少一个神经网络子架构的权重参数;
根据至少一个神经网络子架构的权重参数生成至少一个神经网络子架构的单次评估策略和零次评估策略。
进一步地,在一些实施例中,根据评估结果得到最优神经网络子架构之前,训练模块200,还用于:
基于至少一个神经网络子架构的单次评估策略和零次评估策略,分别训练单次评估预测器和零次评估预测器,得到单次评估预测器的训练结果和零次评估预测器的训练结果。
进一步地,在一些实施例中,训练模块200,具体用于:
将至少一个神经网络子架构序列化为一个架构选项序列,并通过预设的编码器将架构选项序列转换为稠密向量;
根据稠密向量,分别通过单次评估策略和零次评估策略评估至少一个神经网络子架构,得到基于单次评估策略对应的至少一个神经网络子架构的性能对以及基于零次评估策略对应的至少一个神经网络子架构的性能对;
通过单次评估策略和零次评估策略训练单次评估预测器和零次评估预测器,分别得到单次评估预测器的训练结果和零次评估预测器的训练结果。
进一步地,在一些实施例中,训练模块200,具体用于:
根据所述稠密向量,采用独立评估策略评估最优神经网络子架构,得到基于独立评估策略对应的最优神经网络子架构的性能对;
通过所述独立评估策略训练所述最优神经网络子架构,得到独立评估策略训练结果,基于独立评估策略训练结果将单次评估预测器的训练结果和零次评估预测器的训练结果加权融合,得到至少一个神经网络子架构的性能预测器。
进一步地,在一些实施例中,获取模块300,具体用于:
基于帕累托进化算法采样至少一个神经网络子架构形成种群,并对种群进行迭代;
选择种群中符合预设条件的至少一个神经网络子架构作为父本,并对父本进行突变得到突变后的至少一个神经网络子架构,并对突变后的至少一个神经网络子架构进行评估训练,将评估训练结果加入至种群,并记录训练结果;
基于记录的训练结果,选择训练结果中评分最高的神经网络子架构作为最优神经网络架构。
根据本申请实施例的面向3D目标检测算法的高效神经网络架构搜索装置,基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成其单次评估策略和零次评估策略,并分别评估每个神经网络子架构的性能,从而得到最优神经网络子架构,同时采用独立评估策略对最优神经网络子架构进行独立训练,得到至少一个神经网络子架构的性能预测器;获取至少一个神经网络子架构的延迟数据训练延迟预测器,并基于性能预测器和延迟预测器,结合预设的帕累托进化算法搜索至少一个神经网络子架构,从而得到最优神经网络架构。由此,解决了在搜索过程需要耗费大量计算资源,且网络架构搜索架构精度低、高延迟的问题,通过采用多种评估策略训练对应的性能预测器,提高了网络架构的搜索效率及精度。
图6为本申请实施例提供的电子设备的结构示意图。该电子设备可以包括:
存储器601、处理器602及存储在存储器601上并可在处理器602上运行的计算机程序。
处理器602执行程序时实现上述实施例中提供的面向3D目标检测算法的高效神经网络架构搜索方法。
进一步地,电子设备还包括:
通信接口603,用于存储器601和处理器602之间的通信。
存储器601,用于存放可在处理器602上运行的计算机程序。
存储器601可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
如果存储器601、处理器602和通信接口603独立实现,则通信接口603、存储器601和处理器602可以通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(PeripheralComponent,简称为PCI)总线或扩展工业标准体系结构(Extended Industry StandardArchitecture,简称为EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器601、处理器602及通信接口603,集成在一块芯片上实现,则存储器601、处理器602及通信接口603可以通过内部接口完成相互间的通信。
处理器602可能是一个中央处理器(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上的面向3D目标检测算法的高效神经网络架构搜索方法。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不是必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (14)
1.一种面向3D目标检测算法的高效神经网络架构搜索方法,其特征在于,包括以下步骤:
基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成所述至少一个神经网络子架构的单次评估策略和零次评估策略;
基于所述单次评估策略和所述零次评估策略,分别评估每个神经网络子架构的性能,并根据评估结果得到最优神经网络子架构,并采用独立评估策略对所述最优神经网络子架构进行独立训练,得到所述至少一个神经网络子架构的性能预测器;以及
获取所述至少一个神经网络子架构的延迟数据,根据所述延迟数据训练延迟预测器,并基于所述性能预测器和所述延迟预测器,结合预设的帕累托进化算法搜索所述至少一个神经网络子架构,得到最优神经网络架构。
2.根据权利要求1所述的方法,其特征在于,所述基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成所述至少一个神经网络子架构的单次评估策略和零次评估策略,包括:
基于所述预先训练的超网模型,在所述超网模型中采样所述至少一个神经网络子架构,并通过所述超网模型权重参数共享得到所述至少一个神经网络子架构的权重参数;
根据所述至少一个神经网络子架构的权重参数生成所述至少一个神经网络子架构的单次评估策略和零次评估策略。
3.根据权利要求1所述的方法,其特征在于,根据所述评估结果得到所述最优神经网络子架构之前,还包括:
基于所述至少一个神经网络子架构的所述单次评估策略和所述零次评估策略,分别训练单次评估预测器和零次评估预测器,得到所述单次评估预测器的训练结果和所述零次评估预测器的训练结果。
4.根据权利要求3所述的方法,其特征在于,所述分别训练所述单次评估预测器和所述零次评估预测器,得到所述单次评估预测器的训练结果和所述零次评估预测器的训练结果,包括:
将所述至少一个神经网络子架构序列化为一个架构选项序列,并通过预设的编码器将所述架构选项序列转换为稠密向量;
根据所述稠密向量,分别通过所述单次评估策略和所述零次评估策略评估所述至少一个神经网络子架构,得到基于所述单次评估策略对应的至少一个神经网络子架构的性能对以及基于所述零次评估策略对应的至少一个神经网络子架构的性能对;
通过所述单次评估策略和所述零次评估策略训练所述单次评估预测器和所述零次评估预测器,分别得到所述单次评估预测器的训练结果和所述零次评估预测器的训练结果。
5.根据权利要求1所述的方法,其特征在于,所述采用所述独立评估策略对所述最优神经网络子架构进行独立训练,得到所述至少一个神经网络子架构的性能预测器,包括:
根据稠密向量,采用所述独立评估策略评估所述最优神经网络子架构,得到基于独立评估策略对应的最优神经网络子架构的性能对;
通过所述独立评估策略训练所述最优神经网络子架构,得到所述独立评估策略训练结果,基于所述独立评估策略训练结果将所述单次评估预测器的训练结果和所述零次评估预测器的训练结果加权融合,得到所述至少一个神经网络子架构的性能预测器。
6.根据权利要求1所述的方法,其特征在于,所述基于所述性能预测器和所述延迟预测器,结合所述预设的帕累托进化算法搜索所述至少一个神经网络子架构,得到所述最优神经网络架构,包括:
基于所述帕累托进化算法采样所述至少一个神经网络子架构形成种群,并对所述种群进行迭代;
选择所述种群中符合预设条件的所述至少一个神经网络子架构作为父本,并对所述父本进行突变得到突变后的所述至少一个神经网络子架构,并对所述突变后的所述至少一个神经网络子架构进行评估训练,将所述评估训练结果加入至所述种群,并记录所述训练结果;
基于所述记录的训练结果,选择所述训练结果中评分最高的所述神经网络子架构作为所述最优神经网络架构。
7.一种面向3D目标检测算法的高效神经网络架构搜索装置,其特征在于,包括:
生成模块,用于基于预先训练的超网模型,采样得到至少一个神经网络子架构,生成所述至少一个神经网络子架构的单次评估策略和零次评估策略;
训练模块,用于基于所述单次评估策略和所述零次评估策略,分别评估每个神经网络子架构的性能,并根据评估结果得到最优神经网络子架构,并采用独立评估策略对所述最优神经网络子架构进行独立训练,得到所述至少一个神经网络子架构的性能预测器;以及
获取模块,用于获取所述至少一个神经网络子架构的延迟数据,根据所述延迟数据训练延迟预测器,并基于所述性能预测器和所述延迟预测器,结合预设的帕累托进化算法搜索所述至少一个神经网络子架构,得到最优神经网络架构。
8.根据权利要求7所述的装置,其特征在于,所述生成模块,具体用于:
基于所述预先训练的超网模型,在所述超网模型中采样所述至少一个神经网络子架构,并通过所述超网模型权重参数共享得到所述至少一个神经网络子架构的权重参数;
根据所述至少一个神经网络子架构的权重参数生成所述至少一个神经网络子架构的单次评估策略和零次评估策略。
9.根据权利要求7所述的装置,其特征在于,根据所述评估结果得到所述最优神经网络子架构之前,所述训练模块,还用于:
基于所述至少一个神经网络子架构的所述单次评估策略和所述零次评估策略,分别训练单次评估预测器和零次评估预测器,得到所述单次评估预测器的训练结果和所述零次评估预测器的训练结果。
10.根据权利要求9所述的装置,其特征在于,所述训练模块,具体用于:
将所述至少一个神经网络子架构序列化为一个架构选项序列,并通过预设的编码器将所述架构选项序列转换为稠密向量;
根据所述稠密向量,分别通过所述单次评估策略和所述零次评估策略评估所述至少一个神经网络子架构,得到基于所述单次评估策略对应的至少一个神经网络子架构的性能对以及基于所述零次评估策略对应的至少一个神经网络子架构的性能对;
通过所述单次评估策略和所述零次评估策略训练所述单次评估预测器和所述零次评估预测器,分别得到所述单次评估预测器的训练结果和所述零次评估预测器的训练结果。
11.根据权利要求7所述的装置,其特征在于,所述训练模块,具体用于:
根据稠密向量,采用所述独立评估策略评估所述最优神经网络子架构,得到基于独立评估策略对应的最优神经网络子架构的性能对;
通过所述独立评估策略训练所述最优神经网络子架构,得到所述独立评估策略训练结果,基于所述独立评估策略训练结果将所述单次评估预测器的训练结果和所述零次评估预测器的训练结果加权融合,得到所述至少一个神经网络子架构的性能预测器。
12.根据权利要求7所述的装置,其特征在于,所述获取模块,具体用于:
基于所述帕累托进化算法采样所述至少一个神经网络子架构形成种群,并对所述种群进行迭代;
选择所述种群中符合预设条件的所述至少一个神经网络子架构作为父本,并对所述父本进行突变得到突变后的所述至少一个神经网络子架构,并对所述突变后的所述至少一个神经网络子架构进行评估训练,将所述评估训练结果加入至所述种群,并记录所述训练结果;
基于所述记录的训练结果,选择所述训练结果中评分最高的所述神经网络子架构作为所述最优神经网络架构。
13.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如权利要求1-6任一项所述的面向3D目标检测算法的高效神经网络架构搜索方法。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行,以用于实现如权利要求1-6任一项所述的面向3D目标检测算法的高效神经网络架构搜索方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310799193.0A CN116796821A (zh) | 2023-06-30 | 2023-06-30 | 面向3d目标检测算法的高效神经网络架构搜索方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310799193.0A CN116796821A (zh) | 2023-06-30 | 2023-06-30 | 面向3d目标检测算法的高效神经网络架构搜索方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116796821A true CN116796821A (zh) | 2023-09-22 |
Family
ID=88034392
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310799193.0A Pending CN116796821A (zh) | 2023-06-30 | 2023-06-30 | 面向3d目标检测算法的高效神经网络架构搜索方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116796821A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117689001A (zh) * | 2024-02-02 | 2024-03-12 | 中科方寸知微(南京)科技有限公司 | 基于零数据搜索的神经网络多粒度剪枝压缩方法及系统 |
-
2023
- 2023-06-30 CN CN202310799193.0A patent/CN116796821A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117689001A (zh) * | 2024-02-02 | 2024-03-12 | 中科方寸知微(南京)科技有限公司 | 基于零数据搜索的神经网络多粒度剪枝压缩方法及系统 |
CN117689001B (zh) * | 2024-02-02 | 2024-05-07 | 中科方寸知微(南京)科技有限公司 | 基于零数据搜索的神经网络多粒度剪枝压缩方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4080416A1 (en) | Adaptive search method and apparatus for neural network | |
CN112364981B (zh) | 一种混合精度神经网络的可微分搜索方法和装置 | |
CN114019370B (zh) | 基于灰度图像和轻量级cnn-svm模型的电机故障检测方法 | |
CN114332578A (zh) | 图像异常检测模型训练方法、图像异常检测方法和装置 | |
CN114791993B (zh) | 一种动力电池组soh预测方法及系统 | |
CN116796821A (zh) | 面向3d目标检测算法的高效神经网络架构搜索方法及装置 | |
CN115236519A (zh) | 基于隐马尔可夫模型的锂电池健康状态预测方法及装置 | |
CN112307667A (zh) | 一种蓄电池的荷电状态估算方法、装置、电子设备及存储介质 | |
CN116110022B (zh) | 基于响应知识蒸馏的轻量化交通标志检测方法及系统 | |
CN116363452B (zh) | 任务模型训练方法以及装置 | |
CN113139570A (zh) | 一种基于最优混合估值的大坝安全监测数据补全方法 | |
CN113640690A (zh) | 一种电动汽车动力电池剩余寿命预测方法 | |
Uyar et al. | The analysis and optimization of CNN Hyperparameters with fuzzy tree modelfor image classification | |
JP7488375B2 (ja) | ニューラルネットワークの生成方法、機器及びコンピュータ可読記憶媒体 | |
CN113807005A (zh) | 基于改进fpa-dbn的轴承剩余寿命预测方法 | |
Kumarappa et al. | Machine learning-based prediction of lithium-ion battery life cycle for capacity degradation modelling | |
CN115730529B (zh) | 基于工况识别的phet能量管理策略生成方法及系统 | |
CN115841132A (zh) | 模型生成方法、装置、设备和计算机可读存储介质 | |
CN115374926A (zh) | 神经网络的剪枝方法、装置、电子设备及存储介质 | |
CN115563521A (zh) | 一种电动汽车续驶里程估算方法、装置、设备及介质 | |
CN116070714A (zh) | 基于联邦学习和神经架构搜索的云边协同训练方法及系统 | |
CN116050480A (zh) | 电池数据的处理方法、机器学习模型的训练方法以及设备 | |
CN117710674A (zh) | 多代理辅助多目标粒子群优化粗糙聚类的图像分割方法 | |
CN117148161A (zh) | 一种基于云端神经网络的电池soc估算方法及装置 | |
CN117787378A (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 |