版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
(19)国家知识产权局(12)发明专利(10)授权公告号CN114078195B(65)同一申请的已公布的文献号(73)专利权人华为技术有限公司为总部办公楼(72)发明人周彧聪钟钊(74)专利代理机构北京龙双利达知识产权代理有限公司11329专利代理师王龙华王君第27页.FORFINE-TUNING.ICLR.2024,第1页-第20页.分类模型的训练方法、超参数的搜索方法以及装置本申请涉及人工智能技术领域公开了一种分类模型的训练方法、超参数的搜索方法以及装置,训练方法包括获取待训练分类模型的目标超参数,所述目标超参数用于控制所述待训练分类模型的梯度更新步长,所述待训练分类模型包括缩放不变性线性层,所述缩放不变性线性层使得所述待训练分类模型的权重参数乘以任意缩放系数时输出的预测分类结果保持不变;根据所述目标超参数与目标训练方式对所述待训练分类模型的权重参数进行更新,得到训练后的分类模型,所述目标训练方式使得所述待训练分类模型更新前与更新后的权重参数的模长相同。基于本获取待训练分类模型的目标超参数,所述目标超参数用于控制待训练分类模型的梯度更新步长,所述待训练分类模型包括缩放不变线性层,所述缩放线性不变性线性层使得所述待分类模型的权重乘以任意缩放系数时输出的预测分类结果保持不变根据所述目标超参数与目标训练方式对所述待训练分类模型的权重参数进行更新,得到训练后的分类模型,所述目标训练方式使得所述待训练分类模型更新前与更新后的权重参数的模长相同2获取待训练分类模型的目标超参数,所述目标超参数为等效学习率,所述目标超参数根据所述目标超参数与目标训练方式对所述待训练分类模型3.如权利要求1或2所述的训练方法,其特征在于,所述缩放不变性线性层根据以下公通过以下公式对所述更新后的权重参数进行处理,使得所述获取目标超参数的候选值,所述目标超参数为等效学习率,所述目标超参数用于控制不变性线性层使得所述待训练分类模型的权重参数乘以任意缩放系数时输出的预测分类根据所述候选值与目标训练方式,得到所述待训练分类模型的性能参数,所述目标训7.如权利要求5或6所述的搜索方法,其特征在于,所述获取目标超参数的候选值,包3根据当前训练步数、预先配置的训练步数以及所述待训练分类模型的精度的变化趋势练步数以及所述待训练分类模型的精度的变化趋势更新所述目标超参数的初始搜索范围,若所述当前训练步数小于所述预先配置的训练步数,则将范围的上边界更新为所述当前训练步数中所述待训练分类模型的最优精度对应的所述目练步数以及所述待训练分类模型的精度的变化趋势更新所述目标超参数的初始搜索范围,若所述当前训练步数等于所述预先配置的训练步数,则将所述目标超参数的初始搜索范围的上边界更新为第一候选值,所述目标超参数的搜索范围的下边界更新为第二候选通过以下公式对所述更新后的权重参数进行处理,使得所述处理单元,用于根据所述目标超参数与目标训练方式对所述待训练分类模型的权重参4根据所述目标超参数和所述目标训练方式通过反向传播算通过以下公式对所述更新后的权重参数进行处理,使得所述处理单元,用于根据所述候选值与目标训练方式,得到所述待训练分类模型的性能参数,所述目标训练方式使得所述待训练分类模型更新前与更新后的权重参数的模长相同,根据当前训练步数、预先配置的训练步数以及所述待训练分若所述当前训练步数小于所述预先配置的训练步数,则将范围的上边界更新为所述当前训练步数中所述待训练分类模型的最优精度对应的所述目若所述当前训练步数等于所述预先配置的训练步数,则将范围的上边界更新为第一候选值,所述目标超参数的搜索范围的下边界更新为第二候选5目标超参数的候选值相邻的候选值。23.如权利要求17或18、20至22中任一项所述的搜索装置,其特征在于,所述缩放不变性线性层根据以下公式得到所述预测分类结果:其中,Y表示第i次迭代更新的权重参数对应的预测分类结果;W表示所述第i次迭代更24.如权利要求17或18、20至22中任一项所述的搜索装置,其特征在于,所述目标训练方式包括:通过以下公式对所述更新后的权重参数进行处理,使得所述待训练分类模型更新前与更新后的权重参数的模长相同:表示所述待训练分类模型的初始权重模长。处理器,用于执行所述存储器存储的程序,当所述处理器执行所述存储器存储的程序时,所述处理器用于执行权利要求1至4中任一项所述的训练方法。处理器,用于执行所述存储器存储的程序,当所述处理器执行所述存储器存储的程序时,所述处理器用于执行权利要求5至12中任一项所述的搜索方法。27.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有程序指令,当所述程序指令由处理器运行时,实现权利要求1至4中任一项所述的训练方法。28.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有程序指令,当所述程序指令由处理器运行时,实现权利要求5至12中任一项所述的搜索方法。6技术领域[0001]本申请涉及人工智能领域,并且更具体地,涉及一种分类模型的训练方法、超参数的搜索方法以及装置。背景技术[0002]人工智能(artificialintelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能领域的研究包括机器人,自然语言处理,计算机视觉,决策与推理,人机交互,推荐与搜[0003]神经网络中通常包含数百万或者更多的可训练的参数权重,这些参数可以通过一系列优化算法进行训练;这些参数中还包含一些需要事先确定的参数,称为超参数(Hyper-parameter)。超参数对神经网络的训练效果有着显著的影响,不合适的超参数往往会导致神经网络训练不收敛或者训练效果较差;但是,目前超参数的设定通常依赖人工经验,并且需要多次调整,从而消耗大量人力和计算资源。[0004]因此,如何有效的降低训练分类模型所消耗的计算资源成为了亟需解决的技术问发明内容[0005]本申请提供一种分类模型的训练方法、超参数的搜索方法以及装置,通过本申请实施例提供的分类模型的训练方法能够在确保分类模型的精度的情况下,降低训练分类模型所消耗的计算资源。[0006]进一步,本申请实施例提供的超参数的搜索方法可以能够减少超参数的搜索空[0008]获取待训练分类模型的目标超参数,所述目标超参数用于控制所述待训练分类模型的梯度更新步长,所述待训练分类模型包括缩放不变性线性层,所述缩放不变性线性层使得所述待训练分类模型的权重参数乘以任意缩放系数时输出的预测分类结果保持不变;根据所述目标超参数与目标训练方式对所述待训练分类模型的权重参数进行更新,得到训练后的分类模型,所述目标训练方式使得所述待训练分类模型更新前与更新后的权重参数的模长相同。[0009]应理解,当神经网络具有缩放不变性时,其权重参数的步长反比于权重参数模长的平方;其中,缩放不变性是指权重w乘以任意缩放系数,该层的输出y可以保持不变。权重衰减超参数的作用主要是约束参数的模长,从而避免步长随着权重参数的模长的增长而急7以及采用了目标训练方式即将待训练分类模型更新前与更新后的权重参数的模长进行固数是根据所述目标超参数和所述目标训练方式通过反向传播算8步长,所述待训练分类模型包括缩放不变性线性层,所述缩放不变性线性层用于使得所述待训练分类模型的权重参数乘以任意缩放系数时输出的预测分类结果保持不变;[0024]根据所述候选值与目标训练方式,得到所述待训练分类模型的性能参数,所述目标训练方式使得所述待训练分类模型更新前与更新后的权重参数的模长相同,所述性能参数包括所述待训练分类模型的精度;[0025]根据所述性能参数从所述候选值中确定所述目标超参数的目标值。[0026]需要说明的是,在本申请的实施例中通过采用缩放不变性线性层可以替换待训练分类模型中的分类层,从而使得待分类训练模型中的各个层均具有缩放不变性,即缩放不敏感性。[0027]应理解,在本申请的实施例中通过采用目标训练方式可以将待训练分类模型中包括的两个重要的超参数即学习率与权重衰减等效替换为目标超参数;由于通过目标训练方式可以使得待训练分类模型更新前与更新后的权重参数的模长相同;因此,在对待训练分类模型的权重参数进行更新时可以仅需要对目标超参数进行搜索从而确定目标超参数的目标值,其中,目标超参数可以是指等效学习率,等效学习率在待训练分类模型中的作用可以看作是与学习率的作用相同或者相近,等效学习率用于控制待训练分类模型的梯度更新[0028]在本申请的实施例中,通过在待训练分类模型中采用缩放不变性线性层可以替换待训练分类模型中的分类层,使得待训练分类模型的各个层均具有缩放不变性;进一步,通过采用目标训练方式,使得仅调整一个目标超参数就能够达到正常训练下调整两个超参数(学习率和权重衰减)所能达到的最优精度;即将两个超参数的搜索过程等效替换为一个目标超参数的搜索过程,从而缩减超参数的搜索维度,提高目标超参数的搜索效率;同时,同[0029]结合第二方面,在第二方面的某些实现方式中,所述目标值对应的所述待训练分类模型的精度大于所述候选值中其它候选值对应的所述待训练分类模型的精度。[0030]在本申请的实施例中,目标超参数的目标值可以是指在对待训练分类模型分配目标超参数的各个候选值时,使得待训练分类模型的模型精度达到最优精度对应的候选值。[0031]结合第二方面,在第二方面的某些实现方式中,所述获取目标超参数的候选值,包[0032]根据所述目标超参数的初始搜索范围进行均匀划分,得到所述目标超参数的候选值。[0033]在本申请的实施例中目标超参数的候选值可以是根据用户设置的初始搜索范围进行均匀划分,得到的目标超参数的多个候选值。[0034]在一种可能的实现方式中,除了上述对初始搜索范围进行均匀划分得到多个候选值外,也可以采用其它方式对初始搜索范围进行划分。[0036]根据当前训练步数、预先配置的训练步数以及所述待训练分类模型的精度的变化趋势更新所述目标超参数的初始搜索范围。[0037]在一种可能的实现方式中,根据当前训练步数、预先配置的训练步数以及待训练分类模型的精度的单调性更新目标超参数的初始搜索范围。9的训练步数以及所述待训练分类模型的精度的变化趋势更新所述目标超参数的初始搜索搜索范围的上边界更新为所述当前训练步数中所述待训练分类模型的最优精度对应的所的训练步数以及所述待训练分类模型的精度的变化趋势更新所述目标超参数的初始搜索训练方式对待训练分类模型的权重进行迭代更新可以使得更新前与更新后的权重参数的放不变性线性层使得所述待训练分类模型的权重参数乘以任意缩放系数时输出的预测分层使得所述待训练分类模型的权重参数乘以任意缩放系数时输出的预测分类结果保持不数,所述目标训练方式使得所述待训练分类模型更新前与更新后的权重参数的模长相同,类模型的权重参数进行更新时可以仅需要对目标超参数进行搜索从而确定目标超参数的标超参数的搜索过程,从而缩减超参数的搜索维度,提高目标超参数的搜索效率;同时,同[0066]结合第四方面,在第四方面的某些实现方式中,所述目标值对应的所述待训练分类模型的精度大于所述候选值中其它候选值对应的所述待训练分类模型的精度。[0067]在本申请的实施例中,目标超参数的目标值可以是指在对待训练分类模型分配目标超参数的各个候选值时,使得待训练分类模型的模型精度达到最优精度对应的候选值。[0069]根据所述目标超参数的初始搜索范围进行均匀划分,得到所述目标超参数的候选值。[0070]在本申请的实施例中目标超参数的候选值可以是根据用户设置的初始搜索范围进行均匀划分,得到的目标超参数的多个候选值。[0072]根据当前训练步数、预先配置的训练步数以及所述待训练分类模型的精度的变化趋势更新所述目标超参数的初始搜索范围。[0073]在本申请的实施例中,为了使得在进行目标超参数搜索时能够快速搜索到目标超参数的目标值即最优目标超参数,则可以根据待训练分类模型的性能参数的单调性对目标超参数的初始搜索范围进行更新,缩减目标超参数的搜索范围,提高目标超参数的搜索效率。[0075]若所述当前训练步数小于所述预先配置的训练步数,则将所述目标超参数的初始搜索范围的上边界更新为所述当前训练步数中所述待训练分类模型的最优精度对应的所述目标超参数的候选值。[0077]若所述当前训练步数等于所述预先配置的训练步数,则将所述目标超参数的初始搜索范围的上边界更新为第一候选值,所述目标超参数的搜索范围的下边界更新为第二候选值,所述第一候选值与所述第二候选值是指与所述待训练分类模型的最优精度对应的所述目标超参数的候选值相邻的候选值。[0078]结合第四方面,在第四方面的某些实现方式中,所述缩放不变性线性层根据以下公式得到所述预测分类结果:代更新的权重参数;X表示待分类特征;S表示尺度常数。[0082]通过以下公式对所述更新后的权重参数进行处理,使得所述待训练分类模型更新前与更新后的权重参数的模长相同:[0084]其中,W:+1表示第i+1次迭代更新的权重参数;W表示第i次迭代更新的权重参数;Norm,表示所述待训练分类模型的初始权重模长。[0085]在本申请的实施例中,在待训练分类模型的各个层具有缩放不变性时,通过目标训练方式对待训练分类模型的权重进行迭代更新可以使得更新前与更新后的权重参数的模长相同;即通过目标训练方式可以实现了权重衰减的效果,同时也不再需要人工调节。用于执行所述存储器存储的程序,当所述存储器存储的程序被所述处理器执行时,所述处理器用于:获取待训练分类模型的目标超参数,所述目标超参数用于控制所述待训练分类模型的梯度更新步长,所述待训练分类模型包括缩放不变性线性层,所述缩放不变性线性层使得所述待训练分类模型的权重参数乘以任意缩放系数时输出的预测分类结果保持不变;根据所述目标超参数与目标训练方式对所述待训练分类模型的权重参数进行更新,得到训练后的分类模型,所述目标训练方式使得所述待训练分类模型更新前与更新后的权重参数的模长相同。[0087]在一种可能的实现方式中,上述搜索装置中包括的处理器还用于执行第一方面中的任意一种实现方式中训练方法。[0088]应理解,在上述第一方面中对相关内容的扩展、限定、解释和说明也适用于第三方面中相同的内容。于执行所述存储器存储的程序,当所述存储器存储的程序被所述处理器执行时,所述处理器用于:获取目标超参数的候选值,所述目标超参数用于控制待训练分类模型的梯度更新步长,所述待训练分类模型包括缩放不变性线性层,所述缩放不变性线性层使得所述待训练分类模型的权重参数乘以任意缩放系数时输出的预测分类结果保持不变;根据所述候选值与目标训练方式,得到所述待训练分类模型的性能参数,所述目标训练方式使得所述待训练分类模型更新前与更新后的权重参数的模长相同,所述性能参数包括所述待训练分类模型的精度;根据所述性能参数从所述候选值中确定所述目标超参数的目标值。[0090]在一种可能的实现方式中,上述搜索装置中包括的处理器还用于执行第二方面中的任意一种实现方式中搜索方法。[0091]应理解,在上述第二方面中对相关内容的扩展、限定、解释和说明也适用于第三方面中相同的内容。[0092]第七方面,提供了一种计算机可读介质,该计算机可读介质存储用于设备执行的程序代码,该程序代码包括用于执行上述第一方面以及第一方面中任意一种实现方式中的训练方法。[0093]第八方面,提供了一种计算机可读介质,该计算机可读介质存储用于设备执行的程序代码,该程序代码包括用于执行上述第二方面以及第二方面中任意一种实现方式中的搜索方法。[0094]第九方面,提供了一种计算机可读介质,该计算机可读介质存储用于设备执行的程序代码,该程序代码包括用于执行上述第一方面以及第一方面中任意一种实现方式中的训练方法。[0095]第十方面,提供了一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述第二方面以及第二方面中任意一种实现方式中的搜索方[0096]第十一方面,提供了一种芯片,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,执行上述第一方面以及第一方面中任意一种实现方式中的训练方法。[0097]可选地,作为一种实现方式,所述芯片还可以包括存储器,所述存储器中存储有指令,所述处理器用于执行所述存储器上存储的指令,当所述指令被执行时,所述处理器用于执行上述第一方面以及第一方面中任意一种实现方式中的训练方法。[0098]第十二方面,提供了一种芯片,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,执行上述第二方面以及第二方面中任意一种实现方式中的搜索方法。[0099]可选地,作为一种实现方式,所述芯片还可以包括存储器,所述存储器中存储有指令,所述处理器用于执行所述存储器上存储的指令,当所述指令被执行时,所述处理器用于执行上述第二方面以及第二方面中任意一种实现方式中的搜索方法。附图说明[0100]图1是本申请实施例提供的超参数的搜索方法的系统架构的示意图;[0101]图2是本申请实施例提供的一种系统架构的示意图;[0102]图3是本申请实施例提供的一种芯片的硬件结构的示意图;[0103]图4是本申请实施例提供了一种系统架构的示意图;[0104]图5是本申请实施例提供的分类模型的训练方法的示意性流程图;[0105]图6是本申请实施例提供的基于缩放不变性线性层与模长固定方式对待训练分类模型的权重进行迭代更新的示意图;[0106]图7是本申请实施例提供的超参数的搜索方法的示意性流程图;[0107]图8是本申请实施例提供的超参数的搜索方法的示意图;[0108]图9是本申请实施例提供的分类模型的训练装置的示意性框图;[0109]图10是本申请实施例提供的超参数的搜索装置的示意性框图;[0110]图11是本申请实施例提供的分类模型的训练装置的硬件结构示意图;[0111]图12是本申请实施例提供的超参数的搜索装置的硬件结构示意图。具体实施方式[0112]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述;显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。[0113]首先对本申请实施例中涉及的概念进行简单的说明。[0115]在机器学习中,超参数是指在开始学习过程之前设置值的参数,而不是通过训练得到的参数数据。通常情况下,可以对超参数进行优化,给学习机选择一组最优超参数,以提高学习的性能和效果。[0117]学习率是指训练神经网络时的一个重要的超参数;学习率可以用于控制神经网络训练过程中梯度更新的步长。[0119]权重衰减是指训练神经网络时的一个重要的超参数;权重衰减可以用于控制对权重大小的约束强度。[0120]下面结合图1对本申请实施例中超参数的搜索方法的系统架构进行说明。[0121]如图1所示,系统架构100中可以包括等效学习率搜索模块110以及缩放不变训练模块111;其中,等效学习率搜索模块110用于优化神经网络模型的超参数,从而得到神经网络模型对应的最优精度以及最优精度对应的最优模型权重。缩放不变训练模块111用于根据输入的不同的等效学习率超参数对神经网络模型的权重进行迭代更新,得到神经网络模型的参数。[0122]需要说明的是,等效学习率超参数可以用于控制神经网络训练过程中梯度更新的步长,通过在神经网络通过仅调整等效学习率超参数,使得神经网络模型能够达到正常训练下调整学习率和权重衰减两个超参数所能达到的模型最优精度。[0123]示例性地,如图1所示,等效学习率搜索模块110以及缩放不变训练模块111可以部署于云或者服务器中。[0124]图2示出了本申请实施例提供的一种系统架构200。[0125]在图2中,数据采集设备260用于采集训练数据。针对本申请实施例的待训练分类模型来说,可以通过数据采集设备260采集的训练数据对待训练分类模型进行训练。[0126]示例性地,在本申请的实施例中对于待训练分类模型来说,训练数据可以包括待分类数据以及待分类数据对应的样本标签。[0127]在采集到训练数据之后,数据采集设备260将这些训练数据存入数据库230,训练设备220基于数据库230中维护的训练数据训练得到目标模型/规则201。[0128]下面对训练设备220基于训练数据得到目标模型/规则201进行描述。[0129]例如,训练设备220对输入的待训练分类模型的训练数据进行处理,将待训练分类模型输出的待分类数据对应的预测分类结果与待分类数据对应的真值进行对比,直到训练设备220输出的预测分类结果与真值的差值小于一定的阈值,从而完成分类模型的训练。[0130]需要说明的是,在实际的应用中,所述数据库230中维护的训练数据不一定都来自于数据采集设备260的采集,也有可能是从其他设备接收得到的。[0131]另外需要说明的是,训练设备220也不一定完全基于数据库230维护的训练数据进行目标模型/规则201的训练,也有可能从云端或其他地方获取训练数据进行模型训练,上述描述不应该作为对本申请实施例的限定。[0132]根据训练设备220训练得到的目标模型/规则201可以应用于不同的系统或设备中,如应用于图2所示的执行设备210,所述执行设备210可以是终端,如手机终端,平板电脑,笔记本电脑,增强现实(augmentedreality,AR)/虚拟现实(virtualreality,VR),车载终端等,还可以是服务器,或者,云端服务器等。在图2中,执行设备210配置输入/输出(input/output,I/0)接口212,用于与外部设备进行数据交互,用户可以通过客户设备240向I/0接口212输入数据,所述输入数据在本申请实施例中可以包括:客户设备输入的训练[0133]预处理模块213和预处理模块214用于根据I/0接口212接收到的输入数据进行预处理;在本申请实施例中,也可以没有预处理模块213和预处理模块214(也可以只有其中的一个预处理模块),而直接采用计算模块211对输入数据进行处理。[0134]在执行设备210对输入数据进行预处理,或者在执行设备210的计算模块211执行计算等相关的处理过程中,执行设备210可以调用数据存储系统250中的数据、代码等以用于相应的处理,也可以将相应处理得到的数据、指令等存入数据存储系统250中。[0135]最后,I/0接口212将处理结果,比如,将目标超参数的目标值返回给客户设备2从而提供给用户。[0136]值得说明的是,训练设备220可以针对不同的目标或称不同的任务,基于不同的训练数据生成相应的目标模型/规则201,该相应的目标模型/规则201即可以用于实现上述目标或完成上述任务,从而为用户提供所需的结果。[0137]在图2中所示情况下,在一种情况下,用户可以手动给定输入数据,该手动给定可以通过I/0接口212提供的界面进行操作。[0138]另一种情况下,客户设备240可以自动地向I/0接口212发送输入数据,如果要求客户设备240自动发送输入数据需要获得用户的授权,则用户可以在客户设备240中设置相应权限。用户可以在客户设备240查看执行设备210输出的结果,具体的呈现形式可以是显示、声音、动作等具体方式。客户设备240也可以作为数据采集端,采集如图所示输入I/0接口212的输入数据及输出I/0接口212的输出结果作为新的样本数据,并存入数据库230。当然,也可以不经过客户设备240进行采集,而是由I/0接口212直接将如图所示输入I/0接口212的输入数据及输出I/0接口212的输出结果,作为新的样本数据存入数据库130。[0139]值得注意的是,图2仅是本申请实施例提供的一种系统架构的示意图,图中所示设行设备210是外部存储器;在其它情况下,也可以将数据存储系统250置于执行设备210中。[0140]图3是本申请实施例提供的一种芯片的硬件结构的示意图。[0141]图3所示的芯片可以包括神经网络处理器300(neural-networkprocessingunit,NPU);该芯片可以被设置在如图2所示的执行设备210中,用以完成计算模块211的计算工作。该芯片也可以被设置在如图2所示的训练设备220中,用以完成训练设备220的训练工作并输出目标模型/规则201。[0142]NPU300作为协处理器挂载到主中央处理器(centralprocessingunit,CPU)上,由主CPU分配任务。NPU300的核心部分为运算电路303,控制器304控制运算电路303提取存储器(权重存储器或输入存储器)中的数据并进行运算。[0143]在一些实现中,运算电路303内部包括多个处理单元(processengine,PE)。在一些实现中,运算电路303是二维脉动阵列;运算电路303还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路303是通用的矩阵处理器。[0144]举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C;运算电路303从权重存储器302中取矩阵B相应的数据,并缓存在运算电路303中每一个PE上;运算电路303从输入存储器301中取矩阵A数据与矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器308(accumulator)中。[0145]向量计算单元307可以对运算电路303的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。例如,向量计算单元307可以用于神经网络中非卷积/非FC层的网络计算,如池化(pooling),批归一化(batchnormalization),局部响应归一化(localresponsenormalization)等。[0146]在一些实现种,向量计算单元307能将经处理的输出的向量存储到统一存储器306。例如,向量计算单元307可以将非线性函数应用到运算电路303的输出,例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元307生成归一化的值、合并值,或二者[0147]在一些实现中,处理过的输出的向量能够用作到运算电路303的激活输入,例如用于在神经网络中的后续层中的使用。[0148]统一存储器306用于存放输入数据以及输出数据。权重数据直接通过存储单元访问控制器305(directmemoryaccesscontroller,DMAC)将外部存储器中的输入数据存入到输入存储器301和/或统一存储器306、将外部存储器中的权重数据存入权重存储器302,以及将统一存储器306中的数据存入外部存储器。取指存储器309之间进行交互。[0150]与控制器304连接的取指存储器309(instructionfetchbuffer)用于存储控制器304使用的指令;控制器304用于调用取指存储器309中缓存的指令,实现控制该运算加速器的工作过程。[0151]一般地,统一存储器306,输入存储器301,权重存储器302以及取指存储器309均为片上(On-Chip)存储器,外部存储器为该NPU外部的存储器,该外部存储器可以为双倍数据率同步动态随机存储器(doubledataratesynchronousdynamicrandomaccess[0152]示例性地,本申请实施例中的待训练分类模型的权重参数的迭代更新的相关运算可以由运算电路303或向量计算单元307执行。[0153]上文中介绍的图2中的执行设备210能够执行本申请实施例的超参数的搜索方法的各个步骤,3所示的芯片也可以用于执行本申请实施例的超参数的搜索方法的各个步骤。[0154]图4所示是本申请实施例提供了一种系统架构。该系统架构400可以包括本地设备420、本地设备430以及执行设备410和数据存储系统450,其中,本地设备420和本地设备430通过通信网络与执行设备410连接。[0155]示例性地,执行设备410可以由一个或多个服务器实现。[0156]可选的,执行设备410可以与其它计算设备配合使用。例如:数据存储器、路由器、负载均衡器等设备。执行设备410可以布置在一个物理站点上,或者,分布在多个物理站点上。执行设备410可以使用数据存储系统450中的数据,或者,调用数据存储系统450中的程序代码来实现本申请实施例的组合优化任务的处理方法。[0157]需要说明的是,上述执行设备410也可以称为云端设备,此时执行设备410可以部署在云端。[0158]在一个示例中,执行设备410可以执行以下过程:获取待训练分类模型的目标超参数,所述目标超参数用于控制所述待训练分类模型的梯度更新步长,所述待训练分类模型包括缩放不变性线性层,所述缩放不变性线性层使得所述待训练分类模型的权重参数乘以任意缩放系数时输出的预测分类结果保持不变;根据所述目标超参数与目标训练方式对所述待训练分类模型的权重参数进行更新,得到训练后的分类模型,所述目标训练方式使得所述待训练分类模型更新前与更新后的权重参数的模长相同。[0159]在一种可能的实现方式中,本申请实施例的分类模型的训练方法可以是在云端执行的离线方法,比如,可以由上述执行设备410中执行本申请实施例的训练方法。[0160]在一种可能的实现方式中,本申请实施例的分类模型的训练方法可以是由本地设备420或者本地设备430执行。[0161]在一个示例中,执行设备410可以执行以下过程:获取目标超参数的候选值,所述目标超参数用于控制待训练分类模型的梯度更新步长,所述待训练分类模型包括缩放不变性线性层,所述缩放不变性线性层使得所述待训练分类模型的权重参数乘以任意缩放系数时输出的预测分类结果保持不变;根据所述候选值与目标训练方式,得到所述待训练分类模型的性能参数,所述目标训练方式使得所述待训练分类模型更新前与更新后的权重参数的模长相同,所述性能参数包括所述待训练分类模型的精度;根据所述性能参数从所述候选值中确定所述目标超参数的目标值。[0162]在一种可能的实现方式中,本申请实施例的超参数的搜索方法可以是在云端执行的离线方法,比如,可以由上述执行设备410中执行本申请实施例的搜索方法。[0163]在一种可能的实现方式中,本申请实施例的超参数的搜索方法可以是由本地设备420或者本地设备430执行。[0164]例如,用户可以操作各自的用户设备(例如,本地设备420和本地设备430)与执行设备410进行交互。每个本地设备可以表示任何计算设备,例如,个人计算机、计算机工作戴设备、机顶盒、游戏机等。每个用户的本地设备可以通过任何通信机制/通信标准的通信的任意组合。[0165]下面结合图5至图8详细阐述本申请实施例的技术方案。[0166]图5是本申请实施例提供的分类模型的训练方法的示意性流程图。在一些示例中,该训练方法500可以由图2中的执行设备210、图3所示的芯片以及图4中的执行设备410或者本地设备等设备执行。图5中的方法500可以包括步骤S510至步骤S520,下面分别对这些步骤进行详细的描述。[0167]S510、获取待训练分类模型的目标超参数。[0168]其中,目标超参数用于控制待训练分类模型的梯度更新步长,待训练分类模型包括缩放不变性线性层,缩放不变性线性层使得待训练分类模型的权重参数乘以任意缩放系数时输出的预测分类结果保持不变。[0169]需要说明的是,当神经网络的参数具有缩放不变性时,其权重参数的效步长反比于权重参数模长的平方;其中,缩放不变性是指权重w乘以任意缩放系数,该层的输出y可以保持不变。权重衰减超参数的作用主要是约束参数的模长,从而避免步长随着权重参数的模长的增长而急剧减小。但是,由于权重衰减是一种隐式的约束,权重参数的模长还是会随作用可以看作是与学习率的作用相同或者相近,等效学习率用[0174]其中,目标训练方式使得待训练分类模型更新前与更新后的权重参数的模长相类结果与样本特征对应的真值的差异小于或者等于预设范围;其中,目标超参数可以是指以及采用了目标训练方式即将待训练分类模型更新前与更新后的权重参数的模长进行固地设备等设备执行。图7中的方法600可以包括步骤S610至步骤S630,下面分别对这些步骤[0194]其中,目标训练方式使得待训练分类模型更新前与更新后的权重参数的模长相对待训练分类模型进行训练时可以仅需要对目标超参数进行搜索从而确定目标超参数的训练方式对待训练分类模型的权重进行迭代更新可以使得更新前与更新后的权重参数的[0209]在本申请的实施例中目标超参数的候选值可以是根据用户设置的初始搜索范围步数以及所述待训练分类模型的精度的变化趋势更新所述目标搜索范围的上边界更新为所述当前训练步数中所述待训练分类模型的最优精度对应的所[0218]示意性地,图6是本申请实施例提供的基于缩放不变性线性层对待训练分类模型[0220]图6所示的待训练分类模型的权重训练方法,可以通过目标训练方式即显示的固再需要人工调节。由于采用图6所示的神经网络的权重训练的方法的前提是神经网络需要[0222]示意性地,缩放不变性线性层可以采用以下公式对第一权重参数与特征进行处[0228]示例性地,可以根据预测结果Y₁与特征X对应的真值之间的差异对第一权重参数[0230]示意性地,可以采用以下公式对更新后的第i+1次迭代更新的权重参数进行模长的等效学习率的范围为[LRin,LRmax];划分数为K;搜索轮数为T;每轮搜索训练步数为E;并[0240]例如,可以对等效学习率的范围进行均匀划分,从而得到K个等效学习率的候选[0244]步骤五:若当前训练步数小于最大训练步数E,则将等效学习率的范围上界更新[0245]步骤六:若当前训练步数等于最大训练步[0246]步骤七:若当前最高精度大于全局最优精度,则更新全局最优精度和全局最优模[0247]在本申请的实施例中,可以通过利用待训练分类模型的精度关于等效学习率的单峰趋势,对等效学习率的范围进行均匀划分,从而能够快速确定在当前训练轮数下的最优的等效学习率的范围;换而言之,可以通过最优的等效学习率在不同训练轮数下的单调性,分阶段快速缩减最优的等效学习率范围,从而快速搜索得到最优的等效学习率。[0248]在一个示例中,将本申请实施例提供的超参数的搜索方法应用于ImageNet图像分类任务上的超参数优化;以深度神经网络是ResNet50为例进行举例说明。[0249]步骤一:先设定目标超参数的初始参数,比如,学习率的范围可以是[0.1,3.2],划分数K=5,搜索轮数T=2,每轮搜索步数E={25000,125000},接下来开始执行目标超参数的搜索。[0251]示例性地,在学习率的范围为[0.1,3.2]内均匀取5个点,分别用图6所示的训练方法进行深度神经网络的权重参数的训练,训练轮数可以为25000,并得到每个学习率候选值对应的测试精度。[0252]例如,最优的精度为74.12,对应的学习率为1.55;则可以将学习率的范围更新为[0.1,1.55],更新最优精度为74.12。[0254]示例性地,在学习率的范围为[0.1,1.55]内均匀取5个点,分别用图6所示的训练方法进行深度神经网络的权重参数的训练,训练轮数可以为125000,并得到每个学习率候选值对应的测试精度。[0255]例如,最优的精度为77.64,对应的学习率为1.0875,更新最优精度为77.64。[0257]例如,最优学习率为1.0875,对应的深度神经网络的最优精度为77.64,返回对应的深度神经网络的模型权重。[0258]表1[0259]模型BaselineBayesianBayesianCostOurMethodOurMethodCost模型176.377.6643577.646模型272.072.3463572.6346模型374.775.9343076.0486[0260]表1示出了在不同模型中通过未采用超参数优化、采用贝叶斯超参数优化以及采用本申请提出的超参数的搜索方法对应的模型精度以及资源开销的测试结果。[0261]其中,模型1表示残差模型(例如,ResNet50);模型2表示MobileNetV2模型;模型3表示MobileNetV2×1.4.Baseline表示未进行超参数优化时的精度(单位为:%),Bayesian代表采用了贝叶斯优化方法进行超参数优化后的精度(单位为:%),BayesianCost代表采用贝叶斯优化方法的资源开销(单位为:相比于单次训练开销的倍数),OurMethod表示应用本申请的方法进行超参数优化后的精度(单位为:%),OurMethodCost表示采用本申请提出的超参数的搜索方法进行超参数优化的资源开销(单位为:相比于单次训练开销的倍数)。[0264]上文结合图1至图8,详细描述了本申请实施例提供的分类模型的训练方法以及超控制所述待训练分类模型的梯度更新步长,所述待训练分类模型包括缩放不变性线性层,所述缩放不变性线性层使得所述待训练分类模型的权重参数乘以任意缩放系数时输出的预测分类结果保持不变;处理单元720用于根据所述目标超参数与目标训练方式对所述待[0276]在一个示例中,训练装置700可以用于执行图5或者图6中任意一个所示的训练方以是指训练装置700中通信接口或者收发器;处理单元720可以是训练装置700中具有计算性线性层使得所述待训练分类模型的权重参数乘以任意缩放系数时输出的预测分类结果搜索范围的上边界更新为所述当前训练步数中所述待训练分类模型的最优精度对应的所类结果:[0296]在一个示例中,搜索装置800可以用于执行图7或者图8中任意一个所示的搜索方器910中存储的程序被处理器920执行时,处理器920用于执行本申请实施例的分类模型的[0306]处理器920可以采用通用的中央处理器(centralprocessingunit,CPU),微处理多个集成电路,用于执行相关程序以实现本申请方法实施例的分类模型的训练方法。[0307]处理器920还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请的分类模型的训练方法的各个步骤可以通过处理器920中的硬件的集成逻辑电路或者软件形式的指令完成。[0308]上述处理器920还可以是通用处理器、数字信号处理器(digitalsignalprocessing,DSP)、专用集成电路(ASIC)、现成可编程门阵列(fieldprogrammablegatearray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器910,处理器920读取存储器910中的信息,结合其硬件完成本申请实施中图9所示的训练装置中包括的单元所需执行的功能,或者,执行本申请方法实施例的图5或者图6所示的分类模型的训练方法。[0309]通信接口930使用例如但不限于收发器一类的收发装置,来实现训练装置900与其他设备或通信网络之间的通信。[0310]总线940可包括在训练装置900各个部件(例如,存储器910、处理器920、通信接口930)之间传送信息的通路。[0311]图12是本申请实施例提供的超参数的搜索装置的硬件结构示意图。[0312]图12所示的搜索装置1000包括存储器1010、处理器1020、通信接口1030以及总线1040。其中,存储器1010、处理器1020、通信接口1030通过总线1040实现彼此之间的通信连[0313]存储器1010可以是只读存储器(readonlymemory,ROM),静态存储设备,动态存储设备或者随机存取存储器(randomaccessmemory,RAM)。存储器1010可以存储程序,当存储器1010中存储的程序被处理器1020执行时,处理器1020用于执行本申请实施例的超参数的搜索方法的各个步骤;例如,执行图7至图8所示的各个步骤。[0314]应理解,本申请实施例所示的搜索装置可以是服务器,也可以是配置于服务器中的芯片。[0315]其中,搜索装置可以为具有超参数的搜索功能的设备,例如,可以包括当前技术已知的任何设备;或者,搜索装置还可以是指具有超参数的搜索功能的芯片。搜索装置中可以包括存储器和处理器;存储器可以用于存储程序代码,处理器可以用于调用存储器存储的程序代码,以实现计算设备的相应功能。计算设备中包括的处理器和存储器可以通过芯片[0316]例如,存储器可以用于存储本申请实施例中提供的超参数的搜索方法的相关程序指令,处理器可以用于调用存储器中存储的超参数的搜索方法的相关程序指令。[0317]处理器1020可以采用通用的中央处理器(centralprocessingunit,CPU),微处理器,应用专用集成电路(applicationspecificintegratedcircuit,ASIC),或者一个或多个集成电路,用于执行相关程序以实现本申请方法实施例的超参数的搜索方法。[0318]处理器1020还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请的超参数的搜索方法的各个步骤可以通过处理器1020中的硬件的集成逻辑电路或者软件形式的指令完成。[0319]上述处理器1020还可以是通用处理器、数字信号处理器(digitalsignalprocessing,DSP)、专用集成电路(ASIC)、现成可编程门阵列(fieldprogrammablegatearray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1010,处理器1020读取存储器1010中的信息,结合其硬件完成本申请实施中图10所示的搜索装置中包括的单元所需执行的功能,或者,执行本申请方法实施例的图7至图8所示的超参数的搜索方[0320]通信接口1030使用例如但不限于收发器一类的收发装置,来实现搜索装置1000与其他设备或通信网络之间的通信。[0321]总线1040可包括在搜索装置1000各个部件(例如,存储器1010、处理器1020、通信接口1030)之间传送信息的通路。[0322]应注意,尽管上述训练装置900与搜索装置1000仅仅示出了存储器、处理器、通信接口,但是在具体实现过程中,本领域的技术人员应当理解,训练装置900与搜索装置1000还可以包括实现正常运行所必须的其他器件。同时,根据具体需要本领域的技术人员应当理解,上述训练装置900与搜索装置1000还可包括实现其他附加功能的硬件器件。此外,本领域的技术人员应当理解,上述搜索装置700也可仅仅包括实现本申请实施例所必须的器件,而不必包括图11或图12中所示的全部器件。[0323]示例性地,本申请实施例还提供了一种芯片,该芯片包括收发单元和处理单元。其中,收发单元可以是输入输出电路、通信接口;处理单元为该芯片上集成的处理器或者微处理器或者集成电路;该芯片可以执行上述方法实施例中的训练方法。[0324]示例性地,本申请实施例还提供了一种芯片,该芯片包括收发单元和处理单元。其中,收发单元可以是输入输出电路、通信接口;处理单元为该芯片上集成的处理器或者微处理器或者集成电路;该芯片可以执行上述方法实施例中的搜索方法。[0325]示例性地,本申请实施例还提供了一种计算机可读存储介质,其上存储有指令,该指令被执行时执行上述方法实施例中的训练方法。[0326]示例性地,本申请实施例还提供了一种计算机可读存储介质,其上存储有指令,该指令被执行时执行上述方法实施例中的搜索方法。[0327]示例性地,本申请实施例还提供了一种包含指令的计算机程序产品,该指令被执行时执行上述方法实施例中的训练方法。[0328]示例性地,本申请实施例还提供了一种包含指令的计算机程序产品,该指令被执行时执行上述方法实施例中的搜索方法。[0329]应理解,本申请实施例中的处理器可以为中央处理单元(centralprocessingunit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignal成可编程门阵列(fieldprogrammablegatearray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。[0330]还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-onlymemory,ROM)、可编程只读存储器(erasablePROM,EPROM)、电可擦除可编程只读存储器(electrical闪存。易失性存储器可以是随机存取存储器(randomaccessmemory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(randomaccessmemory,RAM)可用,例如静态随机存取存储器(staticRAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronousDRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(doubledatarateSDRAM,DDRSDRAM)、增强型同步动态随机存取存储器
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大都市辐射对区域发展的影响以上海市为例(教学课件)地理鲁教版选择性必修()
- 古诗词诵读《书愤》课件统编版高二语文选择性必修中册()
- 市场租赁转让合同范本
- 建材出售租赁合同范本
- Unit4跟音频学词汇课件-人教版八年级英语上册()
- 学校采购五金合同范本
- Unit6Project课件-鲁教版六年级上册英语
- 小米收购诺基亚协议书
- 如何起草合同股份协议
- 抗疫物资捐赠合同范本
- 国际货运代理公司合伙协议书
- 质量安全环保保证协议书
- 北京市朝阳区2023-2024学年七年级上学期期末质量监测历史试卷及答案
- 教代会提案工作培训指南
- 2025年副高卫生职称-临床医学检验学技术-临床医学检验临床化学技术(副高)代码:058历年参考题库典型考点含答案解析
- 电大专科水利水电工程水法规与行政执法试题及答案
- 2025年四川单招试题及答案普高
- 学堂在线 雨课堂 学堂云 生活、艺术与时尚:中国服饰七千年 期末考试答案
- JJF 2254-2025戥秤校准规范
- 硬笔书法全册教案共20课时
- DB 5201∕T 152.2-2025 交通大数据 第2部分:数据资源目录
评论
0/150
提交评论