神经网络结构搜索方法、装置、电子设备及存储介质制造方法及图纸

技术编号:27687237 阅读:30 留言:0更新日期:2021-03-17 04:06
本申请提供一种神经网络结构搜索方法、装置、电子设备及存储介质,用于改善搜索到有效神经网络结构模型的速度比较慢的问题。该方法包括:计算待搜索结构的多个隐含层输出与指导模型的多个隐含层输出之间的推土机距离损失值;根据推土机距离损失值对待搜索结构进行可微分网络结构搜索,获得待搜索模型;分别计算训练标签和待搜索模型输出的第一结果之间的第一交叉熵,以及计算待搜索模型输出的第一结果和指导模型输出的第二结果之间的第二交叉熵,并根据第一交叉熵和第二交叉熵计算交叉熵损失值;根据推土机距离损失值和交叉熵损失值对待搜索模型进行训练,获得神经网络模型。

【技术实现步骤摘要】
神经网络结构搜索方法、装置、电子设备及存储介质
本申请涉及机器学习和深度学习的
,具体而言,涉及一种神经网络结构搜索方法、装置、电子设备及存储介质。
技术介绍
网络结构搜索(NetworkArchitectureSearch,NAS),又被称为神经网络搜索或者神经网络结构搜索,是指自动生成神经网络结构的方法过程。目前的网络结构搜索的方法包括:基于强化学习的结构搜索算法和基于进化算法的结构搜索方法,这两种网络结构搜索方法都是将网络结构搜索的过程看成对黑箱进行优化的过程,使用强化学习或者变异遗传的思路来找到较优的神经网络结构模型,然而在实现过程中发现,使用上述方法搜索到有效神经网络结构模型的速度比较慢。
技术实现思路
本申请实施例的目的在于提供一种神经网络结构搜索方法、装置、电子设备及存储介质,用于改善搜索到有效神经网络结构模型的速度比较慢的问题。本申请实施例提供了一种神经网络结构搜索方法,包括:计算待搜索结构的多个隐含层输出与指导模型的多个隐含层输出之间的推土机距离损失值;根据推土机距离损失值对待搜索结构进行可微分网络结构搜索,获得待搜索模型;分别计算训练标签和待搜索模型输出的第一结果之间的第一交叉熵,以及计算待搜索模型输出的第一结果和指导模型输出的第二结果之间的第二交叉熵,并根据第一交叉熵和第二交叉熵计算交叉熵损失值;根据推土机距离损失值和交叉熵损失值对待搜索模型进行训练,获得搜索后的神经网络模型。在上述的实现过程中,通过在对待搜索结构进行可微分网络结构搜索的过程中,使用推土机距离(EMD)来量化待搜索结构的多个隐含层与指导模型的多个隐含层在结构上的差异,并在对待搜索模型进行训练的过程中,也加入了表征推土机距离的推土机距离损失值,有效地使用推土机距离量化网络结构搜索过程和模型训练过程的进度,减少了使用强化学习或者变异遗传的思路解决黑箱优化问题的不确定性,从而加快了搜索到有效神经网络结构模型的速度。可选地,在本申请实施例中,计算待搜索结构的多个隐含层输出与指导模型的多个隐含层输出之间的推土机距离损失值,包括:计算指导模型的每个隐含层输出和待搜索结构的每个隐含层输出之间的均方误差;计算指导模型的每个隐含层输出和待搜索结构的每个隐含层输出之间的转移矩阵;根据均方误差和转移矩阵计算推土机距离损失值。在上述的实现过程中,通过根据待搜索结构的多个隐含层输出与指导模型的多个隐含层输出之间的均方误差和转移矩阵计算推土机距离损失值;从而有效地提高了计算推土机距离损失值的准确率。可选地,在本申请实施例中,根据推土机距离损失值对待搜索结构进行可微分网络结构搜索,获得待搜索模型,包括:若推土机距离损失值小于预设阈值,则获取待搜索结构的多个隐含层中的每个隐含层对应的结构参数,隐含层包括多个节点,每个节点包括多个神经网络基础单元,结构参数表征神经网络基础单元之间的连接权重;从每个隐含层对应的多个节点中筛选出结构参数最大的节点,并从结构参数最大的节点对应的多个神经网络基础单元中筛选出结构参数最大的神经网络基础单元,获得待搜索模型。在上述的实现过程中,若推土机距离损失值小于预设阈值,则获取待搜索结构的多个隐含层中的每个隐含层对应的结构参数;从而使用推土机距离(EMD)来量化待搜索结构的多个隐含层与指导模型的多个隐含层在结构上的差异,减少了使用强化学习或者变异遗传的思路解决黑箱优化问题的不确定性,从而加快了搜索到有效神经网络结构模型的速度。可选地,在本申请实施例中,分别计算训练标签和待搜索模型输出的第一结果之间的第一交叉熵,以及计算待搜索模型输出的第一结果和指导模型输出的第二结果之间的第二交叉熵,包括:获得训练标签和训练标签对应的训练数据;使用待搜索模型对训练数据进行预测,获得训练数据对应的第一结果,并使用指导模型训练数据进行预测,获得训练数据对应的第二结果;分别计算训练标签与第一结果之间的第一交叉熵,以及第一结果与第二结果之间的第二交叉熵。在上述的实现过程中,通过训练标签与第一结果之间的第一交叉熵,以及第一结果与第二结果之间的第二交叉熵,来计算获得结合软目标和硬目标的交叉熵损失值;从而避免了直接只使用硬目标来获得交叉熵损失值,提高了计算交叉熵损失值的准确率。可选地,在本申请实施例中,根据推土机距离损失值和交叉熵损失值对待搜索模型进行训练,包括:对推土机距离损失值和交叉熵损失值进行加权融合,获得总损失值;根据总损失值对待搜索模型进行训练。在上述的实现过程中,通过对推土机距离损失值和交叉熵损失值进行加权融合,获得总损失值;根据总损失值对待搜索模型进行训练;从而避免了只根据交叉熵损失值对待搜索模型进行训练,进一步提高了搜索到神经网络结构模型的速度和准确率。可选地,在本申请实施例中,根据总损失值对待搜索模型进行训练,包括:根据总损失值更新待搜索模型的网络参数,网络参数表征待搜索模型的输入数据的权重。本申请实施例还提供了一种神经网络结构搜索装置,包括:第一损失计算模块,用于计算待搜索结构的多个隐含层输出与指导模型的多个隐含层输出之间的推土机距离损失值;网络结构搜索模块,用于根据推土机距离损失值对待搜索结构进行可微分网络结构搜索,获得待搜索模型;第二损失计算模块,用于分别计算训练标签和待搜索模型输出的第一结果之间的第一交叉熵,以及计算待搜索模型输出的第一结果和指导模型输出的第二结果之间的第二交叉熵,并根据第一交叉熵和第二交叉熵计算交叉熵损失值;搜索模型获得模块,用于根据推土机距离损失值和交叉熵损失值对待搜索模型进行训练,获得搜索后的神经网络模型。可选地,在本申请实施例中,第一损失计算模块,包括:均方误差计算模块,用于计算指导模型的每个隐含层输出和待搜索结构的每个隐含层输出之间的均方误差;转移矩阵计算模块,用于计算指导模型的每个隐含层输出和待搜索结构的每个隐含层输出之间的转移矩阵;距离损失计算模块,用于根据均方误差和转移矩阵计算推土机距离损失值。可选地,在本申请实施例中,网络结构搜索模块,包括:结构参数获取模块,用于若推土机距离损失值小于预设阈值,则获取待搜索结构的多个隐含层中的每个隐含层对应的结构参数,隐含层包括多个节点,每个节点包括多个神经网络基础单元,结构参数表征神经网络基础单元之间的连接权重;结构参数筛选模块,用于从每个隐含层对应的多个节点中筛选出结构参数最大的节点,并从结构参数最大的节点对应的多个神经网络基础单元中筛选出结构参数最大的神经网络基础单元,获得待搜索模型。可选地,在本申请实施例中,第二损失计算模块,包括:标签数据获得模块,用于获得训练标签和训练标签对应的训练数据;数据标签预测模块,用于使用待搜索模型对训练数据进行预测,获得训练数据对应的第一结果,并使用指导模型对训练数据进行预测,获得训练数据对应的第二结果;交叉熵计算子模块,用于分别计算训练标签与第一结果之间的第一交叉熵,以及第一结果与第二结果之间的第二交叉熵。可选地,在本申请实施例中,搜索模型获得模块,包括:总损失值获得模块,用于对推土机距离损失值和交叉熵损失值进行加权融合,获得总损失值;搜索模型训练本文档来自技高网...

