CN111476369A - 一种神经网络模型的训练方法 - Google Patents
一种神经网络模型的训练方法 Download PDFInfo
- Publication number
- CN111476369A CN111476369A CN202010396685.1A CN202010396685A CN111476369A CN 111476369 A CN111476369 A CN 111476369A CN 202010396685 A CN202010396685 A CN 202010396685A CN 111476369 A CN111476369 A CN 111476369A
- Authority
- CN
- China
- Prior art keywords
- neural network
- network model
- gradient
- training
- model
- 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
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
一种神经网络模型的训练方法,解决了基于图像的神经网络模型存在训练时间过长与分类结果随机震荡的问题,属于图像识别的机器学习技术领域。本发明包括:将图像的训练集输入到神经网络模型中进行训练,获取当前神经网络模型的参数,回归模型根据当前神经网络模型参数的数值拟合出下一步的梯度;回归模型的获取方法为:使用神经网络模型在所述训练集的相似图像数据集上进行训练时记录的神经网络模型参数矩阵和梯度矩阵构成先验知识,利用回归模型构建神经网络模型参数和梯度之间的关系;根据拟合出的梯度更新神经网络模型的参数。本发明还可以与梯度下降算法交叉调用的方式,获取下一步梯度,本发明能够有效降低神经网络模型训练时间。
Description
技术领域
本发明涉及一种基于图像识别的神经网络模型的训练方法,属于图像识别的机器学习技术领域。
背景技术
目前,随着人工智能的发展,深度学习俨然已经成为一个热词,有将深度学习应用于语音识别和图像识别,也有利用深度学习来了解客户的行为习惯。
而应用于图像识别时,现有深度学习是将图像数据集分为图像训练集和图像测试集,利用图像训练集对神经网络模型进行训练,在现有的神经网络模型结构中,参数的训练遵循“差值-梯度-参数”规则,即首先根据每次迭代输出的标签值与实际值进行对比得到差值,然后根据差值输出梯度,最后按照梯度修改神经网络模型网络参数,直至满足训练结束条件时,确定神经网络模型训练结束,该神经网络模型用于图像识别。最后利用图像测试集的数据测试训练之后的神经网络模型的时效和鲁棒性。这种方法在面对复杂任务时神经网络模型存在训练时间过长与分类结果随机震荡的问题。随着深度学习技术逐步深入到各个领域中,待处理的实际问题复杂度越来越高,训练神经网络模型所耗费的时间就会不断增大。
发明内容
针对在处理复杂任务时基于图像的神经网络模型存在训练时间过长与分类结果随机震荡的问题,本发明提供一种神经网络模型的训练方法。
本发明的一种神经网络模型训练方法,所述方法包括:
S11、将图像的训练集输入到神经网络模型中进行训练,获取当前神经网络模型的参数,回归模型根据当前神经网络模型参数的数值拟合出下一步的梯度;
所述回归模型的获取方法为:
使用神经网络模型在所述训练集的相似图像数据集上进行训练时记录的神经网络模型参数矩阵和梯度矩阵构成先验知识,利用回归模型构建神经网络模型参数和梯度之间的关系;
S12、根据S1拟合出的梯度更新神经网络模型的参数。
作为优选,所述回归模型的训练数据为神经网络模型的卷积层在正向传播过程中由权值、偏置与梯度组成的数据库,根据数据库在神经网络模型的每一个卷积层上分别构建两个回归模型,两个回归模型分别表示权值参数和偏置参数与梯度之间的关系。
本发明还提供了一种神经网络模型的训练方法,包括:
S21、采用两种梯度获取方法交叉调用的方式,获取下一步梯度;
两种梯度获取方法分别为梯度下降算法和上述S11;
S22、根据S21获取的梯度更新神经网络模型的参数。
作为优选,所述S21中,通过设定转换两种获取梯度方法的阈值,实现交叉调用。
作为优选,所述阈值为神经网络模型训练中两次迭代之间分类正确率的增幅。
本发明的有益效果,本发明提出了一种基于先验知识的神经网络模型训练方法。该方法主要包含两方面工作,首先,基于深度学习中参数重用的思想,本发明利用先前神经网络模型迭代的参数构成回归模型,利用回归模型指导神经网络模型参数变化。其次,本发明提出的优化网络结构可以减少在训练过程中陷入局部最优的可能性,增加寻找全局最优的可能性,即可以在不修改原神经网络模型结构的同时,加快神经网络模型的训练速度。实验表明,对比应用梯度下降法的传统模型,本发明的方法可以显著降低神经网络模型在训练过程中引发的震荡现象;此外,实验表明,在保持神经网络模型图像分类准确率的情况下可以有效降低神经网络模型训练时间达到10%以上;实验发现,这种时间上的优化效果会随神经网络模型深度的增加而增加。
附图说明
图1为本发明的原理示意图;
图2为正确率变化对比示意图;
图3为原始模型和改进模型的正确率示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
本实施方式是基于先验知识的优化方法也能够达到加速网络训练的效果,为了提高深度学习神经网络训练的时间效率,本发明首先总结神经网络模型训练时每一次迭代改变的模型参数形成数据集,然后在此数据集上训练回归模型,最后将训练好的回归模型融入目标神经网络模型结构中,可以在不修改原神经网络模型结构的同时,加快神经网络模型的训练速度。
本实施方式是基于先验知识的神经网络优化方法将先验知识应用到了神经网络训练过程中,使得神经网络在训练时跳过对数据集进行迭代求解差值,再根据差值计算梯度更新网络参数的正向传播过程,本实施方式的神经网络模型的训练方法,具体包括:
步骤一:构建参数先验知识:
使用神经网络模型在训练集的相似数据集上进行训练时记录的参数矩阵和梯度矩阵构成先验知识,利用回归模型构建神经网络模型参数和梯度之间的关系,由于这样构建的回归模型具有直接根据网络参数的数值拟合下一步的梯度,进而指导网络参数变化的能力。
在单次调用时,参数的更新过程为:首先屏蔽梯度下降算法的正向与反向传播过程,只保留梯度更新过程;其次,截取神经网络模型的参数矩阵,经过回归模型拟合得到下一步的梯度;
步骤二、根据拟合出的梯度更新神经网络模型的参数。
将回归模型调入到神经网络模型的结构中形成改进模型,与原始神经网络模型相比,本实施方式的改进模型中使用了先验知识的引导,可以认为神经网络模型已知了一个或多个可以通往全局最优解的方向,这类方向的数量由先验知识的数量决定。而在实际应用中,损失平面上鞍点的数量远大于局部极小值区域的数量,正是由于在鞍点处可以存在数十亿个可能的梯度下降方向,所以能否尽快的寻找到一条通往全局最优解的方向将决定神经网络训练速度的快慢。
优选实施例中,本实施方式的回归模型的训练数据为神经网络模型的卷积层在正向传播过程中由权值、偏置与梯度组成的数据库,根据数据库在神经网络模型的每一个卷积层上分别构建两个回归模型,两个回归模型分别表示权值参数和偏置参数与梯度之间的关系。
下面以一个单层神经网络为例,参数训练过程如式(1)(2)(3)所示,其中w为权值,b为偏置,N为样本总数。
回归模型的训练数据来源于卷积层在正向传播过程中由权值、偏置与梯度组成的数据库,根据“权值-梯度”、“偏置-梯度”的组合,就可以在每一个卷积层分别构建grad(w)和grad(b)两个回归模型。由于在神经网络的卷积层中,每一层之间的参数变化是没有联系的,所以需要分别对每一层的参数构建不同的回归模型来拟合变化规律。这里以一个n层的全连接网络为例,其过程如式(4)(5)所示,其中wi、bj分别为回归模型的权值、偏置矩阵。
grad(w)=w0x0+w1x1+…+wnxn=∑wixi(4)
grad(b)=b0y0+b1y1+…+bnyn=∑bjyj(5)
在单次调用时,参数的更新过程为:首先屏蔽梯度下降算法的正向与反向传播过程,只保留梯度更新过程;其次,截取卷积层的权值和偏置矩阵,经过回归模型拟合得到梯度;最后调用梯度更新卷积层参数。
本实施方式还可以与随机梯度下降算法共同指导模型的训练过程。图1展示了改进模型中应用梯度下降算法和基于先验知识的回归模型获取梯度的算法的训练流程,这种模型的迭代方法,减少了通过梯度下降算法不断迭代计算与真实值之间差值的过程,从而形成了“参数获取-回归拟合-梯度更新”的神经网络训练算法。
在实际应用中,本实施方式改进的神经网络模型将默认调用梯度下降算法,同时采用基于先验知识的回归模型获取梯度的算法与梯度下降算法交叉调用的方式。这种交叉调用的方式需要设定一个转换两种获取梯度方法的阈值;
优选实施例中,本实施方式选择当模型训练中两次迭代之间分类正确率增幅小于1%时,即认为模型已经陷入低学习率区域,此时模型将在下一次训练开始前停止当前调用的梯度获取方法,转而使用另一种方法进行训练。这样的交叉调用方法可以使得模型主动跳出由局部极小值和鞍点带来的低学习率区域,从而有效的提高神经网络训练速度。
模型训练时效对比实验,包括模型训练的准确率对比与分析、模型训练时间对比与分析和模型训练过程的鲁棒性分析;
模型训练的准确率对比与分析:
就卷积层单次迭代所消耗的时间而言,传统的梯度下降算法中一次迭代的时间复杂度为o(n),其中n代表batch-size;而在应用了先验知识指导的卷积层中,一次迭代所消耗的时间复杂度仅为o(1)。也就是说,要处理的数据量复杂度越高,在模型中引入先验知识所带来的时间优势就越明显。
图2为原始模型和改进模型分别在VGG11上对cifar10进行训练的“时间-正确率”的平均变化规律折线图,实验记录了应用交叉调用方法的改进模型与应用梯度下降算法的原始模型在训练时产生的迭代次数、正确率和消耗时间等数值。其中圆、方散点分别为原始模型和改进模型的测试集正确率,单点线、实线为分别为原始模型和改进模型的正确率变化趋势。可以看到,原始模型在10000s、改进模型在7500s时,两者的变化趋势曲线几乎不再变化,可以认为模型的训练已经结束。在这样的前提条件下,从时间角度来看,不论是模型前期训练的增长速度还是达到最高分类正确率的时间,应用了先验知识指导的神经网络一直领先于原始模型,且达到最高正确率的时间相对提前了约25%,同时两者所能达到的最高分类正确率几乎吻合,误差平均不超过0.5%。
模型训练时间对比与分析:
在实际应用中,为了解决一些复杂问题,有时会构建出更深层的卷积神经网络,而随着网络层数的增加,训练时间也会越来越长。为了验证这种由先验知识指导的神经网络训练方法在更深层的网络结构中也能起到优化作用,本实施方式分别在VGG11、VGG13、VGG16和VGG19[13]四个不同卷积层深度的神经网络结构上进行实验,并控制训练时间以模拟实际应用时对模型训练时间的限制。表1为不同深度的神经网络中训练时间的对比,可以看到,当卷积层从8层逐步扩大到16层时,模型训练时间的提升由10.6%扩大为15.4%,与此同时,原始模型和改进模型在全部迭代中所能达到的最高分类正确率差值一直保持在0.5%以下。这说明改进模型在图像特征提取和分类能力上与原始模型没有差别,并且在二者正确率相似的情况下,随着卷积层的不断加深,应用改进模型所能带来的时间优势会越来越大。
表1时间优势在卷积层数增加时更明显
模型训练过程的鲁棒性分析:
除了时间优势之外,在处理一些复杂的多维度的数据时,没有先验知识指导的神经网络最终很可能会陷入到局部最优解或停滞在鞍点上,使得最终的训练结果存在严重的震荡。在本实验中,为了更贴近实际应用的习惯,引入了5次冗余的早停以标记模型结束训练时的正确率。在这种限制条件下,由于梯度下降算法无法预知优化路径上的低学习率区域,也无法在多次训练时保持梯度下降方向相同,所以在原始模型训练结束时,测试集分类正确率变得非常不稳定,如图3所示。图3显示了两组数据集在20次随机训练时停止标记处的最终分类正确率,其中横坐标为训练编号,纵坐标为分类准确率。可以看到,由于这种不稳定的震荡的影响,在多次进行的训练结果记录中,原始模型的测试集最高分类正确率的最大值与最小值之间的差值达到了5%;而引入了先验知识指导的改进模型在多次试验中训练得到的结果则十分稳定,只有不到1%的震荡。同时,改进模型在停止标记处的测试集分类正确率与原始模型所能达到的最高值只有不到0.5%的差距。
面对神经网络在实际应用时遇到的训练时间过长与分类结果随机震荡的问题,本发明提出了一种基于先验知识的神经网络模型的训练方法,这种方法利用模型训练过程中积累的先验知识指导网络参数的训练,使网络有效的学习到在相似数据集中训练时遇到的局部最优解与鞍点区域,从而在训练过程中主动跳出低学习率区域,极大地缩短了训练时间。同时,在使用回归模型指导神经网络模型的参数选取这一过程中,为了保持先验知识的有效性,生成的拟合结果会具有极高的拟合优度,所以改进模型的分类结果会趋向于先验知识所能够得到的最高分类正确率,这种特性一方面会提高神经网络的稳定性,减小训练结果的震荡,另一方面也提高了对先验知识质量的需求。所以,选用高分类正确率的先验知识,并扩大数量,是一种能够提高回归模型正确指导参数变化趋势能力的方法。
虽然在本文中参照了特定的实施方式来描述本发明,但是应该理解的是,这些实施例仅仅是本发明的原理和应用的示例。因此应该理解的是,可以对示例性的实施例进行许多修改,并且可以设计出其他的布置,只要不偏离所附权利要求所限定的本发明的精神和范围。应该理解的是,可以通过不同于原始权利要求所描述的方式来结合不同的从属权利要求和本文中所述的特征。还可以理解的是,结合单独实施例所描述的特征可以使用在其他所述实施例中。
Claims (5)
1.一种神经网络模型的训练方法,其特征在于,所述方法包括:
S11、将图像的训练集输入到神经网络模型中进行训练,获取当前神经网络模型的参数,回归模型根据当前神经网络模型参数的数值拟合出下一步的梯度;
所述回归模型的获取方法为:
使用神经网络模型在所述训练集的相似图像数据集上进行训练时记录的神经网络模型参数矩阵和梯度矩阵构成先验知识,利用回归模型构建神经网络模型参数和梯度之间的关系;
S12、根据S1拟合出的梯度更新神经网络模型的参数。
2.根据权利要求1所述的神经网络模型的训练方法,其特征在于,
所述回归模型的训练数据为神经网络模型的卷积层在正向传播过程中由权值、偏置与梯度组成的数据库,根据数据库在神经网络模型的每一个卷积层上分别构建两个回归模型,两个回归模型分别表示权值参数和偏置参数与梯度之间的关系。
3.一种神经网络模型的训练方法,其特征在于,所述方法包括:
S21、采用两种梯度获取方法交叉调用的方式,获取下一步梯度;
两种梯度获取方法分别为梯度下降算法和权利要求1或2中的S11;
S22、根据S21获取的梯度更新神经网络模型的参数。
4.根据权利要求3所述的神经网络模型的训练方法,其特征在于,所述S21中,通过设定转换两种获取梯度方法的阈值,实现交叉调用。
5.根据权利要求4所述的神经网络模型的训练方法,其特征在于,所述阈值为神经网络模型训练中两次迭代之间分类正确率的增幅。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010396685.1A CN111476369A (zh) | 2020-05-11 | 2020-05-11 | 一种神经网络模型的训练方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010396685.1A CN111476369A (zh) | 2020-05-11 | 2020-05-11 | 一种神经网络模型的训练方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111476369A true CN111476369A (zh) | 2020-07-31 |
Family
ID=71764481
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010396685.1A Pending CN111476369A (zh) | 2020-05-11 | 2020-05-11 | 一种神经网络模型的训练方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111476369A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112308149A (zh) * | 2020-11-02 | 2021-02-02 | 平安科技(深圳)有限公司 | 基于机器学习的图像信息识别的优化方法及装置 |
CN113065950A (zh) * | 2021-04-22 | 2021-07-02 | 中国工商银行股份有限公司 | 信用卡额度评估方法及装置 |
CN114881206A (zh) * | 2022-04-21 | 2022-08-09 | 北京航空航天大学 | 一种通用神经网络蒸馏公式方法 |
-
2020
- 2020-05-11 CN CN202010396685.1A patent/CN111476369A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112308149A (zh) * | 2020-11-02 | 2021-02-02 | 平安科技(深圳)有限公司 | 基于机器学习的图像信息识别的优化方法及装置 |
CN112308149B (zh) * | 2020-11-02 | 2023-10-24 | 平安科技(深圳)有限公司 | 基于机器学习的图像信息识别的优化方法及装置 |
CN113065950A (zh) * | 2021-04-22 | 2021-07-02 | 中国工商银行股份有限公司 | 信用卡额度评估方法及装置 |
CN114881206A (zh) * | 2022-04-21 | 2022-08-09 | 北京航空航天大学 | 一种通用神经网络蒸馏公式方法 |
CN114881206B (zh) * | 2022-04-21 | 2024-05-28 | 北京航空航天大学 | 一种通用神经网络蒸馏公式方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111476369A (zh) | 一种神经网络模型的训练方法 | |
CN108509596A (zh) | 文本分类方法、装置、计算机设备和存储介质 | |
CN109947940B (zh) | 文本分类方法、装置、终端及存储介质 | |
CN111079899A (zh) | 神经网络模型压缩方法、系统、设备及介质 | |
CN106921830A (zh) | 一种自动聚焦的方法及装置 | |
CN106409288A (zh) | 一种利用变异鱼群算法优化的svm进行语音识别的方法 | |
CN113223515B (zh) | 一种对抗攻击免疫的自动语音识别方法 | |
CN113011337A (zh) | 一种基于深度元学习的汉字字库生成方法及系统 | |
CN110110860B (zh) | 一种用于加速机器学习训练的自适应数据采样方法 | |
CN113377991B (zh) | 一种基于最难正负样本的图像检索方法 | |
CN110942141A (zh) | 基于全局稀疏动量sgd的深度神经网络剪枝方法 | |
CN106384587A (zh) | 一种语音识别方法及系统 | |
CN112632320A (zh) | 基于长尾分布提升语音分类尾部识别准确度的方法 | |
CN115544033B (zh) | 查重向量库更新、数据查重方法、装置、设备和介质 | |
CN111582442A (zh) | 一种基于优化深度神经网络模型的图像识别方法 | |
CN115494840A (zh) | 一种基于蒙特卡洛因子的mc-iaco的焊接机器人路径规划方法 | |
CN115601660A (zh) | 基于神经网络结构搜索的遥感影像变化检测方法 | |
WO2022134946A1 (zh) | 模型训练方法、装置、存储介质及设备 | |
CN108874761A (zh) | 一种智能写作方法和装置 | |
CN112819085B (zh) | 基于机器学习的模型优化方法、装置及存储介质 | |
CN108932550B (zh) | 一种基于模糊密集稀疏密集算法进行图像分类的方法 | |
Thienpondt et al. | ECAPA2: A Hybrid Neural Network Architecture and Training Strategy for Robust Speaker Embeddings | |
CN113920124A (zh) | 基于分割和误差引导的脑神经元迭代分割方法 | |
CN113468156A (zh) | 基于特征融合增强的数据集缺失值填补方法 | |
CN112200275A (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 |