CN108875927A - 一种高维度深度学习模型的收敛方法和装置 - Google Patents

一种高维度深度学习模型的收敛方法和装置 Download PDF

Info

Publication number
CN108875927A
CN108875927A CN201710332393.XA CN201710332393A CN108875927A CN 108875927 A CN108875927 A CN 108875927A CN 201710332393 A CN201710332393 A CN 201710332393A CN 108875927 A CN108875927 A CN 108875927A
Authority
CN
China
Prior art keywords
model
iteration
solution
error
gradient
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.)
Granted
Application number
CN201710332393.XA
Other languages
English (en)
Other versions
CN108875927B (zh
Inventor
庄雨铮
郑荣福
魏建生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201710332393.XA priority Critical patent/CN108875927B/zh
Publication of CN108875927A publication Critical patent/CN108875927A/zh
Application granted granted Critical
Publication of CN108875927B publication Critical patent/CN108875927B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Feedback Control In General (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明实施例公开了一种高维度深度学习模型的收敛方法和装置。所述方法包括根据误差表面的第一位置,对模型进行一次单位迭代,以确定模型的解在误差表面的第二位置;根据一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,以及根据第一位置和第二位置确定模型的解的精度增长效率和模型误差;根据所述梯度、曲率、精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点;在所述误差表面的第二位置为鞍点或高噪点时,调整下一次单位迭代的批量数。本发明实施例根据鞍点或高噪来确定模型在下一批次迭代时的批量数。由此实现了,通过调适迭代过程中梯度和随机估计噪音量来优化模型的解的精度增长效率和逃脱鞍点。

Description

一种高维度深度学习模型的收敛方法和装置
技术领域
本发明涉及技术领域,尤其涉及一种高维度深度学习模型的收敛方法和装置。
背景技术
随着大数据在各行各业的蓬勃发展,很多人工智能领域的应用通过深度学习的方法出现在我们的生活中。深度学习通过构建深层神经网络来模拟人类大脑的工作原理。这种深层神经网络机构近年来在在语音识别,图像识别,自然语言处理等领域均取得了突破性的进展。
深度神经网络的参数量非常庞大,可以达到千万以至于上亿的级别。对于深度学习的模型训练,包括采用小批量随机梯度下降(MBGD,Mini-batch Gradient Descent)的方法,从而寻求模型的最优解。
MBGD的优点主要是训练速度快且收敛相对稳定,它是融合了梯度下降(GD,Gradient Descent)和随机梯度下降(SGD,Stochastic Gradient Descent)思想的一个折中的方法。MBGD的收敛取决于学习率的选择和梯度的随机估计。
MBGD的收敛过程极大的依赖于学习率的和梯度的随机估计噪音量。但是因为MBGD批量样本选择的随机性决定每次迭代的步长,梯度的随机估计噪音量决定每次迭代的梯度方向。针对这两者的优化措施可以有效的提高模型的解的精度增长效率。
并且,在高纬度的深度神经网络的误差表面上,影响收敛的还包括大量的鞍点。所以在收敛过程中,逃脱鞍点是决定模型的解的精度增长效率的关键点。
在大规模机器学习问题中通过调适迭代过程中梯度和随机估计噪音量来优化模型的解的精度增长效率和逃脱鞍点的方法目前相对空白。
发明内容
本发明实施例提供了一种高维度深度学习模型的收敛方法和装置,可以实现根据模型当前的解在误差表面的鞍点或高噪点时,调整下一次单位迭代的批量数。
一方面,本发明实施例提供了一种高维度深度学习模型的收敛方法。所述方法包括:根据误差表面的第一位置,对模型采用小批量随机梯度下降的方法进行一次单位迭代,以确定模型的解在误差表面的第二位置,其中,所述一次单位迭代是以批量数为N,对模型进行N次迭代,所述模型包括至少X轴、Y轴和Z轴三个维度,所述误差表面是模型的解的集合,N为大于等于1的正整数,所述第一位置为当前模型的解在误差表面的位置,所述第二位置为模型在第一位置进行一次单位迭代后模型的解在误差表面的位置;根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,以及根据所述第一位置和所述第二位置确定模型的解的精度增长效率和模型误差,所述模型误差为前计算的第二位置的实际值与理想值的差距;
根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点;在所述误差表面的第二位置为鞍点或高噪点时,调整下一次单位迭代的批量数,使对模型采用小批量随机梯度下降的方法进行下一次单位迭代时,避免模型的解在误差表面的第三位置为鞍点或高噪点,所述第三位置为模型在第二位置进行一次单位迭代后模型的解在误差表面的位置。通过对模型进行一次训练后,确定模型的收敛状态。根据模型的收敛状态来确定模型当前的解在误差表面是否为鞍点或高噪点,并根据是否为鞍点或高噪点来确定模型在下一次迭代时的批量数。由此实现了,通过调适迭代过程中的批量书来优化模型的解的精度增长效率和逃脱鞍点。
在一个可能的设计中,所述根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点,包括:在第二位置的梯度和曲率分别小于梯度和曲率的预设阈值、且模型误差不小于误差项阈值时,确定误差表面的第二位置为鞍点。
在一个可能的设计中,所述根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点,包括:在第二位置的梯度和曲率分别小于梯度和曲率的预设阈值、且模型误差小于误差项阈值和模型的解的精度增长效率小于收敛效率阈值时,确定第二位置为高噪点;或,在第二位置的梯度和曲率分别不小于梯度和曲率的预设阈值、模型的解的精度增长效率小于收敛效率阈值时,确定第二位置为高噪点。
在一个可能的设计中,所述第二位置为鞍点或高噪点时,调整下一次单位迭代的批量数,包括:当所述第二位置为鞍点时,确定下一次单位迭代的批量数为1;当第二位置为高噪点时,确定下一次单位迭代的批量数为:
N×(avgRate/accRatiot)
其中,N为当前批次迭代批量数,N为大于等于1的正整数,avgRate为收敛效率阈值,accRatiot为模型的解的精度增长效率。
在一个可能的设计中,所述确定下一次单位迭代的批量数前,所述方法还包括确定模型的解的精度增长效率;所述确定模型的解的精度增长效率包括:根据一次迭代确定模型的当前精度和历史精度;根据模型的历史精度和当前精度,确定模型的解的精度增长效率。
在一个可能的设计中,所述根据模型的历史精度和当前精度,确定模型的模型的解的精度增长效率,包括:通过消减累加的方式,根据模型的历史精度和当前精度计算模型最近迭代的精度变化情况;基于模型最近迭代的精度变化情况和模型初始精度的比值计算模型的解的精度增长效率。
在一个可能的设计中,所述根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,包括:在所述一次单位迭代的N次迭代中,从第二次迭代开始根据历史迭代数据给每个参数的梯度做指数消减累加,得到:
E[g]t=ρE[g]t-1+(1-ρ)gt.
在一个可能的设计中,所述根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,包括:
其中,所述CURV为曲率,所述E[g2]t为梯度的平方,所述E[Δx2]t为参数更新量的平方。
第二方面,本发明具体实施例提供了一种处理装置,所述装置包括处理单元。所述处理单元包括用于:根据误差表面的第一位置,对模型采用小批量随机梯度下降的方法进行一次单位迭代,以确定模型的解在误差表面的第二位置,其中,所述一次单位迭代是以批量数为N,对模型进行N次迭代,所述模型包括至少X轴、Y轴和Z轴三个维度,所述误差表面是模型的解的集合,N为大于等于1的正整数,所述第一位置为当前模型的解在误差表面的位置,所述第二位置为模型在第一位置进行一次单位迭代后模型的解在误差表面的位置;根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,以及根据所述第一位置和所述第二位置确定模型的解的精度增长效率和模型误差,所述模型误差为前计算的第二位置的实际值与理想值的差距;根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点;在所述误差表面的第二位置为鞍点或高噪点时,调整下一次单位迭代的批量数,使对模型采用小批量随机梯度下降的方法进行下一次单位迭代时,避免模型的解在误差表面的第三位置为鞍点或高噪点。
在一个可能的设计中,所述根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点,包括:在第二位置的梯度和曲率分别小于梯度和曲率的预设阈值、且模型误差不小于误差项阈值时,处理单元确定误差表面的第二位置为鞍点。
在一个可能的设计中,所述根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点,包括:在第二位置的梯度和曲率分别小于梯度和曲率的预设阈值、且模型误差小于误差项阈值和模型的解的精度增长效率小于收敛效率阈值时,处理单元确定第二位置为高噪点;或,在第二位置的梯度和曲率分别不小于梯度和曲率的预设阈值、模型的解的精度增长效率小于收敛效率阈值时,处理单元确定第二位置为高噪点。
在一个可能的设计中,所述第二位置为鞍点或高噪时,调整下一次单位迭代的批量数,包括:当所述第二位置为鞍点时,处理单元确定下一次单位迭代的批量数为1;当第二位置为高噪点时,处理单元确定下一次单位迭代的批量数为:
N×(avgRate/accRatiot)
其中,N为当前批次迭代批量数,N为大于等于1的正整数,avgRate为收敛效率阈值,accRatiot为模型的解的精度增长效率。
在一个可能的设计中,所述处理单元确定下一次单位迭代的批量数前,还包括确定模型的解的精度增长效率;所述处理单元确定模型的解的精度增长效率包括:根据一次迭代确定模型的当前精度和历史精度;根据模型的历史精度和当前精度,确定模型的解的精度增长效率。
在一个可能的设计中,所述根据模型的历史精度和当前精度,确定模型的解的精度增长效率,包括:通过消减累加的方式,根据模型的历史精度和当前精度计算模型最近迭代的精度变化情况;基于模型最近迭代的精度变化情况和模型初始精度的比计算模型的解的精度增长效率。
在一个可能的设计中,根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,包括:在所述一次单位迭代中的N次迭代中,从第二次迭代开始根据历史迭代数据给每个参数的梯度做指数消减累加,得到:
E[g]t=ρE[g]t-1+(1-ρ)gt.
在一个可能的设计中,所述根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,包括:
其中,所述CURV为曲率,所述E[g2]t为梯度的平方,所述E[Δx2]t为参数更新量的平方。
第三方面,本发明具体实施例提供了一种行人检索装置,包括:处理器、存储器、通信接口和系统总线,所述存储器和所述通信接口通过所述系统总线与所述处理器连接并完成相互间的通信,所述存储器用于存储计算机执行指令,所述通信接口用于和其他设备进行通信,所述处理器用于运行所述计算机执行指令,使所述行人检索装置执行如第一方面和第二方面任一项所述的方法。
第四方面,本发明具体实施例提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如以上任一方面所述的方法。
附图说明
图1为本发明具体实施例提供的一种服务器;
图2为本发明具体实施例提供的一种高维度深度学习模型的收敛方法流程图;
图3为本发明具体实施例提供的一种判断鞍点或高噪的流程示意图;
图4为本发明具体实施例提供的一种装置。
具体实施方式
下面通过附图和实施例,对本发明实施例的技术方案做进一步的详细描述。
本发明具体实施例提供一种高维度深度学习模型的收敛方法和装置。通过采用随机梯度下降的方法对模型进行训练,并且在模型训练的过程中根据所述模型的解的精度增长效率和收敛状态对下一次单位迭代的批量数进行调整。从而提高了所述模型训练的效率,加速鞍点的逃脱。
下面通过具体的方法对本发明具体实施例中所述高维度深度学习模型的收敛方法进行说明。
图1为本发明具体实施例提供的一种高维度深度学习模型的收敛方法流程图。如图1所示,所示方法流程具体包括:
S101、根据误差表面的第一位置,对模型采用小批量随机梯度下降的方法进行一次单位迭代,以确定模型的解在误差表面的第二位置,其中,所述一次单位迭代是以批量数为N,对模型进行N次迭代,所述模型包括至少X轴、Y轴和Z轴三个维度,所述误差表面是模型的解的集合,N为大于等于1的正整数,所述第一位置为当前模型的解在误差表面的位置,所述第二位置为模型在第一位置进行一次单位迭代后模型的解在误差表面的位置。
对模型训练前,所述方法还包括设置初始批量数(initlBatch)、收敛效率阈值(avgRate)和误差项阈值(errEpsilon)。所述收敛效率阈值通常用模型初始误差值除以最大迭代次数表示。在本发明的具体实施例中,所述方法还包括设置梯度和曲率的阈值,所述梯度和曲率的阈值无限接近于0。例如,分别设置所述梯度和曲率的阈值为0.001。
所述模型训练是在误差表面上找到全局最低点。通过所述全局最低点,描述模型的特征的权值使模型预测出来的值和真实值之间的差距最小。在本发明的具体实施例中,可以通过迭代的方式,一步步的确定模型误差表面的情况。所述迭代的过程越快,模型收敛的效率越高。
在一个例子中,可以通过小批量随机梯度下降的迭代方法对所述模型进行训练。
具体的,确定所述模型的损失函数。在通过小批量随机梯度下降的方法,对模型进行训练。在每一次迭代的过程中,用一个批量的样本计算损失函数。
所述一个批量的样本为样本批量数。即每一次迭代中模型训练和更新参数时需要用到的数据量。所述批量样本从全样本中做随机采样得到。每个批次迭代后,会根据模型当前的收敛情况自适应的调整批量样本数。通过自适应的调整批量样本数,加速逃离鞍点或降低噪音提高迭代方向的正确性从而提高模型的解的精度增长效率。并且,使模型训练过程中参数调节尽量减少依靠人为的经验,实现自动调整参数的目的。
在一个例子中,所述损失函数可以是:
其中,j(θ)表示损失函数。m代表批量数,即每次取多少样本进行训练。
根据确定的损失函数,对所述损失函数通过一阶求导计算迭代的梯度。
在一个例子中,所述对损失函数通过一阶求导计算迭代的梯度可以是:
再根据上式计算的梯度,更新模型参数。
其中,所述·θj:用于表示更新后的模型;θj用于表示更新前的模型。
具体的,可以设定以一个批量数进行以n次迭代为一个单位迭代。在包含多个训练样本的小批量随机梯度下降算法中,通过对所述公式四循环计算,直至完成n次迭代,从而完成一次单位迭代。
所述公式具体可以是:
S102、根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,以及根据所述第一位置和所述第二位置确定模型的解的精度增长效率和模型误差,所述模型误差为前计算的第二位置的实际值与理想值的差距。
在本发明的具体实施例中,还包括确定模型的解的精度增长效率。在一个例子中,所述确定模型的解的精度增长效率是,根据所述模型的历史精度和当前精度,确定当前批次迭代的模型的解的精度增长效率。
在一个例子中,所述模型的解的精度增长效率可以基于模型最近迭代的精度变化情况和模型初始精度的比值模型的计算。所述模型最近迭代的精度变化情况是通过指数消减累加的方式根据模型的前一单位迭代的精度和单位迭代的精度计算。具体的,可以设定一个批量数进行以n次迭代为一个单位迭代。从第二个单位迭代开始给每个单位迭代间的精确度的差值做指数消减累加。
在一个例子中,所述模型最近迭代的精度变化情况可以是:
其中,为上述任意公式的:ρ表示消减因子,因为是指数消减累加,通过调整参数ρ可以表示“最近”的程度。例如,ρ值越小表示这个梯度的累加值受到当前梯度的影响越大。t为单位迭代的次数。
其中,所述和初始的精确度(initlTestErr)的比值在每一个单位迭代后计算出当前模型的解的精度增长效率(accRatiot):
所述模型最近迭代的梯度是指通过指数消减累加得到的梯度。通过消减累加的方式计算模型最近迭代的情况,利用消减因子控制历史迭代数据对当前迭代情况的影响程度。
E[g]t=ρE[g]t-1+(1-ρ)gt 公式八
其中,t表示迭代次数,所述g表示梯度,对应为前式中的
所述模型误差是当前计算出的实际值与理想值的差距。在本发明的具体实施例中,所述模型误差是根据每次单位迭代的结果进行指数消减累加确定
在本发明的具体实施例中,所述方法还包括确定梯度的平方和参数更新量的平方。
梯度的平方为:
E[g2]t=ρE[g2]t-1+(1-ρ)g2 公式九
参数更新量的平方为:
E[Δx2]t=ρE[Δx2]t-1+(1-ρ)Δx2 公式十
其中,所述Δx表示参数每次迭代后的更新量,对应前式中的(θ(i+1)(i)),t表示迭代次数。
在本发明的具体实施例中,还需要确定曲率。所述曲率是根据梯度的平方和参数更新量来确定。
所述曲率可以通过下式表述:
S103、根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点;
模型的参数在每次迭代后都会进行更新,并且根据更新后的参数计算当前模型误差、模型的解的精度增长效率和下一批次的批量数。
一方面,可以通过衡量实时的模型的解的精度增长效率调节批量数。当收敛速度变慢时,按照一定的比例增大批量数减少梯度噪音矫正梯度方向。相比在噪音导致的梯度方向相对不正确的情况下减小学习率以保证模型收敛的做法,保持学习率不变增大批量数矫正梯度方向可以让每一步的迭代更有效率。并且增大批量数而导致的计算量的增加可以通过并行计算补偿。当收敛速度变快时,保持批量数不变。
在本发明的具体实施例中,所述误差表面是基于所有参数模型的误差,即用当前参数计算出目标值和实际值之间的差距。模型的鞍点的梯度和曲率无限趋近于0,模型的误差相对偏高,例如,50%以上。
另一方面,通过判断是否是鞍点或高噪点来调节批量数。图2为本发明具体实施例提供的一种判断鞍点或高噪点的流程示意图。如图2所示,当模型当前为鞍点时,把批量数降到最小。从而通过增大噪音来加速逃离鞍点。当判断为不是鞍点,再通过模型的解的精度增长效率调节批量数。当判断模型当前既不在鞍点,又不是高噪点时,保持当前的批量数不变。
当梯度和曲率分别小于预设的梯度和曲率的阈值(epsilon)且模型误差(error)不小于误差项阈值(errEpsilon),判断所述模型在误差表面为鞍点。
当梯度和曲率小于预设阈值(epsilon)、模型误差(error)小于误差项阈值(errEpsilon),并且所述模型的解的精度增长效率(accRatiot)小于收敛效率阈值(avgRate)即判断所述模型在误差表面为高噪点。
当梯度和曲率分别小于预设的梯度和曲率的阈值(epsilon),如果模型的解的精度增长效率(accRatiot)小于收敛效率阈值(avgRate)即判断所述模型在误差表面为高噪点。
S104、在所述误差表面的第二位置为鞍点或高噪点时,调整下一次单位迭代的批量数,使对模型采用小批量随机梯度下降的方法进行下一次单位迭代时,避免模型的解在误差表面的第三位置为鞍点或高噪点,所述第三位置为模型在第二位置进行一次单位迭代后模型的解在误差表面的位置。
在对一次迭代完成并确定所述误差表面是否为鞍点或高噪点时,还根据否为鞍点或高噪点来调整下一次的迭代。
具体的,当模型在误差表面位于鞍点时减小批量数,当模型梯度噪音量高于所述阈值时按比例增大批量数。
在一个例子中,判断模型当前的解为第二位置。当所述第二位置为鞍点时,设置批量数等于1。在判断所述第二位置为高噪点时,需要增加批量数以减小梯度的噪音从而提高迭代方向的正确性。在一个例子中,可以按比例增加批量数。具体的,判断第二位置为高噪点的情况下,下一个批次迭代的批量数为:
N×(avgRate/accRatiot)
其中,为当前批次迭代批量数,avgRate为收敛效率阈值,accRatiot为模型的解的精度增长效率。
在确定新的批量数后,按照新的批量数完成下一次单位迭代。确定下一次单位迭代的收敛状态。其中,下一次迭代后模型的解在误差表面的第三位置,确定第三位置是否为鞍点或高噪点。从而确定出下下一次单位迭代的批量数,并且按照上述方法循环的进行计算,直至模型收敛。
图3为本发明具体实施例提供的一种装置,如图3所示,所述装置包括处理单元301。所述处理单元可以用于:
所述处理单元301包括用于:根据误差表面的第一位置,对模型采用小批量随机梯度下降的方法进行一次单位迭代,以确定模型的解在误差表面的第二位置,其中,所述一次单位迭代是以批量数为N,对模型进行N次迭代,所述模型包括至少X轴、Y轴和Z轴三个维度,所述误差表面是模型的解的集合,N为大于等于1的正整数,所述第一位置为当前模型的解在误差表面的位置,所述第二位置为模型在第一位置进行一次单位迭代后模型的解在误差表面的位置;根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,以及根据所述第一位置和所述第二位置确定模型的解的精度增长效率和模型误差,所述模型误差为前计算的第二位置的实际值与理想值的差距;根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点;在所述误差表面的第二位置为鞍点或高噪点时,调整下一次单位迭代的批量数,使对模型采用小批量随机梯度下降的方法进行下一次单位迭代时,避免模型的解在误差表面的第三位置为鞍点或高噪点,所述第三位置为模型在第二位置进行一次单位迭代后模型的解在误差表面的位置。
所述处理单元301根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点,包括:在第二位置的梯度和曲率分别小于梯度和曲率的预设阈值、且模型误差不小于误差项阈值时,处理单元确定误差表面的第二位置为鞍点。
所述处理单元301根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点,包括:在第二位置的梯度和曲率分别小于梯度和曲率的预设阈值、且模型误差小于误差项阈值和模型的解的精度增长效率小于收敛效率阈值时,处理单元301确定第二位置为高噪点;或,在第二位置的梯度和曲率分别不小于梯度和曲率的预设阈值、模型的解的精度增长效率小于收敛效率阈值时,处理单元301确定第二位置为高噪点。
所述第二位置为鞍点或高噪时,处理单元301调整下一次单位迭代的批量数,包括:当所述第二位置为鞍点时,处理单元301确定下一次单位迭代的批量数为1;当第二位置为高噪点时,处理单元301确定下一次单位迭代的批量数为:
N×(avgRate/accRatiot)
其中,N为当前批次迭代批量数,N为大于等于1的正整数,avgRate为收敛效率阈值,accRatiot为模型的解的精度增长效率。
所述处理单元301确定下一次单位迭代的批量数前,还包括确定模型的解的精度增长效率;所述处理单元301确定模型的解的精度增长效率包括:根据一次迭代确定模型的当前精度和历史精度;根据模型的历史精度和当前精度,确定模型的解的精度增长效率。
所述处理单元301根据模型的历史精度和当前精度,确定模型的解的精度增长效率,包括:通过消减累加的方式,根据模型的历史精度和当前精度计算模型最近迭代的精度变化情况;基于模型最近迭代的精度变化情况和模型初始精度的比计算模型的解的精度增长效率。
所述处理单元301根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,包括:在所述一次单位迭代中的N次迭代中,从第二次迭代开始根据历史迭代数据给每个参数的梯度做指数消减累加,得到:
E[g]t=ρE[g]t-1+(1-ρ)gt.
所述处理单元401根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,包括:
其中,所述CURV为曲率,所述E[g2]t为梯度的平方,所述E[Δx2]t为参数更新量的平方。
在本发明的具体实施例中,所述处理单元301也可以是图1所示的处理器。
图4为一种服务器的结构示意图。本实例提供的控制面节点包括:处理器41、存储器42、通信接口43和系统总线44。其中,所述服务器可以是图1所述的智能分析平台和/或图像检索设备,所述服务器还可以执行图1所述的方法。
通信接口43包括用于和其他外部设备进行通信。其中,通信接口可以与其他设备连接并通信,从而获取或发送相应的信息。
存储器42和通信接口43通过系统总线44与处理器41连接并完成相互间的通信。存储器42用于存储计算机执行指令,处理器41用于运行所述计算机执行指令,使所述树立起执行上述图1所述的各个步骤。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (18)

1.一种模型的收敛方法,其特征在于,所述方法包括:
根据误差表面的第一位置,对模型采用小批量随机梯度下降的方法进行一次单位迭代,以确定模型的解在误差表面的第二位置,其中,所述一次单位迭代是以批量数为N,对模型进行N次迭代,所述模型包括至少X轴、Y轴和Z轴三个维度,所述误差表面是模型的解的集合,N为大于等于1的正整数,所述第一位置为当前模型的解在误差表面的位置,所述第二位置为模型在第一位置进行一次单位迭代后模型的解在误差表面的位置;
根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,以及根据所述第一位置和所述第二位置确定模型的解的精度增长效率和模型误差,所述模型误差为前计算的第二位置的实际值与理想值的差距;
根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点;
在所述误差表面的第二位置为鞍点或高噪点时,调整下一次单位迭代的批量数,使对模型采用小批量随机梯度下降的方法进行下一次单位迭代时,避免模型的解在误差表面的第三位置为鞍点或高噪点,所述第三位置为模型在第二位置进行一次单位迭代后模型的解在误差表面的位置。
2.根据权利要求1所述的方法,其特征在于,所述根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点,包括:
在第二位置的梯度和曲率分别小于梯度和曲率的预设阈值、且模型误差不小于误差项阈值时,确定误差表面的第二位置为鞍点。
3.根据权利要求1所述的方法,其特征在于,所述根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点,包括:
在第二位置的梯度和曲率分别小于梯度和曲率的预设阈值、且模型误差小于误差项阈值和模型的解的精度增长效率小于收敛效率阈值时,确定第二位置为高噪点;或,
在第二位置的梯度和曲率分别不小于梯度和曲率的预设阈值、模型的解的精度增长效率小于收敛效率阈值时,确定第二位置为高噪点。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述第二位置为鞍点或高噪点时,调整下一次单位迭代的批量数,包括:
当所述第二位置为鞍点时,确定下一次单位迭代的批量数为1;
当第二位置为高噪点时,确定下一次单位迭代的批量数为:
N×(avgRate/accRatiot)
其中,N为当前批次迭代批量数,N为大于等于1的正整数,avgRate为收敛效率阈值,accRatiot为模型的解的精度增长效率。
5.根据权利要求4所述的方法,其特征在于,所述确定下一次单位迭代的批量数前,所述方法还包括确定模型的解的精度增长效率;
所述确定模型的解的精度增长效率包括:
根据一次迭代确定模型的当前精度和历史精度;
根据模型的历史精度和当前精度,确定模型的解的精度增长效率。
6.根据权利要求5所述的方法,其特征在于,所述根据模型的历史精度和当前精度,确定模型的模型的解的精度增长效率,包括:
通过消减累加的方式,根据模型的历史精度和当前精度计算模型最近迭代的精度变化情况;
基于模型最近迭代的精度变化情况和模型初始精度的比值计算模型的解的精度增长效率。
7.根据权利要求1所述的方法,其特征在于,所述根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,包括:
在所述一次单位迭代的N次迭代中,从第二次迭代开始根据历史迭代数据给每个参数的梯度做指数消减累加,得到:
E[g]t=ρE[g]t-1+(1-ρ)gt.
8.根据权利要求7任一项所述的方法,其特征在于,所述根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,包括:
其中,所述CURV为曲率,所述E[g2]t为梯度的平方,所述E[Δx2]t为参数更新量的平方。
9.一种处理装置,其特征在于,所述装置包括处理单元;
所述处理单元包括用于:
根据误差表面的第一位置,对模型采用小批量随机梯度下降的方法进行一次单位迭代,以确定模型的解在误差表面的第二位置,其中,所述一次单位迭代是以批量数为N,对模型进行N次迭代,所述模型包括至少X轴、Y轴和Z轴三个维度,所述误差表面是模型的解的集合,N为大于等于1的正整数,所述第一位置为当前模型的解在误差表面的位置,所述第二位置为模型在第一位置进行一次单位迭代后模型的解在误差表面的位置;
根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,以及根据所述第一位置和所述第二位置确定模型的解的精度增长效率和模型误差,所述模型误差为前计算的第二位置的实际值与理想值的差距;
根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点;
在所述误差表面的第二位置为鞍点或高噪点时,调整下一次单位迭代的批量数,使对模型采用小批量随机梯度下降的方法进行下一次单位迭代时,避免模型的解在误差表面的第三位置为鞍点或高噪点,所述第三位置为模型在第二位置进行一次单位迭代后模型的解在误差表面的位置。
10.根据权利要求9所述的装置,其特征在于,所述根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点,包括:
在第二位置的梯度和曲率分别小于梯度和曲率的预设阈值、且模型误差不小于误差项阈值时,处理单元确定误差表面的第二位置为鞍点。
11.根据权利要求9所述的装置,其特征在于,所述根据所述梯度、曲率、模型的解的精度增长效率和模型误差,确定第二位置是否为误差表面的鞍点或高噪点,包括:
在第二位置的梯度和曲率分别小于梯度和曲率的预设阈值、且模型误差小于误差项阈值和模型的解的精度增长效率小于收敛效率阈值时,处理单元确定第二位置为高噪点;或,
在第二位置的梯度和曲率分别不小于梯度和曲率的预设阈值、模型的解的精度增长效率小于收敛效率阈值时,处理单元确定第二位置为高噪点。
12.根据权利要求9-11任一项所述的装置,其特征在于,所述第二位置为鞍点或高噪时,调整下一次单位迭代的批量数,包括:
当所述第二位置为鞍点时,处理单元确定下一次单位迭代的批量数为1;
当第二位置为高噪点时,处理单元确定下一次单位迭代的批量数为:
N×(avgRate/accRatiot)
其中,N为当前批次迭代批量数,N为大于等于1的正整数,avgRate为收敛效率阈值,accRatiot为模型的解的精度增长效率。
13.根据权利要求12所述的装置,其特征在于,所述处理单元确定下一次单位迭代的批量数前,还包括确定模型的解的精度增长效率;
所述处理单元确定模型的解的精度增长效率包括:
根据一次迭代确定模型的当前精度和历史精度;
根据模型的历史精度和当前精度,确定模型的解的精度增长效率。
14.根据权利要求13所述的装置,其特征在于,所述根据模型的历史精度和当前精度,确定模型的解的精度增长效率,包括:
通过消减累加的方式,根据模型的历史精度和当前精度计算模型最近迭代的精度变化情况;
基于模型最近迭代的精度变化情况和模型初始精度的比计算模型的解的精度增长效率。
15.根据权利要求9所述的装置,其特征在于,根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,包括:
在所述一次单位迭代中的N次迭代中,从第二次迭代开始根据历史迭代数据给每个参数的梯度做指数消减累加,得到:
E[g]t=ρE[g]t-1+(1-ρ)gt.
16.根据权利要求9任一项所述的方法,其特征在于,所述根据所述一次单位迭代,确定第二位置相对于误差表面的梯度和曲率,包括:
其中,所述CURV为曲率,所述E[g2]t为梯度的平方,所述E[Δx2]t为参数更新量的平方。
17.一种行人检索装置,其特征在于,包括:处理器、存储器、通信接口和系统总线,所述存储器和所述通信接口通过所述系统总线与所述处理器连接并完成相互间的通信,所述存储器用于存储计算机执行指令,所述通信接口用于和其他设备进行通信,所述处理器用于运行所述计算机执行指令,使所述行人检索装置执行如权利要求1-8任一项所述的方法。
18.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-8任一项所述的方法。
CN201710332393.XA 2017-05-12 2017-05-12 一种高维度深度学习模型的收敛方法和装置 Active CN108875927B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710332393.XA CN108875927B (zh) 2017-05-12 2017-05-12 一种高维度深度学习模型的收敛方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710332393.XA CN108875927B (zh) 2017-05-12 2017-05-12 一种高维度深度学习模型的收敛方法和装置

Publications (2)

Publication Number Publication Date
CN108875927A true CN108875927A (zh) 2018-11-23
CN108875927B CN108875927B (zh) 2021-05-11

Family

ID=64319764

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710332393.XA Active CN108875927B (zh) 2017-05-12 2017-05-12 一种高维度深度学习模型的收敛方法和装置

Country Status (1)

Country Link
CN (1) CN108875927B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11343650B1 (en) 2020-12-23 2022-05-24 Huawei Technologies Co., Ltd. Computation of a saddle-point

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009114866A1 (en) * 2008-03-14 2009-09-17 Colorado School Of Mines Systems, methods and media for computationally determining chemical properties of a molecule
CN101833790A (zh) * 2010-04-30 2010-09-15 浙江大学 一种基于波动方程的各向异性的四边形网格生成方法
CN103559537A (zh) * 2013-10-30 2014-02-05 南京邮电大学 一种乱序数据流中基于误差反向传播的模板匹配方法
CN103679646A (zh) * 2013-10-24 2014-03-26 沈阳大学 一种用于图像去噪的原始对偶模型
EP2860661A1 (en) * 2013-10-09 2015-04-15 Delphi Technologies, Inc. Mean shift tracking method
CN105335332A (zh) * 2015-12-07 2016-02-17 郑州航空工业管理学院 特殊鞍点问题的高效预处理方法
CN105787507A (zh) * 2016-02-16 2016-07-20 中国石油大学(华东) 基于预算支持向量集的LS-SVMs在线学习方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009114866A1 (en) * 2008-03-14 2009-09-17 Colorado School Of Mines Systems, methods and media for computationally determining chemical properties of a molecule
CN101833790A (zh) * 2010-04-30 2010-09-15 浙江大学 一种基于波动方程的各向异性的四边形网格生成方法
EP2860661A1 (en) * 2013-10-09 2015-04-15 Delphi Technologies, Inc. Mean shift tracking method
CN103679646A (zh) * 2013-10-24 2014-03-26 沈阳大学 一种用于图像去噪的原始对偶模型
CN103559537A (zh) * 2013-10-30 2014-02-05 南京邮电大学 一种乱序数据流中基于误差反向传播的模板匹配方法
CN105335332A (zh) * 2015-12-07 2016-02-17 郑州航空工业管理学院 特殊鞍点问题的高效预处理方法
CN105787507A (zh) * 2016-02-16 2016-07-20 中国石油大学(华东) 基于预算支持向量集的LS-SVMs在线学习方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
CHI JIN ET AL.: ""How to Escape Saddle Points Efficiently"", 《ARXIV:1703.00887V1》 *
NIKOLAOS GATSIS ET AL.: ""Power Control With Imperfect Exchanges and Applications to Spectrum Sharing"", 《IEEE TRANSACTIONS ON SIGNAL PROCESSING 》 *
RAZVAN PASCANU ET AL.: ""On the saddle point problem for non-convex optimization"", 《ARXIV:1405.4604V2》 *
YANN N. DAUPHIN ET AL.: ""Identifying and attacking the saddle point problem in high-dimensional non-convex optimization"", 《ARXIV:1406.2572V1》 *
樊宝娟 等: ""鞍点问题的向后误差分析"", 《上海理工大学学报》 *
陈乔: ""非凸优化问题的局部鞍点和凸化"", 《重庆工学院学报(自然科学)》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11343650B1 (en) 2020-12-23 2022-05-24 Huawei Technologies Co., Ltd. Computation of a saddle-point
WO2022135396A1 (en) * 2020-12-23 2022-06-30 Huawei Technologies Co., Ltd. Computation of saddle-point

Also Published As

Publication number Publication date
CN108875927B (zh) 2021-05-11

Similar Documents

Publication Publication Date Title
CN103745273B (zh) 一种半导体制造过程的多性能预测方法
CN111173573B (zh) 一种汽轮机调节系统功率对象模型的辨识方法
CN106503206A (zh) 一种基于熵权法的通用数据质量评估方法
CN114488988A (zh) 用于生产线平衡率调控的工业物联网及控制方法
CN106384197A (zh) 一种基于大数据的业务质量评估方法和装置
CN105610360B (zh) 一种同步发电机励磁系统参数辨识方法
CN106886657B (zh) 一种基于kriging函数的有限元模型建立方法
CN107133190A (zh) 一种机器学习系统的训练方法和训练系统
CN109919229A (zh) 基于人工蜂群和神经网络的监测有害气体预测方法及系统
CN112884081B (zh) 一种多品种小批量生产的工件质量在线智能预测方法
CN112818595A (zh) 一种火电厂蒸发区的数字孪生模型数据的修正方法及系统
CN109447433A (zh) 一种改进的灰色模型预测方法
CN106095684A (zh) 一种预测性变异测试方法
CN113554213A (zh) 一种天然气需求预测方法、系统、存储介质及设备
CN108875927A (zh) 一种高维度深度学习模型的收敛方法和装置
CN108958029A (zh) 用于参数整定方法和系统
CN109961160A (zh) 一种基于潮流参数的电网未来运行趋势预估方法及系统
CN114648178B (zh) 一种基于ddpg算法的电能计量装置运维策略优化方法
CN111400964A (zh) 一种故障发生时间预测方法及装置
CN110647994A (zh) 一种基于改进变异算子遗传算法的tsp优化方法
Kyriacou et al. Evolutionary algorithm based optimization of hydraulic machines utilizing a state-of-the-art block coupled CFD solver and parametric geometry and mesh generation tools
CN110262222A (zh) 一种区间系统最优区间pid控制器参数优化方法
CN105447228A (zh) 一种地球扰动引力赋值模型适用性能评估方法
CN112419098B (zh) 基于安全信息熵的电网安全稳定仿真样本筛选扩充方法
CN114861318A (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
GR01 Patent grant
GR01 Patent grant