模型训练方法及装置与流程

文档序号:19286273发布日期:2019-11-29 23:35阅读:270来源:国知局
模型训练方法及装置与流程

本发明涉及人工智能领域,特别涉及一种模型训练方法及装置。



背景技术:

随着信息科技的发展,人工智能也越来越广泛的应用在人们生活的方方面面。人工智能的发展,能极大的提高人们的工作效率,给人们提供便捷的生活方式,在人工智能中,涉及到神经网络模型的构建时,往往会应用到人工智能平台。

经本发明人研究发现,现有技术中,由于现有的人工智能平台的局限性,使得在应用人工智能平台的生成神经网络时,生成的神经网络模型的网络结构较差,且神经网络模型的权重初始化效果不好,进而导致生成的神经网络需要的训练工作量大,分类效果差。



技术实现要素:

本发明所要解决的技术问题是提供一种模型训练方法,能够通过训练网络生成模型,使得网络生成模型生成的子网络有较好的网络结构,进而可以提高训练效率,使得训练好的网络生成模型生成的子网络能够具有好的分类效果。

本发明还提供了一种模型训练装置,用以保证上述方法在实际中的实现及应用。

一种模型训练方法,包括:

获取待训练的网络生成模型;

对所述网络生成模型重复执行训练操作,直至执行所述训练操作的次数满足预设的训练次数,或所述网络生成模型的模型参数满足预设的训练条件,以得到训练完成的目标网络生成模型;

所述训练操作,包括:应用所述网络生成模型,生成初始神经网络;依据预设的规则为所述初始神经网络分配分类权重;获取预先存储的训练数据对已分配分类权重的所述初始神经网络进行训练,得到目标神经网络;对所述目标神经网络进行评价,得到所述目标神经网络的网络评价值;基于所述网络评价值更新所述网络生成模型的模型参数。

上述的方法,可选的,所述依据预设的规则为所述初始神经网络分配分类权重,包括:

确定所述初始神经网络模型分别与预先构建的神经网络集合中的各个历史神经网络的相似度;

按各个所述相似度由大至小的顺序,依次获取各个历史神经网络中与所述初始神经网络相匹配的权重值,直至已获取的权重值满足所述初始神经网络的需求条件;

将已获取的各个所述权重值分配至所述初始神经网络中。

上述的方法,可选的,得到目标神经网络之后,还包括:

将所述目标神经网络存储至所述神经网络集合中。

上述的方法,可选的,重复执行训练操作,直至所述网络生成模型的模型参数满足预先设置的训练条件,包括:

重复执行训练操作,并在每次所述执行训练操作时,依据当前已更新的模型参数和前一次执行训练操作得到的已更新的模型参数,得到模型参数变化量,若当前的模型参数变化量小于预设的变化量阈值,则确定所述网络生成模型的模型参数满足预先设置的训练条件。

上述的方法,可选的,所述对所述目标神经网络进行评价,得到所述目标神经网络的网络评价值,包括:

获取测试数据集;

将所述测试数据集中包含的各个测试数据输入至所述目标神经网络模型中,以得到所述目标神经网络的预测准确率;

依据所述预测准确率确定所述目标神经网络的网络评价值。

一种模型训练装置,包括:

获取单元,用于获取待训练的网络生成模型;

训练单元,用于对所述网络生成模型重复执行训练操作,直至执行所述训练操作的次数满足预设的训练次数,或所述网络生成模型的模型参数满足预设的训练条件,以得到训练完成的目标网络生成模型;

所述训练操作,包括:应用所述网络生成模型,生成初始神经网络;依据预设的规则为所述初始神经网络分配分类权重;获取预先存储的训练数据对已分配分类权重的所述初始神经网络进行训练,得到目标神经网络;对所述目标神经网络进行评价,得到所述目标神经网络的网络评价值;基于所述网络评价值更新所述网络生成模型的模型参数。

上述的装置,可选的,所述训练单元,包括:

确定子单元,用于确定所述初始神经网络模型分别与预先构建的神经网络集合中的各个历史神经网络的相似度;

第一获取子单元,用于按各个所述相似度由大至小的顺序,依次获取各个历史神经网络中与所述初始神经网络相匹配的权重值,直至已获取的权重值满足所述初始神经网络的需求条件;

分配子单元,用于将已获取的各个所述权重值分配至所述初始神经网络中。

上述的装置,可选的,所述训练单元,还包括:

存储子单元,将所述目标神经网络存储至所述神经网络集合中。

上述的装置,可选的,所述训练单元,包括:

训练子单元,用于重复执行训练操作,并在每次所述执行训练操作时,依据当前已更新的模型参数和前一次执行训练操作得到的已更新的模型参数,得到模型参数变化量,若当前的模型参数变化量小于预设的变化量阈值,则确定所述网络生成模型的模型参数满足预先设置的训练条件。