【技术保护点】
1.一种神经网络结构搜索方法,其特征在于,包括:/n计算待搜索结构的多个隐含层输出与指导模型的多个隐含层输出之间的推土机距离损失值;/n根据所述推土机距离损失值对所述待搜索结构进行可微分网络结构搜索,获得待搜索模型;/n分别计算训练标签和所述待搜索模型输出的第一结果之间的第一交叉熵,以及计算所述待搜索模型输出的第一结果和所述指导模型输出的第二结果之间的第二交叉熵,并根据所述第一交叉熵和所述第二交叉熵计算交叉熵损失值;/n根据所述推土机距离损失值和所述交叉熵损失值对所述待搜索模型进行训练,获得搜索后的神经网络模型。/n

【技术特征摘要】
1.一种神经网络结构搜索方法,其特征在于,包括:
计算待搜索结构的多个隐含层输出与指导模型的多个隐含层输出之间的推土机距离损失值;
根据所述推土机距离损失值对所述待搜索结构进行可微分网络结构搜索,获得待搜索模型;
分别计算训练标签和所述待搜索模型输出的第一结果之间的第一交叉熵,以及计算所述待搜索模型输出的第一结果和所述指导模型输出的第二结果之间的第二交叉熵,并根据所述第一交叉熵和所述第二交叉熵计算交叉熵损失值;
根据所述推土机距离损失值和所述交叉熵损失值对所述待搜索模型进行训练,获得搜索后的神经网络模型。


