(12)发明专利申请
(10)申请公布号 CN 109165724 A(43)申请公布日 2019.01.08
(21)申请号 201810884710.3(22)申请日 2018.08.06
(71)申请人 哈工大大数据(哈尔滨)智能科技有
限公司
地址 150001 黑龙江省哈尔滨市松北区高
新技术产业开发区哈工大沿海创意科技港及物联网技术研发中心9号楼(创新路1616号)714-2室(72)发明人 王宏志 赵志强
(74)专利代理机构 北京格允知识产权代理有限
公司 11609
代理人 周娇娇(51)Int.Cl.
G06N 3/04(2006.01)G06N 3/08(2006.01)
权利要求书2页 说明书7页 附图1页
(54)发明名称
一种基于神经网络的梯度下降迭代次数预测方法及装置(57)摘要
本发明涉及一种基于神经网络的梯度下降迭代次数预测方法,包括:输入以梯度下降法求解形式表示的机器学习任务;收集历史情况的数据,训练基于神经网络的梯度下降优化器;将机器学习任务输入训练得到的梯度下降优化器,利用神经网络预测机器学习任务的最少迭代次数,以及对应的梯度下降法。本发明在为机器学习任务选择梯度下降法并预测迭代次数的过程中,利用历史情况中的数据训练梯度下降优化器,通过神经网络框架选择合适的梯度下降法以及预测迭代次数,神经网络通过对数据的训练学习,能够自主地更新隐层,更快找出合适的梯度下降法,同时得到的迭代次数的预估值不受所提供的数据和用户要求的影响,减少优化器对于人工的依赖。
CN 109165724 ACN 109165724 A
权 利 要 求 书
1/2页
1.一种基于神经网络的梯度下降迭代次数预测方法,其特征在于,包括:S1、输入以梯度下降法求解形式表示的机器学习任务;S2、收集历史情况的数据,训练基于神经网络的梯度下降优化器,训练的过程包括:S2-1、利用所述历史情况的数据构建训练集,所述训练集包括N组训练样本,每组训练样本均包括机器学习任务及其所对应的实际最优梯度下降法和实际最优迭代次数;构建神经网络,所述神经网络包括输入层、隐层和输出层;
S2-2、将所述训练集的机器学习任务输入所述神经网络,通过所述神经网络计算其最少迭代次数,并求该计算结果与实际最优迭代次数之间的差异值,所述差异值采用如下公式表示:
其中,EN表示差异值,c表示梯度下降法的类别,表示所述神经网络得出的迭代次数,表示实际的最优迭代次数;
S2-3、判断当前差异值是否为最小值;若是最小值,则保存该神经网络作为梯度下降优化器;若不是最小值,则根据当前差异值反向调整所述神经网络中的权值,将现有的权值加上权值的变化值,得到更新后的神经网络,并返回至所述步骤S2-2;
S3、将步骤S1中的所述机器学习任务输入步骤S2训练得到的所述梯度下降优化器,利用所述神经网络预测所述机器学习任务的最少迭代次数,以及对应的梯度下降法。
2.根据权利要求1所述的梯度下降迭代次数预测方法,其特征在于:以梯度下降法求解形式表示的所述机器学习任务包括7个参数:梯度下降学习率、初始输入特征向量、初始输出向量、输入样本、输出向量、样本个数和终止误差。
3.根据权利要求2所述的梯度下降迭代次数预测方法,其特征在于:所述神经网络的输入层包括7个节点,分别对应所述机器学习任务的7个参数。
4.根据权利要求3所述的梯度下降迭代次数预测方法,其特征在于:所述神经网络的输出层包括3个节点,分别对应输出的批量梯度下降法、小批量梯度下降法和随机梯度下降法3种梯度下降法;所述神经网络输出层得到3种梯度下降法对应的迭代次数,并选出其中的最小值作为计算所得的最少迭代次数。
5.根据权利要求4所述的梯度下降迭代次数预测方法,其特征在于:所述步骤S2的神经网络中,输入层的输入为Xi,隐层的输入为Ul=WlXi+bl,Wl表示隐层的权值,bl表示隐层的偏置项,隐层的输出为f(Ul),输出层的输入为UL=WLf(Ul)+bL,WL表示输出层的权值,bL表示输出层的偏置项,输出层的输出为f(UL)。
6.根据权利要求5所述的梯度下降迭代次数预测方法,其特征在于:所述步骤S2-2根据当前差异值反向调整所述神经网络中的权值时,先调整输出层的权值,再调整隐层的权值;输出层的权值WL的变化值为率,
表示差异值对权值WL的偏导;隐层的权值Wl的变化值为
L
η表示权值WL的学习
表示
l
差异值对权值Wl的偏导,η表示权值Wl的学习率。
2
CN 109165724 A
权 利 要 求 书
2/2页
7.根据权利要求6所述的梯度下降迭代次数预测方法,其特征在于:所述差异值对权值WL的偏导表示为
所述差异值对权值Wl的偏导表示为
Ll
其中,δ表示输出层的灵敏度,δ表示隐层的灵敏度,T为转置算符。
8.根据权利要求7所述的梯度下降迭代次数预测方法,其特征在于:所述神经网络中,输出层的灵敏度表示为
隐层的灵敏度表示为
其中,f'(Ul)为隐层输出f(Ul)的导数;f'(UL)为输出层输出f(UL)的导数;运算符号表示
两个列向量中的对应元素分别相乘。
9.一种基于神经网络的梯度下降迭代次数预测装置,其特征在于,包括:输入单元,用于输入以梯度下降法求解形式表示的机器学习任务;训练单元,用于收集历史情况的数据,训练基于神经网络的梯度下降优化器,训练的过程包括:
利用所述历史情况的数据构建训练集,所述训练集包括N组训练样本,每组训练样本均包括机器学习任务及其所对应的实际最优梯度下降法和实际最优迭代次数;构建神经网络,所述神经网络包括输入层、隐层和输出层;
将所述训练集的机器学习任务输入所述神经网络,通过所述神经网络计算其最少迭代次数,并求该计算结果与实际最优迭代次数之间的差异值,所述差异值采用如下公式表示:
其中,EN表示差异值,c表示梯度下降法的类别,表示所述神经网络得出的迭代次数,表示实际的最优迭代次数;
判断当前差异值是否为最小值;若是最小值,则保存该神经网络作为梯度下降优化器;若不是最小值,则根据当前差异值反向调整所述神经网络中的权值,将现有的权值加上权值的变化值,得到更新后的神经网络,并返回至将所述训练集中的机器学习任务输入所述神经网络步骤;
预测单元,用于将输入单元得到的所述机器学习任务输入训练单元训练得到的所述梯度下降优化器,利用所述神经网络预测所述机器学习任务的最少迭代次数,以及对应的梯度下降法。
10.根据权利要求9所述的梯度下降迭代次数预测装置,其特征在于:梯度下降法形式表示的所述机器学习任务包括7个参数:梯度下降学习率、初始输入特征向量、初始输出向量、输入样本、输出向量、样本个数和终止误差;
所述神经网络的输入层包括7个节点,分别对应所述机器学习任务的7个参数;输出层包括3个节点,分别对应输出的批量梯度下降法、小批量梯度下降法和随机梯度下降法3种梯度下降法。
3
CN 109165724 A
说 明 书
1/7页
一种基于神经网络的梯度下降迭代次数预测方法及装置
技术领域
[0001]本发明涉及数据处理技术领域,尤其涉及一种基于神经网络的梯度下降迭代次数预测方法及装置。
背景技术
[0002]目前,机器学习发展迅速,已经渗透到不同的领域,许多机器学习任务可以采取特定的形式表示为数学优化问题,并使用梯度下降法有效地解决。[0003]梯度下降法主要分为批量梯度下降法(BGD)、小批量梯度下降法(MBGD)和随机梯度下降法(SGD)三种,利用梯度下降法解决机器学习任务一大难题就是选择合适的梯度下降法,并预测合适的迭代次数。机器学习问题中,最佳执行计划通常依赖所提供的数据,也取决于用户要求的精度。由于机器学习任务的非一致收敛性,任何收集到的统计数据在数据更改时可能变得无用。目前,梯度下降法解决问题更多依赖人工观察与经验选择梯度下降法,依赖性强,且不能快速找出合适的方法并推测出最优迭代次数。发明内容
[0004]本发明的目的是提供一种基于神经网络的梯度下降迭代次数预测方法,采用神经网络训练梯度下降优化器,将神经网络框架引入到选择合适的梯度下降法和预测迭代次数环节中,以便更快找出合适的梯度下降法。[0005]为了实现上述目的,本发明提供了一种基于神经网络的梯度下降迭代次数预测方法,包括:[0006]S1、输入以梯度下降法求解形式表示的机器学习任务;[0007]S2、收集历史情况的数据,训练基于神经网络的梯度下降优化器,训练的过程包括:
[0008]S2-1、利用所述历史情况的数据构建训练集,所述训练集包括N组训练样本,每组训练样本均包括机器学习任务及其所对应的实际最优梯度下降法和实际最优迭代次数;构建神经网络,所述神经网络包括输入层、隐层和输出层;[0009]S2-2、将所述训练集的机器学习任务输入所述神经网络,通过所述神经网络计算其最少迭代次数,并求该计算结果与实际最优迭代次数之间的差异值,所述差异值采用如下公式表示:
[0010][0011]
其中,EN表示差异值,c表示梯度下降法的类别,表示所述神经网络得出的迭代
次数,表示实际的最优迭代次数;
S2-3、判断当前差异值是否为最小值;若是最小值,则保存该神经网络作为梯度下
降优化器;若不是最小值,则根据当前差异值反向调整所述神经网络中的权值,将现有的权值加上权值的变化值,得到更新后的神经网络,并返回至所述步骤S2-2;
4
[0012]
CN 109165724 A[0013]
说 明 书
2/7页
S3、将步骤S1中的所述机器学习任务输入步骤S2训练得到的所述梯度下降优化
器,利用所述神经网络预测所述机器学习任务的最少迭代次数,以及对应的梯度下降法。[0014]优选地,以梯度下降法求解形式表示的所述机器学习任务包括7个参数:梯度下降学习率、初始输入特征向量、初始输出向量、输入样本、输出向量、样本个数和终止误差。[0015]优选地,所述神经网络的输入层包括7个节点,分别对应所述机器学习任务的7个参数。
[0016]优选地,所述神经网络的输出层包括3个节点,分别对应输出的批量梯度下降法、小批量梯度下降法和随机梯度下降法3种梯度下降法;所述神经网络输出层得到3种梯度下降法对应的迭代次数,并选出其中的最小值作为计算所得的最少迭代次数。[0017]优选地,所述步骤S2的神经网络中,输入层的输入为Xi,隐层的输入为Ul=WlXi+bl,Wl表示隐层的权值,bl表示隐层的偏置项,隐层的输出为f(Ul),输出层的输入为UL=WLf(Ul)+bL,WL表示输出层的权值,bL表示输出层的偏置项,输出层的输出为f(UL)。[0018]优选地,所述步骤S2-2根据当前差异值反向调整所述神经网络中的权值时,先调整输出层的权值,再调整隐层的权值;输出层的权值WL的变化值为权值WL的学习率,
L
η表示
表示差异值对权值WL的偏导;隐层的权值Wl的变化值为
l
表示差异值对权值Wl的偏导,η表示权值Wl的学习率。
[0019]
优选地,所述差异值对权值WL的偏导表示为所述差异值对权值Wl
的偏导表示为算符。
[0020]
Ll
其中,δ表示输出层的灵敏度,δ表示隐层的灵敏度,T为转置
优选地,所述神经网络中,输出层的灵敏度表示为隐层的
灵敏度表示为
其中,f'(Ul)为隐层输出f(Ul)的导数;f'(UL)为输出
层输出f(UL)的导数;运算符号表示两个列向量中的对应元素分别相乘。
[0021]本发明还提供了一种基于神经网络的梯度下降迭代次数预测装置,包括:[0022]输入单元,用于输入以梯度下降法求解形式表示的机器学习任务;[0023]训练单元,用于收集历史情况的数据,训练基于神经网络的梯度下降优化器,训练的过程包括:[0024]利用所述历史情况的数据构建训练集,所述训练集包括N组训练样本,每组训练样本均包括机器学习任务及其所对应的实际最优梯度下降法和实际最优迭代次数;构建神经网络,所述神经网络包括输入层、隐层和输出层;
[0025]将所述训练集的机器学习任务输入所述神经网络,通过所述神经网络计算其最少迭代次数,并求该计算结果与实际最优迭代次数之间的差异值,所述差异值采用如下公式表示:
5
CN 109165724 A[0026][0027]
说 明 书
3/7页
其中,EN表示差异值,c表示梯度下降法的类别,表示所述神经网络得出的迭代
次数,表示实际的最优迭代次数;
判断当前差异值是否为最小值;若是最小值,则保存该神经网络作为梯度下降优
化器;若不是最小值,则根据当前差异值反向调整所述神经网络中的权值,将现有的权值加上权值的变化值,得到更新后的神经网络,并返回至将所述训练集中的机器学习任务输入所述神经网络步骤;[0029]预测单元,用于将输入单元得到的所述机器学习任务输入训练单元训练得到的所述梯度下降优化器,利用所述神经网络预测所述机器学习任务的最少迭代次数,以及对应的梯度下降法。[0030]优选地,梯度下降法形式表示的所述机器学习任务包括7个参数:梯度下降学习率、初始输入特征向量、初始输出向量、输入样本、输出向量、样本个数和终止误差;[0031]所述神经网络的输入层包括7个节点,分别对应所述机器学习任务的7个参数;输出层包括3个节点,分别对应输出的批量梯度下降法、小批量梯度下降法和随机梯度下降法3种梯度下降法。
[0032]本发明的上述技术方案具有如下优点:本发明在为机器学习任务选择梯度下降法并预测迭代次数的过程中,利用历史情况中的数据训练梯度下降优化器,通过神经网络框架选择合适的梯度下降法以及预测迭代次数,神经网络通过对数据的训练学习,能够自主地更新隐层,更快找出合适的梯度下降法,同时得到的迭代次数的预估值不受所提供的数据和用户要求的影响,减少优化器对于人工的依赖。附图说明
[0033]图1是本发明实施例一中基于神经网络的梯度下降迭代次数预测方法步骤示意图;
[0034]图2是本发明实施例一中神经网络的结构示意图;
[0035]图3是本发明实施例二中基于神经网络的梯度下降迭代次数预测装置结构示意图。
[0036]图中:100:输入单元;200:训练单元;300:预测单元。具体实施方式
[0037]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。[0038]实施例一[0039]如图1所示,本发明实施例提供的一种基于神经网络的梯度下降迭代次数预测方法,包括:[0040]S1、输入以梯度下降法求解形式表示的机器学习任务。
6
[0028]
CN 109165724 A[0041]
说 明 书
4/7页
梯度下降法表现出三个主要阶段:(1)准备阶段,分析数据;(2)处理阶段,其中最
核心的计算发生;(3)收敛阶段,在最终满足公差或时间成本要求时,运算收敛即计算方法停止运算。优选地,梯度下降法形式表示的所述机器学习任务包括7个参数:梯度下降学习率、初始输入特征向量、初始输出向量、输入样本、输出向量、样本个数和终止误差。其中,初始输入特征向量为特征向量的初始化值,梯度下降法自身的网络迭代结束后,得出最终特征向量。初始输出向量为训练开始时初始化的期望向量。输出向量为与期望向量反复对比,进行迭代,最终满足终止误差时的输出向量。输入样本指输入梯度下降法网络,用于训练梯度下降法的样本。样本个数为训练梯度下降法网络的样本个数。终止误差为梯度下降法训练结束的条件。[0042]S2、收集历史情况的数据,训练基于神经网络的梯度下降优化器。训练后的梯度下降优化器可探索批量梯度下降法、小批量梯度下降法和随机梯度下降法,计算出迭代次数最少的梯度下降法及其迭代次数,用于预测最少迭代次数。将已知的历史情况作为训练集训练神经网络,神经网络内部会反复自动更新权值,并不断将得到的预测迭代次数与已知的实际最优迭代次数进行比较,直至最终输出结果满足预期要求。[0043]具体的,训练梯度下降优化器的过程包括:[0044]S2-1、利用所述历史情况的数据构建训练集,所述训练集包括N组训练样本,每组训练样本均包括机器学习任务及其所对应的实际最优梯度下降法和实际最优迭代次数;构建神经网络,所述神经网络包括输入层、隐层和输出层。[0045]S2-2、将所述训练集中的机器学习任务输入神经网络,通过所述神经网络计算其最少迭代次数,将计算结果与实际最优迭代次数比较,求二者之间的差异值,所述差异值采用如下公式表示:
[0046][0047]
其中,EN表示差异值,c表示梯度下降法的类别,表示神经网络得出的迭代次数,
表示实际的最优迭代次数。差异值EN收敛,因此存在最小值,通过求导可判断其当前差异值是否达到了最小值。需要说明的是,除计算结果与实际最优迭代次数外,其他非最优梯度
下降法对应的迭代次数为0。[0048]S2-3、判断当前差异值是否为最小值;若是最小值,则保存该神经网络作为梯度下降优化器;若不是最小值,则根据当前差异值反向调整所述神经网络中的权值,将现有的权值加上权值的变化值,得到更新后的神经网络,并返回至所述步骤2-2,即返回将训练集中的机器学习任务输入神经网络步骤,再次训练神经网络。[0049]S3、将步骤S1中的所述机器学习任务输入步骤S2训练得到的所述梯度下降优化器,利用所述神经网络预测所述机器学习任务的最少迭代次数,以及对应的梯度下降法。[0050]本发明提供的方法对梯度下降优化器进行训练时,以最少的迭代次数作为梯度下降优化器最终衡量标准,先正向计算得到差异值,然后根据差异值反向传播,更新神经网络中的权值,再正向计算得到更新后的差异值,利用差异值反复调整权值,直至得到使得差异值最小的权值,即得到预测结果最优的神经网络,则停止更新权值,保存权值,得到基于神经网络的优化器。
[0051]本发明提供的方法可用于挑选机器学习任务的最优梯度下降法,并预测其迭代次
7
CN 109165724 A
说 明 书
5/7页
数,避免了依靠人工经验寻找最优梯度下降法的难题,并且在训练神经网络时,通过对训练集中数据的学习,能够更深层次地获得机器学习任务的自身特点,使神经网络预测得到最适合任务的梯度下降法。不仅节省了预测时间,同时针对不同机器学习任务和用户提出的应用要求,都能自主学习,具有较强的适应性。[0052]优选地,神经网络的输入层包括7个节点,分别对应所述机器学习任务的7个参数。神经网络的输出层包括3个节点,分别对应输出的批量梯度下降法、小批量梯度下降法和随机梯度下降法3种梯度下降法(计算差异值EN时,表示梯度下降法类别的c=3)。神经网络输出层得到3种梯度下降法对应的迭代次数,并选出其中的最小值作为计算所得的最少迭代次数,同时反馈最少迭代次数所用的梯度下降法,作为计算所得的最优的梯度下降法。[0053]神经网络的结构示意图如图2所示,输入层的输入为Xi,隐层的输入为Ul=WlXi+bl,Wl表示隐层的权值,bl表示隐层的偏置项,隐层的输出为f(Ul),输出层的输入为UL=WLf(Ul)+bL,WL表示输出层的权值,bL表示输出层的偏置项,输出层的输出为f(UL),f为输出激活函数,根据实际情况选取。[0054]优选地,步骤S2-2根据当前差异值反向调整所述神经网络中的权值时,先调整输出层的权值,再调整隐层的权值,权值的变化值与偏导和学习率相关,需要说明的是,此处的学习率指的是神经网络的学习率,并非是梯度下降法中的梯度下降学习率。[0055]输出层的权值的变化值ΔWL可表达为:
[0056][0057]
L
其中,η表示输出层的权值WL的学习率,
表示差异值对输出层的权值WL的偏
导。隐层的权值Wl的变化值ΔWl可表达为:
[0058][0059]
l其中,η表示隐层的权值Wl的学习率,
表示差异值对隐层的权值Wl的偏导。学
习率与权值相互对应,每一个权值都有特定的学习率,学习率可通过现有技术中的算法确
定,在此不再赘述。
[0060]差异值对权值的偏导与各层灵敏度相关,可利用灵敏度求解权值的偏导。差异值对输出层的权值WL的偏导可表示为:
[0061][0062]
L
其中,δ表示输出层的灵敏度,T为转置算符。差异值对隐层的权值Wl的偏导可表示
为:
[0063][00][0065]
l其中,δ表示隐层的灵敏度。
L
优选地,神经网络中,输出层的灵敏度δ表示为:
8
CN 109165724 A[0066][0067][0068][0069]
说 明 书
6/7页
l
其中,f'(UL)为输出层输出f(UL)的导数。隐层的灵敏度δ表示为:
其中,f'(Ul)为隐层输出f(Ul)的导数。运算符号
表示两个列向量中的对应元
素分别相乘,例如,对于
[0070][0071]
实施例二如图3所示,本实施例二提供了一种基于神经网络的梯度下降迭代次数预测装置,
包括:
输入单元100,用于输入以梯度下降法求解形式表示的机器学习任务。
[0073]训练单元200,用于收集历史情况的数据,训练基于神经网络的梯度下降优化器,训练的过程包括:[0074]利用所述历史情况的数据构建训练集,所述训练集包括N组训练样本,每组训练样本均包括机器学习任务及其所对应的实际最优梯度下降法和实际最优迭代次数;构建神经网络,所述神经网络包括输入层、隐层和输出层;
[0075]将所述训练集中的机器学习任务输入神经网络,通过所述神经网络计算其最少迭代次数,将计算结果与实际最优迭代次数比较,求二者之间的差异值,所述差异值采用如下公式表示:
[0076][0077][0072]
其中,EN表示差异值,c表示梯度下降法的类别,表示所述神经网络得出的迭代
次数,表示实际的最优迭代次数;
判断当前差异值是否为最小值;若是最小值,则保存该神经网络作为梯度下降优
化器;若不是最小值,则根据当前差异值反向调整所述神经网络中的权值,将现有的权值加上权值的变化值,得到更新后的神经网络,并返回至将所述训练集中的机器学习任务输入所述神经网络步骤。[0079]预测单元300,用于将输入单元得到的所述机器学习任务输入训练单元训练得到的所述梯度下降优化器,利用所述神经网络预测所述机器学习任务的最少迭代次数,以及对应的梯度下降法。[0080]优选地,梯度下降法形式表示的所述机器学习任务包括7个参数:梯度下降学习率、初始输入特征向量、初始输出向量、输入样本、输出向量、样本个数和终止误差。[0081]神经网络的输入层包括7个节点,分别对应机器学习任务的7个参数。神经网络的输出层包括3个节点,分别对应输出的批量梯度下降法、小批量梯度下降法和随机梯度下降法3种梯度下降法。[0082]综上所述,本发明的关键在于利用神经网络构建了梯度下降优化器,将神经网络框架引入到机器学习任务的预测迭代方法环节中,通过历史情况的数据对神经网络训练学
[0078]
9
CN 109165724 A
说 明 书
7/7页
习,使得神经网络自主更新权值,快速找到最合适的梯度下降法,预测机器学习任务的最优迭代次数,节省计算时间,减少对人工的依赖。[0083]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
10
CN 109165724 A
说 明 书 附 图
1/1页
图1
图2
图3
11
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- baoaiwan.cn 版权所有 赣ICP备2024042794号-3
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务