上述的装置,可选的,所述训练单元,包括:

第二获取子单元,用于获取测试数据集;

输入子单元,用于将所述测试数据集中包含的各个测试数据输入至所述目标神经网络模型中,以得到所述目标神经网络的预测准确率;

确定子单元,用于依据所述预测准确率确定所述目标神经网络的网络评价值。

与现有技术相比,本发明包括以下优点:

本发明提供了一种模型训练方法,包括:获取待训练的网络生成模型;

对所述网络生成模型重复执行训练操作,直至执行所述训练操作的次数满足预设的训练次数,或所述网络生成模型的模型参数满足预设的训练条件,以得到训练完成的目标网络生成模型;所述训练操作,包括:应用所述网络生成模型,生成初始神经网络;依据预设的规则为所述初始神经网络分配分类权重;获取预先存储的训练数据对已分配分类权重的所述初始神经网络进行训练,得到目标神经网络;对所述目标神经网络进行评价,得到所述目标神经网络的网络评价值;基于所述网络评价值更新所述网络生成模型的模型参数。应用本发明提供的方法,能够通过训练网络生成模型,使得网络生成模型生成的子网络有较好的网络结构,进而可以提高训练效率,使得训练好的网络生成模型生成的子网络能够具有好的分类效果。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的一种模型训练方法的方法流程图;

图2为本发明提供的一种模型训练方法的又一方法流程图;

图3为本发明提供的一种模型训练方法的又一方法流程图;

图4为本发明提供的一种模型训练装置的结构示意图;

图5为本发明提供的一种电子设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。

本发明实施例提供了一种模型训练方法,该方法可以应用在多种系统平台,其执行主体可以为计算机终端或各种移动设备的处理器,所述方法的方法流程图如图1所示,具体包括:

s101:获取待训练的网络生成模型。

本发明实施例提供的方法中,该网络生成模型为神经网络模型,具体可以为人工智能平台中的循环神经网络(recurrentneuralnetwork,rnn)生成器,接收到训练指令时,获取该网络生成模型。

s102:对所述网络生成模型重复执行训练操作,直至执行所述训练操作的次数满足预设的训练次数,或所述网络生成模型的模型参数满足预设的训练条件,以得到训练完成的目标网络生成模型。

本发明实施例提供的方法中,所述训练操作,包括:应用所述网络生成模型,生成初始神经网络;依据预设的规则为所述初始神经网络分配分类权重;获取预先存储的训练数据对已分配分类权重的所述初始神经网络进行训练,得到目标神经网络;对所述目标神经网络进行评价,得到所述目标神经网络的网络评价值;基于所述网络评价值更新所述网络生成模型的模型参数。

本发明实施例提供的方法中,该预设的训练次数可以为技术人员依据实际情况进行设定的,对网络生成模型重复执行训练操作,当对网络生成模型执行训练操作的次数满足预设的训练次数,或者,网络模型的模型参数满足预设的训练条件时,停止执行训练操作,并将该已更新模型参数的网络生成模型确定为目标网络生成模型。

本发明实施例提供的方法中,每次执行训练操作所获取的训练数据可以为相同的训练数据。

本发明实施例提供的方法中,基于该网络评价值,应用梯度下降法更新网络生成模型的模型参数。

本发明实施例提供的模型训练方法,通过获取待训练的网络生成模型;对所述网络生成模型重复执行训练操作,直至执行所述训练操作的次数满足预设的训练次数,或所述网络生成模型的模型参数满足预设的训练条件,以得到训练完成的目标网络生成模型;应用本发明实施例提供的模型训练方法,能够通过训练网络生成模型,使得网络生成模型生成的子网络有较好的网络结构,进而可以提高训练效率,使得训练好的网络生成模型生成的子网络能够具有好的分类效果。

本发明实施例提供的模型训练的方法中,基于上述的实施过程,具体的,所述依据预设的规则为所述初始神经网络分配分类权重,如图2所示,可以包括:

s201:确定所述初始神经网络模型分别与预先构建的神经网络集合中的各个历史神经网络的相似度。

本发明实施例提供的方法中,该神经网络集合中存在多个预先存储的神经网络。

本发明实施例提供的方法中,可以调用预先设置的函数来确定初始神经网络模型分别与预先构建的神经网络集合中的各个历史神经网络的相似度,具体的,可以应用余弦相似度算法来计算初始神经网络模型分别与预先构建的神经网络集合中的各个历史神经网络的相似度;初始神经网络的层数、网络结构参数与历史神经网络的层数、网络结构参数越接近时,初始神经网络与该历史神经网络的相似度越高。

s202:按各个所述相似度由大至小的顺序,依次获取各个历史神经网络中与所述初始神经网络相匹配的权重值,直至已获取的权重值满足所述初始神经网络的需求条件。