2.根据权利要求1所述的方法,其特征在于,所述计算待搜索结构的多个隐含层输出与指导模型的多个隐含层输出之间的推土机距离损失值,包括:
计算所述指导模型的每个隐含层输出和所述待搜索结构每个隐含层输出之间的均方误差;
计算所述指导模型的每个隐含层输出和所述待搜索结构的每个隐含层输出之间的转移矩阵;
根据所述均方误差和所述转移矩阵计算所述推土机距离损失值。


3.根据权利要求1所述的方法,其特征在于,所述根据所述推土机距离损失值对所述待搜索结构进行可微分网络结构搜索,获得待搜索模型,包括:
若所述推土机距离损失值小于预设阈值,则获取所述待搜索结构的多个隐含层中的每个隐含层对应的结构参数,所述隐含层包括多个节点,每个所述节点包括多个神经网络基础单元,所述结构参数表征神经网络基础单元之间的连接权重;
从所述每个隐含层对应的多个节点中筛选出结构参数最大的节点,并从所述结构参数最大的节点对应的多个神经网络基础单元中筛选出结构参数最大的神经网络基础单元,获得所述待搜索模型。


4.根据权利要求1所述的方法,其特征在于,所述分别计算训练标签和所述待搜索模型输出的第一结果之间的第一交叉熵,以及计算所述待搜索模型输出的第一结果和所述指导模型输出的第二结果之间的第二交叉熵,包括:
获得所述训练标签和所述训练标签对应的训练数据;
使用所述待搜索模型对所述训练数据进行预测,获得所述训练数据对应的所述第一结果,并使用所述指导模型对所述训练数据进行预...

【专利技术属性】
技术研发人员:李健铨刘小康
申请(专利权)人:鼎富智能科技有限公司
类型:发明
国别省市:安徽;34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1