CN115130654A - 神经网络结构搜索方法、装置、计算机设备和存储介质 - Google Patents
神经网络结构搜索方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN115130654A CN115130654A CN202210545369.5A CN202210545369A CN115130654A CN 115130654 A CN115130654 A CN 115130654A CN 202210545369 A CN202210545369 A CN 202210545369A CN 115130654 A CN115130654 A CN 115130654A
- Authority
- CN
- China
- Prior art keywords
- training
- network structure
- sub
- sample
- network
- 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 79
- 238000000034 method Methods 0.000 title claims abstract description 73
- 238000012549 training Methods 0.000 claims abstract description 722
- 238000011156 evaluation Methods 0.000 claims abstract description 85
- 238000012216 screening Methods 0.000 claims abstract description 35
- 238000012545 processing Methods 0.000 claims abstract description 24
- 238000004590 computer program Methods 0.000 claims description 22
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 238000005516 engineering process Methods 0.000 abstract description 19
- 238000013473 artificial intelligence Methods 0.000 abstract description 16
- 230000008569 process Effects 0.000 description 19
- 238000003062 neural network model Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000010801 machine learning Methods 0.000 description 6
- 238000005457 optimization Methods 0.000 description 6
- 241000282414 Homo sapiens Species 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 208000000044 Amnesia Diseases 0.000 description 2
- 208000031091 Amnestic disease Diseases 0.000 description 2
- 230000006986 amnesia Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 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/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
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)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及一种神经网络结构搜索方法、装置、计算机设备和存储介质。所述方法可应用于云技术、人工智能、智慧交通和辅助驾驶等场景,包括:根据全量训练集对基础网络结构的训练结果,从全量训练集中确定出包括遗忘样本和部分非遗忘样本的代理数据集,基于代理数据集,对基于基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构。从训练后的超网结构中筛选出预设数目个子网络结构,根据代理数据集对各子网络结构进行从零训练,获得训练后的子网络结构,对训练后的各子网络结构进行评测处理,基于评测结果确定目标网络结构。采用本方法可提升网络训练速度,同时避免遗忘样本丢失,维持模型搜索精度,以保障目标网络结构符合实际需求。
Description
技术领域
本申请涉及人工智能技术领域,特别是涉及一种神经网络结构搜索方法、装置、计算机设备和存储介质。
背景技术
随着人工智能技术的发展,以及对于不同应用程序或者产品的更新需求和优化需求,包括对视频图像编辑应用程序、短视频应用程序以及视频通话等,以及设置有不同应用程序的智能终端设备进行更新和优化,出现了利用深度学习技术或者神经网络算法,来对不同应用程序或者智能终端设备,进行自动优化和更新处理,以提升优化、更新的处理效率。
而针对不同的应用程序或者产品的更新、优化需求,通常需要设计出或者查找到相匹配的神经网络模型,而现有的神经网络模型训练或搜索方式,均需要利用到全量训练集,即需要足量的训练集才能进行神经网络的训练和搜索,以保证所确定出的网络模型符合应用程序或者产品的实际需求。
传统技术中,通常采用随机采样生成的训练集,作为训练和搜索神经网络的训练集数据的方式,或采用数据量更少的同质任务对应的训练集,作为当前需要进行神经网络训练或者搜索时的代理数据集的方式。而随机采用生成的训练集只能保证可减少样本数据量,而并不能全面考虑整个全量数据集,存在丢失样本的问题,同样地,采用数据量更少的同质任务对应的训练集,进行神经网络搜索时,存在同质任务的样本和当前所需的样本数据分布特性不同,导致搜索得到的模型结构存在较大偏差的问题。
因此,根据传统方式中所采用的训练集,进行神经网络模型训练或搜索时,仍然存在样本丢失或数据样本分布特征差异大,导致所确定出的神经网络模型不符合实际需求,网络模型搜索精度低的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提升神经网络模型搜索精度,保障所确定出的神经网络模型符合实际需求的神经网络结构搜索方法、装置、计算机设备和存储介质。
第一方面,本申请提供了一种神经网络结构搜索方法。所述方法包括:
根据用全量训练集对基础网络结构进行训练的训练结果,从所述全量训练集中确定出代理数据集;所述代理数据集包括遗忘样本和经筛选后的部分非遗忘样本;
基于所述代理数据集,对基于所述基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,并从训练后的所述超网结构中的各子网络结构中筛选出预设数目个子网络结构;
根据所述代理数据集,对所述预设数目个子网络结构进行从零训练,获得训练后的子网络结构;
对训练后的各所述子网络结构进行评测处理,并基于评测结果确定出目标网络结构。
在其中一个实施例中,所述根据用全量训练集对基础网络结构进行训练的训练结果,从所述全量训练集中确定出代理数据集,包括:
获取基于所述全量训练集对所述基础网络结构进行迭代训练,得到的各次迭代训练的各训练样本对应的预测结果;
基于各次迭代训练的各训练样本对应的预测结果,将所述全量训练集中的训练样本划分为遗忘样本和非遗忘样本;
对所述非遗忘样本进行筛选,获得筛选后的部分非遗忘样本;
根据所述遗忘样本和所述部分非遗忘样本,获得代理数据集。
在其中一个实施例中,所述基于各次迭代训练的各训练样本对应的预测结果,将所述全量训练集中的训练样本划分为遗忘样本和非遗忘样本,包括:
基于任意连续两次迭代训练的预测结果,将前一次迭代训练的预测结果与所述训练样本的样本标签一致,而后一次迭代训练的预测结果与所述训练样本的样本标签不一致的训练样本,确定为遗忘样本;
基于各次迭代训练的预测结果,将任意一次迭代训练的预测结果与所述训练样本的样本标签一致时,之后的各次迭代训练的预测结果均与所述训练样本的样本标签一致的训练样本,确定为非遗忘样本。
在其中一个实施例中,所述基于所述代理数据集,对基于所述基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,并从训练后的所述超网结构中的各子网络结构中筛选出预设数目个子网络结构,包括:
基于所述代理数据集,对基于所述基础网络结构构造的超网结构进行网络训练,调整各所述基础网络结构的神经网络参数,得到训练后的超网结构;
根据所述预设评测样本集,对训练后的所述超网结构中的各子网络结构进行评测处理,生成对应的第一评测结果;
基于各所述第一评测结果,对各所述子网络结构进行排序处理,生成排序后的第一子网络结构序列;
从所述第一子网络结构序列中,筛选出预设数目个子网络结构。
在其中一个实施例中,所述对训练后的各所述子网络结构进行评测处理,并基于评测结果确定出目标网络结构,包括:
利用所述预设评测样本集,对训练后的各所述子网络结构进行评测处理,生成对应的第二评测结果;
基于各所述第二评测结果,对训练后的各所述子网络结构进行排序处理,生成排序后的第二子网络结构序列;
基于排序后的所述第二子网络结构序列,筛选出目标网络结构。
在其中一个实施例中,所述根据所述代理数据集,对所述预设数目个子网络结构进行从零训练,获得训练后的子网络结构,包括:
基于所述预设数目个子网络结构进行权重初始化处理,得到待训练的子网络结构;
根据所述代理数据集,对所述待训练的子网络结构进行从零训练,对各所述待训练的子网络结构的神经网络参数进行调整,获得训练后的子网络结构。
第二方面,本申请还提供了一种神经网络结构搜索装置。所述装置包括:
代理数据集确定模块,用于根据用全量训练集对基础网络结构进行训练的训练结果,从所述全量训练集中确定出代理数据集;所述代理数据集包括遗忘样本和经筛选后的部分非遗忘样本;
子网络结构筛选模块,用于基于所述代理数据集,对基于所述基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,并从训练后的所述超网结构中的各子网络结构中筛选出预设数目个子网络结构;
子网络结构训练模块,用于根据所述代理数据集,对所述预设数目个子网络结构进行从零训练,获得训练后的子网络结构;
目标网络结构确定模块,用于对训练后的各所述子网络结构进行评测处理,并基于评测结果确定出目标网络结构。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
根据用全量训练集对基础网络结构进行训练的训练结果,从所述全量训练集中确定出代理数据集;所述代理数据集包括遗忘样本和经筛选后的部分非遗忘样本;
基于所述代理数据集,对基于所述基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,并从训练后的所述超网结构中的各子网络结构中筛选出预设数目个子网络结构;
根据所述代理数据集,对所述预设数目个子网络结构进行从零训练,获得训练后的子网络结构;
对训练后的各所述子网络结构进行评测处理,并基于评测结果确定出目标网络结构。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
根据用全量训练集对基础网络结构进行训练的训练结果,从所述全量训练集中确定出代理数据集;所述代理数据集包括遗忘样本和经筛选后的部分非遗忘样本;
基于所述代理数据集,对基于所述基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,并从训练后的所述超网结构中的各子网络结构中筛选出预设数目个子网络结构;
根据所述代理数据集,对所述预设数目个子网络结构进行从零训练,获得训练后的子网络结构;
对训练后的各所述子网络结构进行评测处理,并基于评测结果确定出目标网络结构。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
根据用全量训练集对基础网络结构进行训练的训练结果,从所述全量训练集中确定出代理数据集;所述代理数据集包括遗忘样本和经筛选后的部分非遗忘样本;
基于所述代理数据集,对基于所述基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,并从训练后的所述超网结构中的各子网络结构中筛选出预设数目个子网络结构;
根据所述代理数据集,对所述预设数目个子网络结构进行从零训练,获得训练后的子网络结构;
对训练后的各所述子网络结构进行评测处理,并基于评测结果确定出目标网络结构。
上述神经网络结构搜索方法、装置、计算机设备、存储介质和计算机程序产品中,根据用全量训练集对基础网络结构进行训练的训练结果,从全量训练集中确定出包括遗忘样本和经筛选后的部分非遗忘样本的代理数据集,并基于代理数据集,对基于基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,减少了训练过程中的训练样本数据量,以提升训练速度。进而通过从训练后的超网结构中的各子网络结构中筛选出预设数目个子网络结构。而根据代理数据集,对预设数目个子网络结构进行从零训练,可获得训练后的子网络结构,可在提升训练速度的同时,避免遗忘样本的丢失,保证模型搜索精度。最终通过对训练后的各子网络结构进行评测处理,以基于评测结果确定出目标网络结构。实现了可在提升网络训练速度的同时,避免遗忘样本的丢失,以维持模型搜索精度,进而保障所确定出的神经网络模型符合实际需求。
附图说明
图1为一个实施例中神经网络结构搜索方法的应用环境图;
图2为一个实施例中神经网络结构搜索方法的流程示意图;
图3为一个实施例中基于全量训练集确定出代理数据集的流程示意图;
图4为一个实施例中根据用全量训练集对基础网络结构进行训练的训练结果,从全量训练集中确定出代理数据集的流程示意图;
图5为一个实施例中将全量训练集中的训练样本划分为遗忘样本和非遗忘样本的流程示意图;
图6为一个实施例中应用于分类任务的训练样本划分场景示意图;
图7为一个实施例中应用于回归任务的训练样本划分场景示意图;
图8为另一个实施例中神经网络结构搜索方法的流程示意图;
图9为一个实施例中神经网络结构搜索装置的结构框图;
图10为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的神经网络结构搜索方法,涉及人工智能技术。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供的神经网络结构搜索方法涉及人工智能的机器学习等技术,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。其中,服务器102根据用全量训练集对基础网络结构进行训练的训练结果,从全量训练集中确定出代理数据集,而代理数据集具体包括遗忘样本和经筛选后的部分非遗忘样本。其中,全量数据集以及代理数据集可存储于数据存储系统中,也存储至终端102本地存储中,即服务器104可从终端102本地存储中,或者从数据存储系统中,获取所存储的全量训练集和代理数据集。进而服务器104可基于代理数据集,对基于基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,并从训练后的超网结构中的各子网络结构中筛选出预设数目个子网络结构。进一步地,服务器104根据代理数据集,对预设数目个子网络结构进行从零训练,获得训练后的子网络结构,并对训练后的各子网络结构进行评测处理,以基于评测结果确定出目标网络结构,进而服务器104可将目标网络结构反馈至终端102进行应用,包括用于终端102的应用程序优化或者更新,以及终端102的设备部件更新或优化等。服务器104还可将所确定出的目标网络结构直接进行应用,包括应用于网页页面或者平台系统等,对其进行更新或者优化。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备、便携式可穿戴设备、智能语音交互设备、智能家电、车载终端、以及飞行器等,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。本发明实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。
在一个实施例中,如图2所示,提供了一种神经网络结构搜索方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤S202,根据用全量训练集对基础网络结构进行训练的训练结果,从全量训练集中确定出代理数据集,代理数据集包括遗忘样本和经筛选后的部分非遗忘样本。
其中,训练集表示用于对神经网络或者机器模型进行训练的样本数据集合,全量训练集则表示针对需要训练的神经网络或者机器模型可获取的所有样本数据,比如进行用于人脸识别的模型训练时,则需要从网络或者数据库中采集所有可获取的人脸图片,并将所获取的所有人脸图片进行标注后,作为对该模型的全量数据集。其中,基础网络结构(BaseNet),表示为预先设计好的网络结构,且未对该基础网络结构进行训练时,其神经网络参数未进行调整,举例来说,基础网络结构可以是ResNet(残差网络)、DenseNet(稠密卷积神经网络)、LeNet(卷积神经网络)、AlexNet(深度卷积神经网络)、GoogLeNet(即InceptionNet,表示含并行连结的神经网络)以及VGGNet(表示使用重复元素的神经网络)等,不同类型的网络结构。
代理数据集和全量数据集属于同一分布,可从全量数据集中进一步筛选确定出代理数据集,具体来说,代理数据集包括遗忘样本和经筛选后的非遗忘样本,遗忘样本表示在根据全量数据集对基础网络结构的训练过程中,至少经历过一次遗忘的训练样本,而非遗忘样本则表示在根据全量数据集对基础网络结构的训练过程中,并未经历任何遗忘的训练样本。其中,训练过程中的遗忘,指的是对于同一训练样本,在对基础网络结构的多次迭代训练中,存在先预测正确后预测错误的情况。
具体地,获取基于全量训练集对基础网络结构进行迭代训练,得到的各次迭代训练的各训练样本对应的预测结果。其中,迭代训练的方式具体可以为批量梯度下降(BatchGradient Descent)的方式,基于全量训练集对基础网络结构进行迭代训练,以得到各次迭代训练的各训练样本的预测结果。其中,采用批量梯度下降的方式,对基础网络结构进行迭代训练时,需要在预设时间间隔内,对全量训练集进行重新预测,以完成对各训练样本所经历的遗忘进行统计,比如在预设间隔时间内,经历了预设次数的迭代训练后,对全量训练集进行一次重新预测。
进一步地,基于各次迭代训练的各训练样本对应的预测结果,将全量训练集划分为遗忘样本和非遗忘样本,进而通过对非遗忘样本进行筛选,随机剔除某些非遗忘样本,得到筛选后的部分非遗忘样本,以根据遗忘样本和筛选后的部分非遗忘样本,获得生成代理数据集。
其中,针对各次迭代训练时各训练样本对应的预测结果,需要将预测结果和对应训练样本的样本标签进行比对,判断样本标签和训练样本是否一致,当样本标签和预测结果一致时,则表示该次迭代训练的预测结果正确,如果样本标签和预测结果不一致,则表示该次迭代训练的预测结果错误。进而可根据各训练样本在各次迭代训练时的预测结果,进一步进行统计和分析,包括统计各训练样本是否存在先正确后预测错误的情况、先预测错误后预测正确,且后续再未预测错误的情况、以及一直预测正确的情况,进而可根据所统计的各预测情况,将全量训练集划分为遗忘样本和非遗忘样本。
举例来说,存在先正确后预测错误的情况的训练样本,可以理解为经历了遗忘,则至少经历一次遗忘的训练样本可确定为遗忘样本,而存在先预测错误后预测正确,且后续再未预测错误的情况的训练样本,可以理解为经历了学习,而由于后续再未预测错误,则表示经历了学习后并未再经历遗忘,则该种情况下的训练样本则可确定为非遗忘样本。此外,对于预测结果一直为预测正确的训练样本,则表示并未经历任何学习或者经历任何遗忘,同样可确定为非遗忘样本。
在一个实施例中,如图3所示,提供了一种基于全量训练集确定出代理数据集的方式,参照图3可知,全量训练集用于对基础网络结构进训练,进而可通过直接获取基于全量训练集对基础网络结构进行迭代训练,得到的各次迭代训练的各训练样本对应的预测结果,并基于得到的预测结果,对全量训练集进行样本划分。其中,具体可以将全量训练集划分为遗忘样本和非遗忘样本,而由于需要精简训练集,减少后续网络结构的训练时间,则需要对非遗忘样本进行筛选处理,可以是随机剔除某些非遗忘样本,以得到经筛选后的部分非遗忘样本,从而根据全部遗忘样本以及筛选后的部分非遗忘样本,得到代理数据集,以根据代理数据集完成一次神经网络搜索,确定出目标网络结构。
步骤S204,基于代理数据集,对基于基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,并从训练后的超网结构中的各子网络结构中筛选出预设数目个子网络结构。
其中,超网结构(SuperNet)可由多个基础网络结构构造得到,即超网结构中可包含多个基础网络结构,或者说超网结构可用于表达多个基础网络结构,而对超网结构进行训练时,需要获取超网结构对应的路径参数,并基于路径参数进行随机组合,生成对应的路径参数组合。而根据随机组合得到的路径参数组合,可从超网结构中选择出与路径参数组合对应的子网络结构。其中,超网结构对应的路径参数,可以理解为对构建得到超网结构的各基础网络结构,在超网结构内部的编号,各编号可以通过基于基础网络结构,在预设范围内进行卷积参数的扰动处理生成得到。
具体地,基于代理数据集,对基于基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构。其中,对超网结构进行训练时,具体是根据代理数据集,对从超网结构中基于路径参数组合所确定出的子网络结构进行训练。举例来说,比如超网结构包括N层,每层设置有M个基础网络结构,则对超网结构进行训练时,具体是根据随机选择的N层的编号,以及从所选择的N层中所选择的每个基础网络结构M的编号,组成得到路径参数组合,来确定出所选择的子网络结构,并根据代理数据集,对所选择出的各子网络结构进行训练,得到训练后的超网结构。其中,M和N为自然数,不局限于某个或者某些取值,可进行灵活调整。
简单举例来说,比如超网结构包括2层(包括A层和B层),每层设置有2个基础网络结构,则超网结构中各基础网络结构的编号可以包括A1、B1、A2以及B2,则随机组合得到路径参数的组合可以包括A1B1、A2B1、A1B2以及A2B2,对于超网结构进行训练时,随机选择一个路径参数的组合,并对该路径参数的组合确定出的子网络结构进行训练。具体来说,可以是随机对A1B1、A2B1、A1B2以及A2B2对应的子网络结构进行训练。
进一步地,从训练后的超网结构中的各子网络结构中,筛选出预设数目个子网络结构,其中,具体是需要利用预设评测集,对训练后的超网结构中的各子网络结构进行评测处理,生成对应的第一评测结果,并基于第一评测结果,从训练后的超网结构中的各子网络结构中,筛选出预设数目个子网络结构。
其中,在超网结构训练过程中,会对超网结构表示的各子网络结构进行训练,并获取各子网络结构的预测结果,进而第一评测结果用于对超网结构中的各子网络结构的预测准确度进行评测。其中,预设评测样本集表示由多个预先标注样本标签的评测样本组成的集合,针对各个评测样本,需要预先标注相应的样本标签,从而可将各评测样本输入超网结构表示的各子网络结构时,获取各子网络结构输出的预测结果,并将预测结果和预先标注的样本标签进行比对,以确定预测结果是否和样本标签一致。而通过统计预测结果与样本标签一致,以及预测结果与样本标签不一致的情况,来确定超网结构中各子网络结构的预测准确度,得到相应的第一评测结果。
具体来说,可基于第一评测结果,即超网结构中各子网络结构的预测准确度,对超网结构中各子网络结构进行排序处理,得到排序后的第一子网络结构序列,以从排序后的第一子网络结构序列中,筛选出预设数目个子网络结构。其中,预设数目,即所筛选出的子网络结构的数量,可根据不同实际场景进行调整或修改,不局限于某个或者某些具体取值。
举例来说,可以是根据预先设置的第一预测准确度阈值进行筛选,从排序后的第一子网络结构序列中,筛选出预测准确度大于第一预测准确度阈值的一个或多个子网络结构。也可以是根据实际场景需求,从排序后的第一子网络结构序列中选择排序靠前的q个子网络结构,其中,q可以根据实际需求进行调整和修改,不局限于某个或者某些具体取值。
步骤S206,根据代理数据集,对预设数目个子网络结构进行从零训练,获得训练后的子网络结构。
其中,从零训练(train_from_scratch)也可以表示为从头训练,表示只保留子网络结构的本身结构,而不保留子网络结构在超网结构中训练过后的权重(即超网结构中各子网络结构的神经网络参数),通过在进行从零训练之前,对子网络结构进行权重初始化处理,覆盖在各子网络结构在超网结构中训练过后的权重,避免在超网结构中训练过后得到的权重,对筛选出的各子网络结构的模型精度影响。
可以理解的是,在对超网结构进行训练时,即对超网结构中各子网络结构进行训练时,通常设置有针对整个超网结构的共享权重,该共享权重作用于超网结构中各子网络结构的训练过程,影响各子网络结构的模型精度,从而需要对所选择出的预设数目个子网络结构,进行从零训练,以消除共享权重对预设数目个子网络结构的模型精度影响,恢复各子网络结构的模型精度。
具体地,基于预设数目个子网络结构进行权重初始化处理,得到待训练的子网络结构,并根据代理数据集,对待训练的子网络结构进行从零训练,对各待训练的子网络结构的神经网络参数进行调整,获得训练后的子网络结构。
进一步地,权重初始化处理,用于初始化各子网络结构在超网结构中训练过后得到的权重(即调整后的神经网络参数),可以采用随机初始化处理的方式,不局限于某一或者某些固定的权重取值。而通过对预设数目个子网络结构进行权重初始化处理,可得到待训练的子网络结构,由于该些待训练的子网络结构的权重已经过初始化处理,则已经达到避免在超网结构中训练过后得到的权重,对筛选出的各子网络结构的模型精度影响的目的,从而进一步根据代理数据集,对待训练的子网络结构进行从零训练,可实现对各待训练的子网络结构的神经网络参数的重新调整,以获得训练后的子网络结构。
步骤S208,对训练后的各子网络结构进行评测处理,并基于评测结果确定出目标网络结构。
其中,评测处理指的是对训练后的各子网络结构的预测结果,以及预测准确度进行评测,得到相应的评测结果。其中,评测结果包括子网络结构的预测结果正确,预测结果错误,以及通过对预测结果正确和预测结果错误进行统计,最终确定出各子网络结构的预测准确度。
具体地,利用预设评测样本集,对训练后的各子网络结构进行评测处理,生成对应的第二评测结果,并基于各第二评测结果,对训练后的各子网络结构进行排序处理,生成排序后的第二子网络结构序列,从而可基于排序后的第二子网络结构序列,筛选出目标网络结构。
其中,预设评测样本集表示由多个预先标注样本标签的评测样本组成的集合,针对各个评测样本,需要预先标注相应的样本标签,从而可将各评测样本输入训练后的子网络结构时,获取子网络结构输出的预测结果,并将预测结果和预先标注的样本标签进行比对,以确定预测结果是否和样本标签一致。而利用预设评测样本集,对训练后的各子网络结构进行评测处理,得到的第二评测结果,具体可以根据预测结果和样本标签的关系进一步确定。其中,通过统计预测结果与样本标签一致,以及预测结果与样本标签不一致的情况,来确定对应子网络结构的预测准确度,得到相应的第二评测结果。
进一步地,根据对各子网络结构的第二评测结果,即各子网络结构的预测准确度,对各子网络结构进行排序,即根据预测准确度的高低对子网络结构进行排序,可获得排序后的第二子网络结构序列。从而可基于排序后的第二子网络结构序列,进一步进行筛选处理,筛选出目标网络结构。
其中,针对排序后的第二子网络结构序列进行筛选处理时,可以是根据预先设置的第二预测准确度阈值进行筛选,从排序后的第二子网络结构序列中,筛选出预测准确度大于第二预测准确度阈值的一个或多个子网络结构。也可以是根据实际场景需求,从排序后的第二子网络结构序列中选择排序靠前的S个子网络结构,其中,S可以根据实际需求进行调整和修改,不局限于某个或者某些具体取值。
在一个实施例中,针对应用于不同实际场景的目标网络结构的评测指标有所不同,比如针对应用于分类任务,比如图片分类任务或者视频分类任务等,其评测指标为预测准确度,即通过将预设评测样本集中的评各测样本,输入目标网络结构中,获得对应的预测结果,即各评测样本的预测样本类别,并将各评测样本的预测样本类别和预先添加的实际类别标签进行比对,判断是否一致。而通过统计目标网络结构的预测结果和实际类别标签是否一致的情况进行统计,可得到目标网络结构的预测准确度。
进一步地,通过将目标网络结构的预测准确度,和通过原始的全量训练集进行神经网络搜索得网络结构的预测准确度进行比对,获得两者之间的准确度差异,即判断利用代理数据集进行神经网络搜索确定出的目标网络结构的预测准确度,是否接近通过原始的全量训练集进行神经网络搜索得网络结构的预测准确度。而通过将利用代理数据集搜索得到目标网络结构的全部耗时,和利用全量训练集搜索得到网络结构的全部耗时进行比对,即判断是否利用代理数据集搜索得到目标网络结构的全部耗时,明显少于利用全量训练集搜索得到网络结构的全部耗时,从而达到减少神经网络结构搜索时间,同时保障网络结构预测准确度以及模型精度的要求。
在一个实施例中,针对应用于回归任务,比如人脸关键点识别任务等,其评测指标为NME,其中,NME表示计算目标网络结构的预测结果,与预先标注的实际关键点的平均欧氏距离(其中,针对人脸关键点识别任务,计算平均欧式距离时,需要以两眼做归一化处理)。
具体来说,通过将预设评测样本集中的评各测样本,输入目标网络结构中,获得对应的预测结果,即各评测样本的预测关键点坐标,并计算各评测样本的预测关键点坐标和实际关键点坐标之间的平均欧氏距离。
进一步地,针对相同数量的预设评测样本集,利用由从全量训练集中确定出的遗忘样本和筛选后的部分非遗忘样本组成的代理数据集,进行神经网络结构搜索时,计算对应的第一平均欧氏距离,针对利用传统的全量训练集进行神经网络结构搜索,计算对应的第二平均欧氏距离。通过在确定第一平均欧氏距离和第二平均欧氏距离相同的基础上,进一步获取传统的全量训练集的数据量大小,以及代理数据集的数据量大小,以判断在平均欧氏距离相同的情况下,代理数据集的数据量大小是否小于全量训练集的数据量大小,从而达到减小训练集数据量大小,以减少神经网络结构搜索时间,同时保障网络结构预测准确度以及模型精度的要求。
简单举例来说,针对相同数量的预设评测样本集(比如2919张评测样本组成的预设评测样本集),利用由从全量训练集中确定出的遗忘样本和筛选后的部分非遗忘样本组成的代理数据集,进行神经网络结构搜索时的第一平均欧氏距离,和利用传统的全量训练集进行神经网络结构搜索时第二平均欧氏距离,均取相同数值(比如均为0.041)时,全量训练集使用的数据量(比如13万)大于代理数据集(比如10万)使用的数据量,进而可实现通过减小训练集的数据量大小,以减少神经网络结构搜索时间(比如本实施例中可减少20%的耗时),提升了神经网络结构搜索速度。
可以理解的是,预测评测样本集的数量不进行具体限定,不局限于某个或者某些具体取值,第一平均欧氏距离和第二平均欧氏距离,与实际场景下神经网络搜索确定出的网络结构相关,并不固定为某个或者某些具体取值,同样地,全量训练集和代理数据集所使用的数据量同样也不进行限定,进而最终所减少的神经网络结构搜索时间也不是固定的,与实际应用情况相关。
上述神经网络结构搜索方法中,根据用全量训练集对基础网络结构进行训练的训练结果,从全量训练集中确定出包括遗忘样本和经筛选后的部分非遗忘样本的代理数据集,并基于代理数据集,对基于基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,减少了训练过程中的训练样本数据量,以提升训练速度。进而通过从训练后的超网结构中的各子网络结构中筛选出预设数目个子网络结构。而根据代理数据集,对预设数目个子网络结构进行从零训练,可获得训练后的子网络结构,可在提升训练速度的同时,避免遗忘样本的丢失,保证模型搜索精度。最终通过对训练后的各子网络结构进行评测处理,以基于评测结果确定出目标网络结构。实现了可在提升网络训练速度的同时,避免遗忘样本的丢失,以维持模型搜索精度,进而保障所确定出的神经网络模型符合实际需求。
在一个实施例中,如图4所示,根据用全量训练集对基础网络结构进行训练的训练结果,从全量训练集中确定出代理数据集的步骤,具体包括:
步骤S402,获取基于全量训练集对基础网络结构进行迭代训练,得到的各次迭代训练的各训练样本对应的预测结果。
具体地,迭代训练指的是利用全量训练集,对基础网络结构进行重复迭代训练,具体可以采用批量梯度下降的方式,分批次对基础网络结构进行迭代训练,以得到各次迭代训练的各训练样本的预测结果。其中,各训练样本的预测结果,表示进行迭代训练后,经训练后的基础网络结构输出的对各训练样本的预测结果,比如各训练样本预测分类结果,或者各训练样本的预测关键点坐标等。
其中,基于全量训练集对基础网络结构进行迭代训练过程中,具体是对各基础网络结构的神经网络参数进行调整,其中,基础网络结构的神经网络参数也称为基础网络结构的权重,可理解为是根据利用全量训练集进行训练时,所学习到的各训练样本集的数据内容,实现对基础网络结构的神经网络参数或权重的调整。
步骤S404,基于各次迭代训练的各训练样本对应的预测结果,将全量训练集中的训练样本划分为遗忘样本和非遗忘样本。
具体地,通过将各次迭代训练时各训练样本对应的预测结果,和对应样本的样本标签进行比对,当样本标签和预测结果一致时,则表示该次迭代训练的预测结果正确,如果样本标签和预测结果不一致,则表示该次迭代训练的预测结果错误。
进一步地,当针对同一训练样本,前一次迭代训练的预测结果正确,后一次迭代训练的预测结果错误,则表示该训练样本经历了一次遗忘,而至少经历一次遗忘的训练样本,则确定为遗忘样本。同样地,针对同一训练样本,前一次迭代训练的预测结果错误,而后一次迭代训练的预测结果正确,则表示该训练样本经历了一次学习,而在该训练样本经历一次学习后,再未出现预测结果错误的情况,则可将该训练样本确定为非遗忘样本。此外,针对同一训练样本,其每次迭代训练的预测结果均为预测正确时,表明该训练样本并未经历任何遗忘和学习,同样也可将该训练样本确定为非遗忘样本。
步骤S406,对非遗忘样本进行筛选,获得筛选后的部分非遗忘样本。
具体地,通过对非遗忘样本进行筛选,可以是随机筛选,筛选出预设个非遗忘样本进行剔除,获得筛选后的部分非遗忘样本。其中,预设个非遗忘样本可基于统计得到的全量训练集中非遗忘样本的总数,以及根据实际应用场景需求所设置的剔除百分比来确定。
简单举例来说,比如统计得到的非遗忘样本为1000个,随机筛选时,需要剔除20%的非遗忘样本,则具体是需要随机剔除20%*1000个,即200个非遗忘样本。其中,非遗忘样本的总数不是固定取值,需要根据实际的全量训练集确定出,所设置的剔除百分比也不局限于具体某个或者某些取值,可根据实际需求进行调整和修改。
步骤S408,根据遗忘样本和部分非遗忘样本,获得代理数据集。
具体地,通过将非遗忘样本,以及剔除预设个非遗忘样本后获得的部分非遗忘样本,进行组合,获得代理数据集。
其中,得到的代理数据集已剔除部分非遗忘样本,但保留了全量数据集中的全部遗忘样本,其中,遗忘样本又称为难样本,用于支撑分类边界,即获得的代理数据可通过所保留的全部遗忘样本,来有效地支撑分类边界,同时通过剔除部分非遗忘样本,减少训练样本量,以更少的训练样本对超网结构以及子网络结构进行训练,减少训练时间,提升网络结构的训练速度,同时还能保证训练得到的网络结构的模型精度。
本实施例中,基于全量训练集,对基础网络结构进行迭代训练,获得各次迭代训练的各训练样本对应的预测结果,并基于各次迭代训练的各训练样本对应的预测结果,将全量训练集中的训练样本划分为遗忘样本和非遗忘样本。进而通过对非遗忘样本进行筛选,以获得筛选后的部分非遗忘样本,并根据遗忘样本和部分非遗忘样本,获得代理数据集。实现了通过剔除部分非遗忘样本,保留全部遗忘样本的代理数据集,进行后续网络训练时,减少训练样本量,以更少的训练样本对网络结构进行训练,减少训练时间,提升网络结构的训练速度,同时还能保证训练得到的网络结构的模型精度。
在一个实施例中,如图5所示,将全量训练集中的训练样本划分为遗忘样本和非遗忘样本的步骤,即基于各次迭代训练的各训练样本对应的预测结果,将全量训练集中的训练样本划分为遗忘样本和非遗忘样本的步骤,具体包括:
步骤S502,基于任意连续两次迭代训练的预测结果,将前一次迭代训练的预测结果与训练样本的样本标签一致,而后一次迭代训练的预测结果与训练样本的样本标签不一致的训练样本,确定为遗忘样本。
具体地,各训练样本预先添加了样本标签,针对同一训练样本,通过将连续两次的迭代训练的预测结果分别和样本标签进行比对,判断前一次迭代训练的预测结果,以及后一次迭代训练的预测结果,是否和样本标签一致。
其中,当确定针对同一训练样本,出现前一次迭代训练的预测结果与训练样本的样本标签一致,而后一次迭代训练的预测结果与训练样本的样本标签不一致时,确定该训练样本经历一次遗忘。而由于至少经历一次遗忘的训练样本属于遗忘样本,则可以将前一次迭代训练的预测结果与训练样本的样本标签一致,而后一次迭代训练的预测结果与训练样本的样本标签不一致的训练样本,确定为遗忘样本。
在一个实施例中,针对应用于分类任务的网络结构训练和搜索时,针对训练样本需要预先添加样本标签,具体可以是类别标签,针对同一训练样本,通过将连续两次的迭代训练的预测结果分别和类别标签进行比对,判断前一次迭代训练的预测结果,以及后一次迭代训练的预测结果,是否和类别标签一致。
举例来说,训练样本1预先添加的类别标签为第一类别,而前一次迭代训练的预测结果为训练样本1的类别标签为第一类别,后一次迭代训练的预测结果为训练样本1的类别标签为第二类别,则可知针对训练样本1,出现了前一次迭代训练的预测结果与训练样本的样本标签一致,而后一次迭代训练的预测结果与训练样本的样本标签不一致的情况,则表示训练样本1经历了一次遗忘,可将训练样本1确定为遗忘样本。
在一个实施例中,针对应用于回归任务,比如针对应用于人脸关键点识别任务的网络结构训练和搜索时,针对训练样本需要预先添加样本标签,具体可以是实际关键点坐标,针对同一训练样本,通过将连续两次的迭代训练的预测结果分别和实际关键点坐标进行比对,判断前一次迭代训练的预测结果,以及后一次迭代训练的预测结果,是否和实际关键点坐标一致。
举例来说,训练样本2的关键点坐标为(x,y),而前一次迭代训练的预测结果为训练样本2的实际关键点坐标为(x,y),后一次迭代训练的预测结果为训练样本2的实际关键点坐标为(x,y1),其中,y和y1不相等,则可知针对训练样本2,出现了前一次迭代训练的预测结果与训练样本的实际关键点坐标一致,而后一次迭代训练的预测结果与训练样本的实际关键点坐标不一致的情况,则表示训练样本2经历了一次遗忘,可将训练样本2确定为遗忘样本。
步骤S504,基于各次迭代训练的预测结果,将任意一次迭代训练的预测结果与训练样本的样本标签一致时,之后的各次迭代训练的预测结果均与训练样本的样本标签一致的训练样本,确定为非遗忘样本。
其中,非遗忘样本表示未经历任何一次遗忘的训练样本,具体可以是经历过学习但未经历过遗忘的训练样本,以及未经历过学习也未经历过遗忘的训练样本。针对同一训练样本,前一次迭代训练的预测结果错误,而后一次迭代训练的预测结果正确,则表示该训练样本经历了一次学习。
具体来说,通过将各次迭代训练时各训练样本对应的预测结果,和对应样本的样本标签进行比对,当前一次迭代训练的预测结果和样本标签不一致,则前一次迭代训练的预测结果错误,同样地,当后一次迭代训练的预测结果与样本标签一致,则后一次迭代训练的预测结果正确,进而可确定出该训练样本经历了一次学习。
具体地,针对同一训练样本,在确定出任意一次迭代训练的预测结果与训练样本的样本标签一致时,即确定任意一次迭代训练的预测结果正确时,之后的各次迭代训练的预测结果均与训练样本的样本标签一致,则表示之后的各次迭代训练的预测结果均正确,则可将该训练样本确定为非遗忘样本。
其中,针对确定出任意一次迭代训练的预测结果与训练样本的样本标签一致之前,即确定任意一次迭代训练的预测结果正确之前,还包括迭代训练的预测结果与训练样本的样本标签不一致(即预测结果错误),以及代训练的预测结果与训练样本的样本标签一致(即预测结果正确)两种不同的情况。
进一步地,针对确定任意一次迭代训练的预测结果正确之前,前一次迭代训练的预测结果与训练样本的样本标签不一致,即预测结果错误的情况,则表明当前属于前一次迭代训练的预测结果错误,后一次迭代训练的预测结果正确的情况,进而可确定出该训练样本经历了一次学习,但该训练样本经历过学习后,后续的各次迭代训练的预测结果均与训练样本的样本标签一致,即后续各次迭代训练的预测结果均正确,并未出现预测结果错误的情况,即并未经历任何遗忘,进而该训练样本可划分为非遗忘样本。
同样地,针对确定任意一次迭代训练的预测结果正确之前,各次迭代训练的预测结果与训练样本的样本标签一致,即预测结果也均正确的情况,即表明该训练样本并未经历学习,也未经历遗忘,进而将并未经历任何学习和遗忘的训练样本也划分为非遗忘样本。
在一个实施例中,针对应用于分类任务的网络结构训练和搜索时,将任意一次迭代训练的预测结果与训练样本的类别标签一致之后,之后的各次迭代训练的预测结果均与训练样本的类别标签一致的训练样本,确定为非遗忘样本。
举例来说,针对训练样本3,当前一次迭代训练的预测结果为训练样本3的类别标签为第二类别,而后一次迭代训练的预测结果为训练样本3的类别标签为第一类别,则表示训练样本3经历了一次学习。而后续的各次迭代训练的预测结果为训练样本3的类别标签为第一类别,即后续的各次迭代训练的预测结果均正确,并未出现预测结果错误的情况,即训练样本3并未经历任何遗忘,则将训练样本3划分为非遗忘样本。
同样地,在另一种情况下,针对训练样本3,确定任意一次迭代训练的预测结果正确之前,各次迭代训练的预测结果与训练样本3的类别标签一致,即预测结果也均正确的情况,则表示训练样本3并未经历任何学习和遗忘,同样将训练样本3划分为非遗忘样本。
在一个实施例中,针对应用于回归任务,比如针对应用于人脸关键点识别任务的网络结构训练和搜索时,同样需要将各次迭代训练的预测结果与训练样本的实际关键点坐标进行比对,当任意一次迭代训练的预测结果与训练样本的实际关键点坐标一致之后,之后的各次迭代训练的预测结果均与训练样本的实际关键点坐标一致的训练样本,确定为非遗忘样本。
举例来说,训练样本4的关键点坐标为(e,f),而前一次迭代训练的预测结果为训练样本4的实际关键点坐标为(e,f1),其中,f和f1不相等,后一次迭代训练的预测结果为训练样本4的实际关键点坐标为(e,f),则可知针对训练样本4,出现了前一次迭代训练的预测结果与训练样本的实际关键点坐标不一致,而后一次迭代训练的预测结果与训练样本的实际关键点坐标一致的情况,则表示训练样本4经历了一次学习。而后续的各次迭代训练的预测结果为训练样本4的实际关键点坐标为(e,f),即后续的各次迭代训练的预测结果均正确,并未出现预测结果错误的情况,即训练样本4并未出现任何遗忘,则将训练样本4划分为非遗忘样本。
同样地,在另一种情况下,针对训练样本4,确定任意一次迭代训练的预测结果正确之前,各次迭代训练的预测结果与训练样本4的实际关键点坐标一致,即预测结果也均正确的情况,则表示训练样本4并未经历任何学习和遗忘,同样将训练样本4划分为非遗忘样本。
在一个实施例中,如图6所示,提供了一种应用于分类任务的训练样本划分场景,参照图6可知,本实施例中的分类任务为图片分类任务,其中,图片训练样本包括建筑图片以及人脸图片等不同类别,并需要对各训练样本预先添加类别标签,即预先对建筑图片添加建筑类别标签,对人脸图片添加人脸类别标签。可以理解的是,本实施例中仅是对分类任务中的其中一种情况进行描述,分类任务还可以包括邮件分类、视频分类、事件分类、主题分类、话题分类、情感分类以及广告分类等不同方面的分类任务,而针对图片分类而言,所包括的图片类别也不局限于建筑图片和人脸图片,还可以是动物图片、风景图片等。
具体地,通过将已添加类别标签的各图片训练样本作为全量训练集,并根据全量训练集对基础网络结构进行迭代训练,获得各次迭代训练的各训练样本对应的预测结果。简单举例来说,针对训练样本A、训练样本B,分别预先添加对应的建筑类别标签、人脸类别标签,进而利用训练样本A、训练样本B对基础网络结构进行迭代训练,调整该基础网络结构的神经网络参数,并获得各次迭代训练的各训练样本对应的预测结果。
其中,基于各次迭代训练时训练样本A、训练样本B的预测结果,即基于各训练样本的类别预测结果,需要进一步将类别标签预测结果和预先添加的类别标签进行比对,确定类别标签和类别预测结果是否一致。
参照图6可知,针对训练样本A,预先添加的样本标签为建筑类别标签,即表明训练样本A为建筑图片,而利用训练样本A进行迭代训练时,如果前一次迭代训练的预测结果和类别标签一致,均是建筑类别标签,即该次迭代训练的预测结果正确,而后一次迭代训练的预测结果和类别标签不一致,比如预测结果是人脸类别标签,即该次迭代训练的预测结果错误,则表示训练样本A经历了一次遗忘,而至少经历一次遗忘的训练样本为遗忘样本,进而将训练样本A划分为遗忘样本。
进一步地,如果前一次迭代训练的预测结果和类别标签不一致,比如预测结果为人脸类别标签,即该次迭代训练的预测结果错误,而后一次迭代训练的预测结果和类别标签一致,均是建筑类别标签,即该次迭代训练的预测结果正确,则表示训练样本A经历了一次学习。而在训练样本A经历一次学习后,再未出现预测结果错误的情况,即后续各次迭代训练的预测结果均为建筑类别标签,则可将训练样本A确定为非遗忘样本。
此外,针对训练样本A,如果每次迭代训练的预测结果均为预测正确,即每次预测结果均为建筑类别标签,表明训练样本A并未经历任何遗忘和学习,同样也可将训练样本A划分为非遗忘样本(图6中未进行展示)。
同样地,参照图6可知,针对训练样本B,需要执行的判定和划分操作与针对训练样本A类似,区别在于训练样本B预先添加的类别标签为人脸类别标签,则进行比对时,是判断预测结果是否和人脸类别标签一致。具体来说,比如预测结果是建筑类别标签,即该次迭代训练的预测结果错误,则表示训练样本B经历了一次遗忘,而至少经历一次遗忘的训练样本为遗忘样本,进而将训练样本B划分为遗忘样本。
而如果前一次迭代训练的预测结果为建筑类别标签,即该次迭代训练的预测结果错误,而后一次迭代训练的预测结果和类别标签均是人脸类别标签,即该次迭代训练的预测结果正确,则表示训练样本B经历了一次学习。而在训练样本B经历一次学习后,再未出现预测结果错误的情况,即后续各次迭代训练的预测结果均为人脸类别标签,则可将训练样本B确定为非遗忘样本。
此外,针对训练样本B,如果每次迭代训练的预测结果均为预测正确,即每次预测结果均为人脸类别标签,表明训练样本B并未经历任何遗忘和学习,同样也可将训练样本B划分为非遗忘样本(图6中未进行展示)。
在一个实施例中,给定全量训练集D=(xi,yi),xi指第i个样本,yi表示对应的实际样本标签,基于该全量训练集D对基础网络结构进行迭代训练,调整神经网络结构的神经网络参数θ,并获得每次迭代训练的各训练样本的预测结果,其中,预测结果,即预测得到的训练样本最有可能属于的样本类别,其中,通过以下公式(1)表示预测得到的样本类别
其中,表示基础网络结构经过t次迭代训练后,第i个训练样本的预测结果,即得到的预测样本类别。其中,argmaxk用于确定出训练样本最有可能属于的类别,k表示类别,i表示训练样本数量,xi指的是第i个训练样本,t表示迭代训练的次数,p(y==k|xi;θt)表示第i个训练样本,在神经网络参数为θt时,xi的类别为第k个类别的概率,y==k是表示y是否和k相等,即预测出的样本类别是否为k类别。
其中,符号1表示指示函数,表示判断预测得到的样本类别,和预先添加的实际类别标签是否相同,如果预测得到的样本类别和预先添加的实际类别标签相同,则定义为1,而如果预测得到的样本类别和预先添加的实际类别标签不相同,则定义为0,即只有0和1两个取值,分别表示样本类别和实际类别标签不一致,以及样本类别和实际类别标签一致的含义。
同样地,如果即第t次迭代训练时该训练样本的预测结果错误,而第t+1次迭代训练时该训练样本的预测结果正确,即该训练样本经历了一次学习。而在多次迭代训练中拥有一次遗忘的训练样本,划分为遗忘样本,而在多次迭代训练中未经历过任何遗忘的样本,即经历了学习并未经历遗忘的训练样本,或既未经历学习也未经历遗忘的训练样本,则划分为非遗忘样本。
在一个实施例中,如图7所示,提供了一种应用于回归任务的训练样本划分场景,参照图7可知,本实施例中的回归任务为人脸关键点识别任务,其中,训练样本预先标注关键点的人脸图片,即针对训练样本需要预先标注实际关键点坐标。可以理解的是,本实施例中仅是对回归任务中的其中一种情况进行描述,回归任务不仅仅局限于人脸关键点识别任务。
具体地,通过将已标注关键点的各人脸图片作为全量训练集,并根据全量训练集对基础网络结构进行迭代训练,获得各次迭代训练的各训练样本对应的预测结果。简单举例来说,针对人脸图片C、人脸图片D,分别预先标注实际关键点坐标,进而利用人脸图片C、人脸图片D对基础网络结构进行迭代训练,调整该基础网络结构的神经网络参数,并获得各次迭代训练的各训练样本对应的预测结果。
其中,针对迭代训练过程中人脸图片C、人脸图片D的预测结果,即人脸图片C、人脸图片D的预测关键点坐标,需要进一步将预测关键点坐标和预先标注的实际关键点坐标进行比对,确定实际关键点坐标和预测关键点坐标是否一致。
参照图7可知,针对人脸图片C或者人脸图片D,通过将连续两次的迭代训练的预测关键点坐标分别和实际关键点坐标进行比对,判断前一次迭代训练的预测关键点坐标,以及后一次迭代训练的预测结果,是否和实际关键点坐标一致。比如,利用人脸图片C进行迭代训练时,前一次迭代训练的预测关键点坐标与训练样本的实际关键点坐标一致,而后一次迭代训练的预测关键点坐标与训练样本的实际关键点坐标不一致,则表示人脸图片C经历了一次遗忘,可将人脸图片C划分为遗忘样本。
同样地,参照图7可知,比如利用人脸图片D进行迭代训练时,前一次迭代训练的预测关键点坐标与训练样本的实际关键点坐标一致,而后一次迭代训练的预测关键点坐标与训练样本的实际关键点坐标不一致的情况,则表示人脸图片D经历了一次学习。而后续的各次迭代训练中人脸图片D的预测关键点坐标,均与实际关键点坐标一致,并未出现预测结果错误的情况,即人脸图片D并未出现任何遗忘,则将人脸图片D划分为非遗忘样本。
此外,针对人脸图片D,在确定任意一次迭代训练的预测结果正确之前,各次迭代训练的预测关键点坐标与人脸图片D的实际关键点坐标一致,即每次迭代训练的预测结果也均正确的情况,则表示人脸图片D并未经历任何学习和遗忘,同样将人脸图片D划分为非遗忘样本(图7中未进行展示)。
在一个实施例中,需要给定全量训练集D=(xi,yi),xi指第i个样本,yi表示对应的实际关键点坐标,基于该全量训练集D对基础网络结构进行迭代训练,调整神经网络结构的神经网络参数θ,并获得每次迭代训练的各训练样本的预测结果,其中,预测结果为预测得到的训练样本的预测关键点坐标通过以下公式(3)表示:
其中,表示基础网络结构经过t次迭代训练后,第i个训练样本的预测结果,即训练样本的预测关键点坐标,θt为神经网络参数,f(xi;θt)表示在t次迭代训练时,神经网络参数为θt时,第i个训练样本的预测关键点坐标。
其中,表示计算和yi之间的欧氏距离,δ表示一个预设阈值,具体是通过计算得到的的取值再乘以一个预设系数,确定得到,简单举例来说,比如将计算得到的欧氏距离乘以预设系数5%确定得到,其中,预设系数可根据实际需求进行调整,不局限于某个或者某些具体取值。符号1表示指示函数,即当时,即如果计算得到的欧氏距离小于预设阈值δ,则定义为1,相反地,如果不满足即如果计算得到的欧氏距离大于或者等于预设阈值δ,则定义为0,即只有0和1两个取值。
具体地,如果该训练样本在第t+1次迭代训练时满足即第t+1次迭代训练时,基础网络结构对该训练样本的预测结果错误,即预测关键点坐标和实际关键点坐标不一致,而第t次迭代训练时的预测结果正确,即预测关键点坐标和实际关键点坐标一致,则代表该训练样本经历了一次遗忘。
同样地,如果即第t次迭代训练时该训练样本的预测结果错误,而第t+1次迭代训练时该训练样本的预测结果正确,即该训练样本经历了一次学习。而在多次迭代训练中拥有一次遗忘的训练样本,划分为遗忘样本,而在多次迭代训练中未经历过任何遗忘的样本,即经历了学习并未经历遗忘的训练样本,或既未经历学习也未经历遗忘的训练样本,则划分为非遗忘样本。
本实施例中,通过基于任意连续两次迭代训练的预测结果,将训练样本前一次迭代训练的预测结果与训练样本的样本标签一致,而后一次迭代训练的预测结果与训练样本的样本标签不一致的训练样本,确定为遗忘样本,基于各次迭代训练的预测结果,将任意一次迭代训练的预测结果与训练样本的样本标签一致之后,之后的各次迭代训练的预测结果均与训练样本的样本标签一致的训练样本,确定为非遗忘样本。实现了根据迭代训练过程中各训练样本的预测结果,实现对各训练样本的准确划分,从中确定出遗忘样本和非遗忘样本,以便后续通过剔除部分非遗忘样本,并保留全部遗忘样本得到代理数据集,利用代理数据集进行后续网络训练时,可减少训练样本量,以更少的训练样本对网络结构进行训练,减少训练时间,提升网络结构的训练速度,同时还能保证训练得到的网络结构的模型精度。
在一个实施例中,如图8所示,提供了一种神经网络结构搜索方法,参照图7可知,该方法具体包括以下步骤:
步骤S801,获取基于全量训练集对基础网络结构进行迭代训练,得到的各次迭代训练的各训练样本对应的预测结果。
步骤S802,基于任意连续两次迭代训练的预测结果,将训练样本前一次迭代训练的预测结果与训练样本的样本标签一致,而后一次迭代训练的预测结果与训练样本的样本标签不一致的训练样本,确定为遗忘样本。
步骤S803,基于各次迭代训练的预测结果,将任意一次迭代训练的预测结果与训练样本的样本标签一致时,之后的各次迭代训练的预测结果均与训练样本的样本标签一致的训练样本,确定为非遗忘样本。
步骤S804,对非遗忘样本进行筛选,获得筛选后的部分非遗忘样本,并根据遗忘样本和部分非遗忘样本,获得代理数据集。
步骤S805,基于代理数据集,对基于基础网络结构构造的超网结构进行网络训练,调整各基础网络结构的神经网络参数,得到训练后的超网结构。
步骤S806,根据预设评测样本集,对训练后的超网结构中的各子网络结构进行评测处理,生成对应的第一评测结果。
步骤S807,基于各第一评测结果,对各子网络结构进行排序处理,生成排序后的第一子网络结构序列。
步骤S808,从第一子网络结构序列中,筛选出预设数目个子网络结构。
步骤S809,基于预设数目个子网络结构进行权重初始化处理,得到待训练的子网络结构。
步骤S810,根据代理数据集,对待训练的子网络结构进行从零训练,对各待训练的子网络结构的神经网络参数进行调整,获得训练后的子网络结构。
步骤S811,利用预设评测样本集,对训练后的各子网络结构进行评测处理,生成对应的第二评测结果。
步骤S812,基于各第二评测结果,对训练后的各子网络结构进行排序处理,生成排序后的第二子网络结构序列。
步骤S813,基于排序后的第二子网络结构序列,筛选出目标网络结构。
上述神经网络结构搜索方法中,根据用全量训练集对基础网络结构进行训练的训练结果,从全量训练集中确定出包括遗忘样本和经筛选后的部分非遗忘样本的代理数据集,并基于代理数据集,对基于基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,减少了训练过程中的训练样本数据量,以提升训练速度。进而通过从训练后的超网结构中的各子网络结构中筛选出预设数目个子网络结构。而根据代理数据集,对预设数目个子网络结构进行从零训练,可获得训练后的子网络结构,可在提升训练速度的同时,避免遗忘样本的丢失,保证模型搜索精度。最终通过对训练后的各子网络结构进行评测处理,以基于评测结果确定出目标网络结构。实现了可在提升网络训练速度的同时,避免遗忘样本的丢失,以维持模型搜索精度,进而保障所确定出的神经网络模型符合实际需求。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的神经网络结构搜索方法的神经网络结构搜索装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个神经网络结构搜索装置实施例中的具体限定可以参见上文中对于神经网络结构搜索方法的限定,在此不再赘述。
在一个实施例中,如图9所示,提供了一种神经网络结构搜索装置,包括:代理数据集确定模块902、子网络结构筛选模块904、子网络结构训练模块906以及目标网络结构确定模块908,其中:
代理数据集确定模块902,用于根据用全量训练集对基础网络结构进行训练的训练结果,从全量训练集中确定出代理数据集;代理数据集包括遗忘样本和经筛选后的部分非遗忘样本。
子网络结构筛选模块904,用于基于代理数据集,对基于基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,并从训练后的超网结构中的各子网络结构中筛选出预设数目个子网络结构。
子网络结构训练模块906,用于根据代理数据集,对预设数目个子网络结构进行从零训练,获得训练后的子网络结构。
目标网络结构确定模块908,用于对训练后的各子网络结构进行评测处理,并基于评测结果确定出目标网络结构。
上述神经网络结构搜索装置中,根据用全量训练集对基础网络结构进行训练的训练结果,从全量训练集中确定出包括遗忘样本和经筛选后的部分非遗忘样本的代理数据集,并基于代理数据集,对基于基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,减少了训练过程中的训练样本数据量,以提升训练速度。进而通过从训练后的超网结构中的各子网络结构中筛选出预设数目个子网络结构。而根据代理数据集,对预设数目个子网络结构进行从零训练,可获得训练后的子网络结构,可在提升训练速度的同时,避免遗忘样本的丢失,保证模型搜索精度。最终通过对训练后的各子网络结构进行评测处理,以基于评测结果确定出目标网络结构。实现了可在提升网络训练速度的同时,避免遗忘样本的丢失,以维持模型搜索精度,进而保障所确定出的神经网络模型符合实际需求。
在一个实施例中,代理数据集确定模块,还用于:
获取基于全量训练集对基础网络结构进行迭代训练,得到的各次迭代训练的各训练样本对应的预测结果;基于各次迭代训练的各训练样本对应的预测结果,将全量训练集中的训练样本划分为训练样本遗忘样本和非遗忘样本;对非遗忘样本进行筛选,获得筛选后的部分非遗忘样本;根据遗忘样本和部分非遗忘样本,获得代理数据集。
在一个实施例中,代理数据集确定模块,还用于:
基于任意连续两次迭代训练的预测结果,将训练样本前一次迭代训练的预测结果与训练样本的样本标签一致,而后一次迭代训练的预测结果与训练样本的样本标签不一致的训练样本,确定为遗忘样本;基于各次迭代训练的预测结果,将任意一次迭代训练的预测结果与训练样本的样本标签一致时,之后的各次迭代训练的预测结果均与训练样本的样本标签一致的训练样本,确定为非遗忘样本。
在一个实施例中,子网络结构筛选模块,还用于:
基于代理数据集,对基于基础网络结构构造的超网结构进行网络训练,调整各基础网络结构的神经网络参数,得到训练后的超网结构;根据预设评测样本集,对训练后的超网结构中的各子网络结构进行评测处理,生成对应的第一评测结果;基于各第一评测结果,对各子网络结构进行排序处理,生成排序后的第一子网络结构序列;从第一子网络结构序列中,筛选出预设数目个子网络结构。
在一个实施例中,目标网络结构确定模块,还用于:
利用预设评测样本集,对训练后的各子网络结构进行评测处理,生成对应的第二评测结果;基于各第二评测结果,对训练后的各子网络结构进行排序处理,生成排序后的第二子网络结构序列;基于排序后的第二子网络结构序列,筛选出目标网络结构。
在一个实施例中,子网络结构训练模块,还用于:
基于预设数目个子网络结构进行权重初始化处理,得到待训练的子网络结构;根据代理数据集,对待训练的子网络结构进行从零训练,对各待训练的子网络结构的神经网络参数进行调整,获得训练后的子网络结构。
上述神经网络结构搜索装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图10所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储全量训练集、基础网络结构、代理数据集、遗忘样本、部分非遗忘样本、超网结构、子网络结构、评测结果以及目标网络结构等数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种神经网络结构搜索方法。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种神经网络结构搜索方法,其特征在于,所述方法包括:
根据用全量训练集对基础网络结构进行训练的训练结果,从所述全量训练集中确定出代理数据集;所述代理数据集包括遗忘样本和经筛选后的部分非遗忘样本;
基于所述代理数据集,对基于所述基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,并从训练后的所述超网结构中的各子网络结构中筛选出预设数目个子网络结构;
根据所述代理数据集,对所述预设数目个子网络结构进行从零训练,获得训练后的子网络结构;
对训练后的各所述子网络结构进行评测处理,并基于评测结果确定出目标网络结构。
2.根据权利要求1所述的方法,其特征在于,所述根据用全量训练集对基础网络结构进行训练的训练结果,从所述全量训练集中确定出代理数据集,包括:
获取基于所述全量训练集对所述基础网络结构进行迭代训练,得到的各次迭代训练的各训练样本对应的预测结果;
基于各次迭代训练的各训练样本对应的预测结果,将所述全量训练集中的训练样本划分为训练样本遗忘样本和非遗忘样本;
对所述非遗忘样本进行筛选,获得筛选后的部分非遗忘样本;
根据所述遗忘样本和所述部分非遗忘样本,获得代理数据集。
3.根据权利要求2所述的方法,其特征在于,所述基于各次迭代训练的各训练样本对应的预测结果,将所述全量训练集中的训练样本划分为遗忘样本和非遗忘样本,包括:
基于任意连续两次迭代训练的预测结果,将训练样本前一次迭代训练的预测结果与所述训练样本的样本标签一致,而后一次迭代训练的预测结果与所述训练样本的样本标签不一致的训练样本,确定为遗忘样本;
基于各次迭代训练的预测结果,将任意一次迭代训练的预测结果与所述训练样本的样本标签一致时,之后的各次迭代训练的预测结果均与所述训练样本的样本标签一致的训练样本,确定为非遗忘样本。
4.根据权利要求1至3任意一项所述的方法,其特征在于,所述基于所述代理数据集,对基于所述基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,并从训练后的所述超网结构中的各子网络结构中筛选出预设数目个子网络结构,包括:
基于所述代理数据集,对基于所述基础网络结构构造的超网结构进行网络训练,调整各所述基础网络结构的神经网络参数,得到训练后的超网结构;
根据所述预设评测样本集,对训练后的所述超网结构中的各子网络结构进行评测处理,生成对应的第一评测结果;
基于各所述第一评测结果,对各所述子网络结构进行排序处理,生成排序后的第一子网络结构序列;
从所述第一子网络结构序列中,筛选出预设数目个子网络结构。
5.根据权利要求1至3任意一项所述的方法,其特征在于,所述对训练后的各所述子网络结构进行评测处理,并基于评测结果确定出目标网络结构,包括:
利用所述预设评测样本集,对训练后的各所述子网络结构进行评测处理,生成对应的第二评测结果;
基于各所述第二评测结果,对训练后的各所述子网络结构进行排序处理,生成排序后的第二子网络结构序列;
基于排序后的所述第二子网络结构序列,筛选出目标网络结构。
6.根据权利要求1至3任意一项所述的方法,其特征在于,所述根据所述代理数据集,对所述预设数目个子网络结构进行从零训练,获得训练后的子网络结构,包括:
基于所述预设数目个子网络结构进行权重初始化处理,得到待训练的子网络结构;
根据所述代理数据集,对所述待训练的子网络结构进行从零训练,对各所述待训练的子网络结构的神经网络参数进行调整,获得训练后的子网络结构。
7.一种神经网络结构搜索装置,其特征在于,所述装置包括:
代理数据集确定模块,用于根据用全量训练集对基础网络结构进行训练的训练结果,从所述全量训练集中确定出代理数据集;所述代理数据集包括遗忘样本和经筛选后的部分非遗忘样本;
子网络结构筛选模块,用于基于所述代理数据集,对基于所述基础网络结构构造的超网结构进行网络训练,得到训练后的超网结构,并从训练后的所述超网结构中的各子网络结构中筛选出预设数目个子网络结构;
子网络结构训练模块,用于根据所述代理数据集,对所述预设数目个子网络结构进行从零训练,获得训练后的子网络结构;
目标网络结构确定模块,用于对训练后的各所述子网络结构进行评测处理,并基于评测结果确定出目标网络结构。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210545369.5A CN115130654A (zh) | 2022-05-19 | 2022-05-19 | 神经网络结构搜索方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210545369.5A CN115130654A (zh) | 2022-05-19 | 2022-05-19 | 神经网络结构搜索方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115130654A true CN115130654A (zh) | 2022-09-30 |
Family
ID=83376557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210545369.5A Pending CN115130654A (zh) | 2022-05-19 | 2022-05-19 | 神经网络结构搜索方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115130654A (zh) |
-
2022
- 2022-05-19 CN CN202210545369.5A patent/CN115130654A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113508378B (zh) | 推荐模型的训练方法、推荐方法、装置及计算机可读介质 | |
CN111177473B (zh) | 人员关系分析方法、装置和可读存储介质 | |
CN112819023A (zh) | 样本集的获取方法、装置、计算机设备和存储介质 | |
CN111507768A (zh) | 一种潜在用户的确定方法、模型训练的方法及相关装置 | |
CN110889450B (zh) | 超参数调优、模型构建方法和装置 | |
CN114418035A (zh) | 决策树模型生成方法、基于决策树模型的数据推荐方法 | |
Huynh et al. | Context-similarity collaborative filtering recommendation | |
CN113609337A (zh) | 图神经网络的预训练方法、训练方法、装置、设备及介质 | |
CN116601626A (zh) | 个人知识图谱构建方法、装置及相关设备 | |
CN112131261A (zh) | 基于社区网络的社区查询方法、装置和计算机设备 | |
CN112749737A (zh) | 图像分类方法及装置、电子设备、存储介质 | |
CN114155388B (zh) | 一种图像识别方法、装置、计算机设备和存储介质 | |
CN112148994A (zh) | 信息推送效果评估方法、装置、电子设备及存储介质 | |
CN115879508A (zh) | 一种数据处理方法及相关装置 | |
CN116910357A (zh) | 一种数据处理方法及相关装置 | |
CN115345257B (zh) | 飞行轨迹分类模型训练方法、分类方法、装置及存储介质 | |
CN114936327B (zh) | 元素识别模型的获取方法、装置、计算机设备和存储介质 | |
CN116204709A (zh) | 一种数据处理方法及相关装置 | |
CN116258923A (zh) | 图像识别模型训练方法、装置、计算机设备和存储介质 | |
CN117011219A (zh) | 物品质量检测方法、装置、设备、存储介质和程序产品 | |
CN112364258B (zh) | 基于图谱的推荐方法、系统、存储介质及电子设备 | |
CN115129863A (zh) | 意图识别方法、装置、设备、存储介质和计算机程序产品 | |
CN108920492A (zh) | 一种网页分类方法、系统、终端及存储介质 | |
CN117010480A (zh) | 模型训练方法、装置、设备、存储介质及程序产品 | |
CN111552827B (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 |