本发明实施例提供的方法中,该初始神经网络的需求条件可以为该初始神经网络中各个网络层的需求的权重值,按各个所述相似度由大至小的顺序,依次获取各个历史神经网络与该神经网络的各个网络层相匹配的权重值,直至已获取的权重满足初始神经网络中各个网络层的需求。

s203:将已获取的各个所述权重值分配至所述初始神经网络中。

本发明实施例提供的方法中,将已获取的各个所述权重值分配至所述初始神经网络的相应层级中。

本发明实施例提供的方法中,通过将与该初始神经网络相似度较大的神经网络的权重值,分配至初始神经网络中,使得初始神经网络可以具有较好的初始权重值,进而可以减少初始神经网络的训练量,提升初始分类器的分类性能。

本发明实施例提供的模型训练的方法中,基于上述的实施过程,具体的,得到目标神经网络之后,还包括:

将所述目标神经网络存储至所述神经网络集合中。

本发明实施例提供的方法中,将该目标神经网络作为历史神经网络存储至该神经网络集合中;将该目标神经网络存储至该神经网络集合包括将该目标神经网络的结构参数及与结构参数对应的各个权重值存储至预设的存储区域中。

本发明实施例提供的方法中,通过将目标神经网络存储至所述神经网络集合中,可以使得下一次对网络生成模型执行训练操作时,生成新的初始神经网络,可以获取与自身相似度较高的权重值,进而可以减少初始神经网络的训练量,提升初始分类器的分类性能。

本发明实施例提供的模型训练的方法中,基于上述的实施过程,具体的,重复执行训练操作,直至所述网络生成模型的模型参数满足预先设置的训练条件,包括:

重复执行训练操作,并在每次所述执行训练操作时,依据当前已更新的模型参数和前一次执行训练操作得到的已更新的模型参数,得到模型参数变化量,若当前的模型参数变化量小于预设的变化量阈值,则确定所述网络生成模型的模型参数满足预先设置的训练条件。

本发明实施例提供的方法中,重复执行训练操作,直至所述网络生成模型的模型参数满足预先设置的训练条件,还可以包括:

重复执行训练操作,若连续多次训练操作得到的模型参数变化量均小于预设的变化量阈值时,确定该网络生成模型的模型参数满足预先设置的训练条件。

本发明实施例提供的模型训练的方法中,基于上述的实施过程,具体的,所述对所述目标神经网络进行评价,得到所述目标神经网络的网络评价值,如包括:

获取测试数据集;

将所述测试数据集中包含的各个测试数据输入至所述目标神经网络中,以得到所述目标神经网络的预测准确率;

依据所述预测准确率确定所述目标神经网络的网络评价值。

本发明实施例提供的方法中,该测试数据集可以为预先存储的,可选的,对于每个目标神经网络,其测试数据集都是一样的。

本发明实施例提供的方法中,将各个测试数据依次输入至目标神经网络中,得到该目标网络的预测结果,基于该预测结果得到该目标神经网络的网络评价值。

本发明实施例在实际应用过程中,可以部署于人工智能平台,例如automl人工智能平台,下面以automl人工智能平台进行具体说明:

该automl人工智能平台包括rnn生成器、子网络权重处理器及子网络权重管理器,该人工智能平台承载于一个或多个服务器节点;基于权重保留的思想,使用已经训练过的相似子网络的权重值,对新的子网络进行初始化,从而改善automl的整体性能,具体过程如下:

步骤a1、该平台的节点服务器调用rnn生成器,生成一个子网络的结构编码。

步骤a2、子网络权重处理器从子网络权重管理器查询与当前子网络结构相似的历史子网络,得到一批与子网相似度较高的历史子网络的结构,使用这些历史子网络的权重组合成适用于当前子网络的权重值,对其进行初始化。

步骤a3、初始化后的新的子网络,使用数据集进行训练,并获取测试数据集,输入至已完成训练的子网络,得到子网络的网络评价值,子网络权重管理器保存训练后的子网络的网络结构和网络权重。

步骤a4、网络评价值返回给强化学习,更新rnn生成器,并应用已更新的rnn生成器得到新的子网络结构,进入下一次迭代。

当rnn生成器训练结束后,应用rnn生成器生成子网络的过程如图3所示,可以包括:

s301:接收到网络生成指令时,应用经过预训练的rnn生成器生成初始神经网络。

在执行s301的过程中,该网络生成指令可以是用户通过预先设置的可视化页面触发的。

s302:确定所述初始神经网络分别与预先构建的神经网络集合中的各个历史神经网络的相似度。

在执行s302的过程中,可以通过直接比较网络结构参数的方式,对初始神经网络的结构参数与历史神经网络的结构参数进行比较,以确定初始神经网络与历史神经网络的相似度;也可以通过余弦相似度算法计算初始神经网络与历史神经网络的相似度。

s303:按各个所述相似度由大至小的顺序,依次获取各个历史神经网络中与所述初始神经网络模型相匹配的权重值,使得已获取的权重值满足所述初始神经网络的需求条件。

执行s303的过程中,按初始神经网络与各个历史神经网络的相似度由大至小的顺序,依次获取各个历史神经网络中与该初始神经网络模型相匹配的权重值。

s304:将已获取的各个所述权重值分配至所述初始神经网络中,得到目标神经网络。

执行步骤s304的过程中,将每个所述权重值分配至初始神经网络中与其相匹配的网络层中,将已分配权重值的初始神经网络确定为目标神经网络。

本发明实施例提供的方法,通过权值保留的方法可以改善基本的automl的子网络初始化策略,从而加快整个训练过程。

上述各个具体的实现方式,及各个实现方式的衍生过程,均在本发明保护范围内。

与图1所述的方法相对应,本发明实施例还提供了一种模型训练装置,用于对图1中方法的具体实现,本发明实施例提供的模型训练装置可以应用计算机终端或各种移动设备中,其结构示意图如图4所示,具体包括:

获取单元401,用于获取待训练的网络生成模型;

训练单元402,用于对所述网络生成模型重复执行训练操作,直至执行所述训练操作的次数满足预设的训练次数,或所述网络生成模型的模型参数满足预设的训练条件,以得到训练完成的目标网络生成模型;

所述训练操作,包括:应用所述网络生成模型,生成初始神经网络;依据预设的规则为所述初始神经网络分配分类权重;获取预先存储的训练数据对已分配分类权重的所述初始神经网络进行训练,得到目标神经网络;对所述目标神经网络进行评价,得到所述目标神经网络的网络评价值;基于所述网络评价值更新所述网络生成模型的模型参数。

本发明实施例提供的模型训练装置,通过获取待训练的网络生成模型;对所述网络生成模型重复执行训练操作,直至执行所述训练操作的次数满足预设的训练次数,或所述网络生成模型的模型参数满足预设的训练条件,以得到训练完成的目标网络生成模型;能够通过训练网络生成模型,使得网络生成模型生成的子网络有较好的网络结构,进而可以提高训练效率,使得训练好的网络生成模型生成的子网络能够具有好的分类效果。

本发明实施例提供的装置中,所述训练单元402,包括:

第一确定子单元,用于确定所述初始神经网络模型分别与预先构建的神经网络集合中的各个历史神经网络的相似度;

获取子单元,用于按各个所述相似度由大至小的顺序,依次获取各个历史神经网络中与所述初始神经网络相匹配的权重值,直至已获取的权重值满足所述初始神经网络的需求条件;

分配子单元,用于将已获取的各个所述权重值分配至所述初始神经网络中。

本发明实施例提供的装置中,所述训练单元,还包括:

存储子单元,将所述目标神经网络存储至所述神经网络集合中。

本发明实施例提供的装置中,所述训练单元,包括:

训练子单元,用于重复执行训练操作,并在每次所述执行训练操作时,依据当前已更新的模型参数和前一次执行训练操作得到的已更新的模型参数,得到模型参数变化量,若当前的模型参数变化量小于预设的变化量阈值,则确定所述网络生成模型的模型参数满足预先设置的训练条件。

本发明实施例提供的装置中,所述训练单元,包括:

获取子单元,用于获取测试数据集;

输入子单元,用于将所述测试数据集中包含的各个测试数据输入至所述目标神经网络模型中,以得到所述目标神经网络的预测准确率;

确定子单元,用于依据所述预测准确率确定所述目标神经网络的网络评价值。

本发明实施例还提供了一种存储介质,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行上述模型训练方法。

本发明实施例还提供了一种电子设备,其结构示意图如图5所示,具体包括存储器501,以及一个或者一个以上的指令502,其中一个或者一个以上指令502存储于存储器501中,且经配置以由一个或者一个以上处理器503执行所述一个或者一个以上指令502进行以下操作:

获取待训练的网络生成模型;

对所述网络生成模型重复执行训练操作,直至执行所述训练操作的次数满足预设的训练次数,或所述网络生成模型的模型参数满足预设的训练条件,以得到训练完成的目标网络生成模型;

所述训练操作,包括:应用所述网络生成模型,生成初始神经网络;依据预设的规则为所述初始神经网络分配分类权重;获取预先存储的训练数据对已分配分类权重的所述初始神经网络进行训练,得到目标神经网络;对所述目标神经网络进行评价,得到所述目标神经网络的网络评价值;基于所述网络评价值更新所述网络生成模型的模型参数。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。

以上对本发明所提供的一种模型训练方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1