一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种回归模型训练方法、装置、设备及存储介质与流程

2022-04-30 06:02:22 来源:中国专利 TAG:


1.本技术涉及机器学习技术领域,尤其涉及一种回归模型训练方法、装置、设备及存储介质。


背景技术:

2.在采用已训练好的模型对样本数据进行标签预测时,通常会出现通过已训练模型得到的预测标签分布与样本数据的真实标签分布存在偏差的情况,现有技术中常见的方法是通过前处理或者后处理的方法使得模型预测标签分布与真实标签分布相匹配;具体地,前处理方法需要对真实标签进行缩放,后处理方法是对预测标签进行微调,即前处理方法和后处理方法均需要基于特定的调整策略对相应标签进行处理,从而使得预测标签分布与真实标签分布相接近。
3.上述前处理或后处理的方法的调整能力有限,会出现矫枉过正的现象;并且自动化程度低,为了达到较好的效果,需要较多的人工干预;另外可迁移能力差,对于当前样本数据集适用的处理方法并不适用于其它样本数据集;因此亟需一种能够使得预测标签分布与真实标签分布相接近的处理方法。


技术实现要素:

4.本技术所要解决的技术问题在于,提供一种回归模型训练方法、装置、设备及存储介质,能够根据约束条件自动调整模型参数以使得训练得到的模型的预测效果与约束条件相匹配,并且能够适用于采用不同的数据样本集进行模型训练的场景,具有通用性。
5.为了解决上述技术问题,一方面,本技术提供了一种回归模型训练方法,该方法可包括:
6.获取用于对预设模型进行训练的目标函数,所述目标函数中包括基于目标约束条件生成的约束调整项;
7.获取目标样本集合,所述目标样本集合中包括至少一个目标样本以及所述至少一个目标样本的真实标签;
8.通过所述预设模型对所述至少一个目标样本进行标签预测,得到所述至少一个目标样本的预测标签;
9.基于所述目标样本集合中所述至少一个目标样本的真实标签以及所述至少一个目标样本的预测标签,确定所述约束调整项的值;
10.基于所述约束调整项的值,确定所述目标函数的函数值;
11.基于所述目标函数的函数值对所述预设模型的模型参数进行更新。
12.另一方面,本技术提供了一种回归模型训练装置,该装置可包括:
13.目标函数获取模块,用于获取用于对预设模型进行训练的目标函数,所述目标函数中包括基于目标约束条件生成的约束调整项;
14.目标样本集合获取模块,用于获取目标样本集合,所述目标样本集合中包括至少
一个目标样本以及所述至少一个目标样本的真实标签;
15.标签预测模块,用于通过所述预设模型对所述至少一个目标样本进行标签预测,得到所述至少一个目标样本的预测标签;
16.约束调整项值确定模块,用于基于所述目标样本集合中所述至少一个目标样本的真实标签以及所述至少一个目标样本的预测标签,确定所述约束调整项的值;
17.函数值确定模块,用于基于所述约束调整项的值,确定所述目标函数的函数值;
18.模型参数更新模块,用于基于所述目标函数的函数值对所述预设模型的模型参数进行更新。
19.另一方面,本技术提供了一种设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上述的回归模型训练方法。
20.另一方面,本技术提供了一种计算机存储介质,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行如上述的回归模型训练方法。
21.实施本技术实施例,具有如下有益效果:
22.本技术首先确定用于对预设模型进行训练的目标函数,目标函数中包括基于目标约束条件生成的约束调整项;通过预设模型对目标样本进行标签预测,得到预测标签;根据目标样本的真实标签以及预测标签来确定约束调整项的值,进而可确定目标函数的函数值;根据目标函数的函数值对预设模型的模型参数进行更新。即在每一轮训练完成时,基于该轮中模型对输入样本的预测标签以及真实标签来确定包含约束调整项的目标函数的函数值,根据目标函数的函数值再反向调整模型参数,从而可实现根据约束条件自动调整模型参数以使得训练得到的模型的预测效果与约束条件相匹配,并且能够适用于采用不同的数据样本集进行模型训练的场景,具有通用性。
附图说明
23.为了更清楚地说明本技术实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
24.图1是本技术实施例提供的实施环境示意图;
25.图2是本技术实施例提供的一种回归模型训练方法流程图;
26.图3是本技术实施例提供的一种方差约束调整项数值确定方法流程图;
27.图4是本技术实施例提供的一种方差约束调整子项数值确定方法流程图;
28.图5是本技术实施例提供的方差约束调整项数值的计算方法流程图;
29.图6是本技术实施例提供的一种均值约束调整项数值确定方法流程图;
30.图7是本技术实施例提供的均值约束调整项数值的计算方法流程图;
31.图8是本技术实施例提供的目标函数的生成方法流程图;
32.图9是本技术实施例提供的目标函数的函数值的计算方法流程图;
33.图10是本技术实施例提供的预设模型的模型参数更新方法流程图;
34.图11是本技术实施例提供的一种回归模型训练装置示意图;
35.图12是本技术实施例提供的一种设备结构示意图。
具体实施方式
36.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术作进一步地详细描述。显然,所描述的实施例仅仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
37.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
38.请参阅图1,其示出了本技术实施例提供的实施环境示意图,该实施环境可包括:至少一个第一终端110和第二终端120,第一终端110和第二终端120可通过网络进行数据通信。
39.具体地,第一终端110向第二终端120发送模型训练请求,该模型训练请求中可包括包含约束调整项的目标函数以及目标样本集合;第二终端120根据目标函数以及目标样本集合对预设模型进行训练,生成符合约束条件的模型并返回给第一终端110。其中,第一终端110向第二终端120发送的模型训练请求中可以包括训练约束条件以及目标样本集合,第二终端120在接收到模型训练请求时,首先根据训练约束条件生成相应的约束调整项,进而生成用于训练的目标函数;然后根据目标函数以及目标样本集合对预设模型进行训练,生成符合约束条件的模型并返回给第一终端110。
40.第一终端110可以基于浏览器/服务器模式(browser/server,b/s)或客户端/服务器模式(client/server,c/s)与第二终端120进行通信。第一终端110可以包括:智能手机、平板电脑、笔记本电脑、数字助理、智能可穿戴设备、车载终端、服务器等类型的实体设备,也可以包括运行于实体设备中的软体,例如应用程序等。本技术实施例中的第一终端110上运行的操作系统可以包括但不限于安卓系统、ios系统、linux、windows等。
41.第二终端120与第一终端110可以通过有线或者无线建立通信连接,第二终端120具体可为服务器,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。
42.具体可采用云计算(cloud computing)的模式对模型训练过程中的参数进行计算。云计算是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务,提供资源的网络被称为“云”,“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展。
43.现有技术中为了使得模型对样本数据的预测标签分布与真实标签分布相近所采用的相关处理方法存在调整能力有限、自动化程度低、以及可迁移能力差等问题,因此,本技术实施例提供了一种回归模型训练方法,其执行主体可以为上述图1中的第二终端,具体地,请参阅图2,该方法可包括:
44.s210.获取用于对预设模型进行训练的目标函数,所述目标函数中包括基于目标约束条件生成的约束调整项。
45.根据本技术实施例上述内容可知,对于目标函数,可以是由第二终端首先基于目标约束条件生成约束调整项,再基于约束调整项生成目标函数;也可以是第二终端直接从其他终端,例如第一终端,获取的目标函数。本技术实施例不做具体限定,可根据具体实施情况确定,例如考虑到第一终端的处理性能不高,为了降低第一终端的性能资源消耗,可由第二终端根据目标约束条件生成相应的目标函数;再例如为了提高第二终端的处理效率,减少第二终端的工作量,第二终端可直接获取已生成的目标函数。
46.s220.获取目标样本集合,所述目标样本集合中包括至少一个目标样本以及所述至少一个目标样本的真实标签。
47.s230.通过所述预设模型对所述至少一个目标样本进行标签预测,得到所述至少一个目标样本的预测标签。
48.这里的预设模型可以是指初始化的未经训练的模型,也可以是指已经训练过的模型。
49.s240.基于所述目标样本集合中所述至少一个目标样本的真实标签以及所述至少一个目标样本的预测标签,确定所述约束调整项的值。
50.本技术实施例中的目标约束条件可以是用于约束模型的预测标签与真实标签的关系的条件,例如为了使得训练后模型的预测标签与真实标签的数据分布特征相近,数据分布特征中常用的描述包括方差和均值等,可生成有关方差的约束调整项和有关均值的约束调整项等。
51.具体地,当目标约束条件包括方差约束条件时,相应地可基于方差约束条件生成相应的方差约束调整项;请参阅图3,其示出了一种方差约束调整项数值确定方法,该方法可包括:
52.s310.基于所述目标样本集合中各目标样本的真实标签,计算各目标样本的真实标签的均值。
53.这里每个目标样本的真实标签可以为与每个目标样本对应的具体数据,从而可计算各目标样本的真实标签的均值。
54.s320.对于每个目标样本,基于所述目标样本的真实标签、所述目标样本的预测标签以及所述各目标样本的真实标签的均值,确定与所述目标样本对应的方差约束调整子项的值。
55.方差约束调整项的值可由多项方差约束调整子项的值来确定,具体请参阅图4,其示出了一种方差约束调整子项数值确定方法,该方法可包括:
56.s410.对于每个目标样本,确定所述目标样本的真实标签与所述目标样本的预测标签的差值为第一差值,以及确定所述目标样本的真实标签与所述各目标样本的真实标签的均值的差值为第二差值。
57.s420.将所述第一差值和所述第二差值的乘积确定为与所述目标样本对应的方差约束调整子项的值。
58.具体地,对于具有n个样本的样本集合s中的任一样本si,其对应的方差约束调整子项的值为
[0059][0060]
其中,yi表示样本si的真实标签,y
′i表示样本si的预测标签,表示n个样本真实标签的均值。
[0061]
s330.基于与各目标样本对应的方差约束调整子项的值,确定所述方差约束调整项的值。
[0062]
对于方差约束调整项数值的计算方法,具体请参阅图5,该方法可包括:
[0063]
s510.对各目标样本对应的方差约束调整子项的值进行求和,得到第一数值。
[0064]
s520.基于对所述第一数值取绝对值后得到的数值计算所述方差约束调整项的值。
[0065]
对于方差约束调整项的值具体可通过以下公式进行计算:
[0066][0067]
其中,yi表示样本si的真实标签,y
′i表示样本si的预测标签,表示n个样本真实标签的均值。
[0068]
从而根据上述式(2),可得到与目标样本集合s对应的方差约束调整项的数值。
[0069]
在上述图3所示的方差约束调整项数值确定方法的基础上,可进一步结合各目标样本的预测标签的均值来确定方差约束调整项的值,从而对于方差约束调整项的另一种计算方式可直接采用目标样本的真实标签方差与目标样本的预测标签方差的差值来确定,具体可通过如下公式来实现:
[0070][0071]
其中,yi表示样本si的真实标签,y
′i表示样本si的预测标签,表示n个样本真实标签的均值,表示n个样本预测标签的均值。
[0072]
l
rota
的主要功能在于调整模型预测的方差,使得模型预测的方差与真实的方差尽可能接近;从而基于上述式(2)和式(3)均可计算出方差约束调整项的数值,可根据具体实施情况来确定具体选取哪种方式。例如,当已知样本si的真实标签yi、样本si的预测标签y
′i以及n个样本真实标签的均值时,可采用式(2)来计算方差约束调整项的值;当已知样本si的真实标签yi、样本si的预测标签y
′i、n个样本真实标签的均值以及n个样本预测标签的均值可采用式(3)来计算方差约束调整项的值。
[0073]
具体地,当目标约束条件包括均值约束条件时,相应地可基于约束条件生成相应的均值约束调整项;请参阅图6,其示出了一种均值约束调整项数值确定方法,该方法可包
括:
[0074]
s610.对于每个目标样本,基于所述目标样本的真实标签以及所述目标样本的预测标签,确定与所述目标样本对应的均值约束调整子项的值。
[0075]
具体可确定目标样本的指示标签与目标样本的预测标签的差值为与目标样本对应的均值约束调整子项的值,对于具有n个样本的样本集合s中的任一样本si,其对应的均值约束调整子项的值为
[0076]
l2=y
i-y
′iꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0077]
其中,yi表示样本si的真实标签,y
′i表示样本si的预测标签。
[0078]
s620.基于与各目标样本对应的均值约束调整子项的值,确定所述均值约束调整项的值。
[0079]
对于均值约束调整项数值的计算方法,具体可参阅图6,该方法可包括:
[0080]
s710.对各目标样本对应的均值约束调整子项的值进行求和,得到第二数值。
[0081]
s720.基于对所述第二数值取绝对值后得到的数值计算所述均值约束调整项的值。
[0082]
对于均值约束调整项的值具体可通过以下公式进行计算:
[0083][0084]
其中,yi表示样本si的真实标签,y
′i表示样本si的预测标签。
[0085]
l
mean
的功能在于调整模型的均值,使得模型预测的均值与真实的均值尽可能接近;从而根据上述式(5),可得到与目标样本集合s对应的均值约束调整项的数值。
[0086]
在具体实施过程中,当目标约束条件是训练后模型的预测标签与真实标签的数据分布特征相近,其相应生成的约束调整项可以为方差约束调整项,可以为均值约束调整项,也可以为方差约束调整项和均值约束调整项等。
[0087]
s250.基于所述约束调整项的值,确定所述目标函数的函数值。
[0088]
除了本实施例上述的方差约束调整项以及均值约束调整项,目标函数还可以包括预设基准项;另外,对于目标函数的具体生成方法可参阅图8,包括:
[0089]
s810.为所述预设基准项分配基准系数,为所述约束调整项分配调整系数。
[0090]
s820.基于所述基准系数与所述预设基准项的乘积,以及所述调整系数与所述约束调整项的乘积,生成所述目标函数。
[0091]
对于目标函数中的预设基准项,可以为与目标样本集合对应的均方误差mse(mean square error)或者平均绝对误差mae(mean absolute error),即预设基准项可以为:
[0092][0093]
或者,预设基准项可以为:
[0094][0095]
其中,yi表示样本si的真实标签,y
′i表示样本si的预测标签。
[0096]
l
mse
或l
mae
的功能在于让单个样本的预测标签与真实标签尽可能接近,但是对模型
预测的整体分布控制能力很弱,只有在数据十分充足,训练足够充分时才能使得模型预测分布与真实分布相同。
[0097]
从而生成的目标函数具体可以为:
[0098]
l=αl
mse
βl
rota
γl
mean
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(8)
[0099]
或者,
[0100]
l=αl
mae
βl
rota
γl
mean
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(9)
[0101]
其中,α的值一般取1,β和γ为可调整参数,相应的约束调整项可以为一项,也可以为两项;当约束调整项为方差约束调整项时,β可取大于0的浮点数,γ取0;当约束调整项为均值约束调整项时,β取0,γ可取大于0的浮点数;当约束调整项为方差约束调整项和均值约束调整项时,β和γ均可取大于0的浮点数。
[0102]
对于目标函数的函数值的计算方法,具体可参阅图9,该方法可包括:
[0103]
s910.基于所述目标样本集合中所述至少一个目标样本的真实标签以及所述至少一个目标样本的预测标签,确定所述预设基准项的值。
[0104]
s920.将所述预设基准项的值,以及所述约束调整项的值代入到所述目标函数中,得到所述目标函数的函数值。
[0105]
在计算了预设基准项、方差约束调整项以及均值约束调整项的数值之后,可直接代入到目标函数中,求得目标函数的函数值。
[0106]
s260.基于所述目标函数的函数值对所述预设模型的模型参数进行更新。
[0107]
预设模型可以为包括输入层、隐含层和输出层的三层结构模型,其中输入层、隐含层以及输出层均分别包括若干神经元,输入层的每个神经元与隐含层的每个神经元连接线之间有相应的权重,隐含层的每个神经元与输出层的每个神经元连接线之间有相应的权重,这些权重在模型初始化时会被赋初值,在模型训练过程中会对这些权重进行调整,这些权重即为本技术实施例中的模型参数;例如输入层包括两个神经元i1和i2,隐含层包括两个神经元h1和h2,输出层包括两个神经元o1和o2,神经元i1与神经元h1之间连线的权重为w1,神经元h1与神经元o1之间连线的权重为w2等。
[0108]
对于预设模型的模型参数进行更新的方法具体可参阅图10,该方法可包括:
[0109]
s1010.基于所述目标函数的函数值计算所述预设模型中的各模型参数的调整梯度。
[0110]
s1020.根据各模型参数的调整梯度分别对相应的模型参数进行调整,得到调整后的模型参数。
[0111]
s1030.基于所述调整后的模型参数对所述预设模型的模型参数进行更新。
[0112]
在计算得到目标函数的函数值后,可根据本轮训练完成时得到的目标函数的函数值来反向更新预设模型的模型参数,具体可通过现有技术中的反向传播方法来更新模型参数,在此不再赘述。
[0113]
对预设模型的训练目标就是要最小化目标函数,其中对于模型训练的结束条件,可以设置相应的阈值,当目标函数的函数值小于该阈值时,可停止对预设模型进行训练;或者当目标函数的函数值趋于收敛时,可停止对预设模型进行训练。另外,对于上述训练过程中所采用的目标样本集合,其可以是重复使用的样本集合,也可以是新获取的样本集合。
[0114]
以一个基于梯度下降的可训练的回归模型为例来说明本技术实施例的具体实施
流程,对于该回归模型,接收一个真实标签为yi的样本si,并预测其标签为y
′i,根据上述内容可知,需要最小化目标函数,以目标函数中包括预设基准项l
mse
、方差约束调整项l
rota
和均值约束调整项l
mean
为例,根据真实标签yi与预测标签y
′i,分别得到预设基准项l
mse
、方差约束调整项l
rota
和均值约束调整项l
mean
的值,进而得到目标函数的函数值;基于目标函数的函数值通过反向传播的方式对回归模型的模型参数进行更新。
[0115]
当数据不够充分时,引入方差约束调整项l
rota
和均值约束调整项l
mean
能够克服数据不充足的缺陷。方差约束调整项l
rota
的工作机制为:当预测方差σ

明显小于真实方差σ时,对于单个样本,y
′i与同时大于或小于yi的可能性很大,因此l
rota
会比较大,在最小化训练目标时,会受到比较大的惩罚,这是因为l
rota
的值比较大,从而使得目标函数的函数值较大,基于目标函数的函数值通过反向传播进行模型参数调整时,对模型参数的调整幅度也较大;经过多次反向传播调整模型参数之后,使得经过模型参数调整之后得到的目标函数的函数值逐步减小,从而实现提升σ',使σ'≈σ;在上述调整过程中,可能会由于学习率过大,导致预测方差σ'明显大于真实方差σ时,对于单个样本,y
′i与位于yi两侧的可能性很大,由于绝对值的作用,l
rota
还是会比较大,在最小化训练目标时,同样会受到比较大的惩罚,从而实现减少σ',使σ'≈σ。通过这样的机制,σ'会在σ附近震荡,直至收敛。l
mean
作为均值约束项,其主要目的是为了防止预测标签的均值与真实标签的均值出现明显偏离。通过方差约束调整项l
rota
和均值约束调整项l
mean
的作用,从而实现预测分布与真实分布的契合。
[0116]
本技术实施例提供的基于条件约束的模型训练方法可根据目标函数的函数值反向调整模型参数,本技术实施例中的模型参数为各层神经元之间的权重,从而这里的根据目标函数的函数值反向调整模型参数具体可包括:以权重w1为例,可用目标函数对权重w1求偏导,并将相应的数值代入到求偏导之后的公式,从而确定对权重w1的调整梯度,实现了通过目标函数的函数值反向调整模型权重;从而可实现根据约束条件自动调整模型参数以使得训练得到的模型的预测效果与约束条件相匹配,约束条件中包括方差约束调整项和/或均值约束调整项,模型训练的目标是使得目标函数的函数值尽可能小,从而也即要使得目标函数中的方差约束调整项和/或均值约束调整项的值尽可能小,方差约束调整项和/或均值约束调整项的值尽可能小也即模型预测得到的预测方差与真实方差和/或预测均值与真实均值相差尽可能小,进而实现了模型预测效果与约束条件相匹配;当约束条件是使得预设模型的预测标签分布与真实标签分布相近时,可设置包含方差和均值的约束调整项,从而通过对预设模型的预测标签的方差和均值进行约束,使预测标签的方差和均值与真实标签的方差和均值相近,进而使得预设模型的预测标签分布与真实标签分布相接近。
[0117]
在训练数据不充足的情况下,基于在目标函数中不添加约束调整项而直接进行模型训练的方法所得到的训练模型,对于接近取值范围边缘的标签难以预测到,并且预测标签的方差会明显小于真实标签的方差,也就是说预测标签会向真实标签均值靠拢,预测标签的均值与真实标签的均值之间缺乏显性约束;相比于不添加约束调整项而直接进行模型训练的方法,通过本技术实施例中提供的基于条件约束的模型训练方法得到的训练模型,得到的预测标签分布与真实标签分布相接近,也说明了通过该方法训练生成的模型的预测效果准确,预测标签分布接近样本标签的真实分布情况,从而提升了模型预测的准确性;具
体能够自动调整预测标签的方差,使其与真实标签的方差相接近,且能够预测真实标签位于标签边界的样本的标签,对预测标签的均值与真实标签的均值加入了显性约束,能够避免模型预测标签向真实标签均值靠拢;尤其在数据不充足的前提下,利用本技术中提供的训练方法并结合提前终止的训练方法,这里提前终止可以是指在需要尽快完成模型训练的情况下,此时可能仅采用了少量的训练数据对模型进行了训练,为了避免由于训练数据不足导致的模型预测效果不佳的问题,结合上述基于条件约束的模型训练方法可以得到性能相对好的模型,避免欠拟合与过拟合,可实现无人工干预的模型训练与预测,且能够保证预测分布与真实分布相契合。本技术中由于目标函数中添加了关于分布约束的调整项,训练具有目的性,能够使得基于较少的训练数据生成符合分布约束条件的模型,既可以应用于训练数据获取困难或者训练数据较少的训练场景中,也可以应用于训练数据充足但需要提前终止训练的场景中,从而可在节约训练时间的基础上,得到预测性能较好的模型。
[0118]
本技术首先确定用于对预设模型进行训练的目标函数,目标函数中包括基于目标约束条件生成的约束调整项;通过预设模型对目标样本进行标签预测,得到预测标签;根据目标样本的真实标签以及预测标签来确定约束调整项的值,进而可确定目标函数的函数值;根据目标函数的函数值对预设模型的模型参数进行更新。即在每一轮训练完成时,基于该轮中模型对输入样本的预测标签以及真实标签来确定包含约束调整项的目标函数的函数值,根据目标函数的函数值再反向调整模型参数,从而可实现根据约束条件自动调整模型参数以使得训练得到的模型的预测效果与约束条件相匹配,并且能够适用于采用不同的数据样本集进行模型训练的场景,具有通用性。
[0119]
具体可通过一组实验来验证本技术提供的基于条件约束的模型训练方法的有效性,现有8个数据集,分别具有1783,1800,1726,1772,1805,1800,1569,723篇文章。这里每个数据集的数据都是非常少的,使用传统的训练方法,利用这些数据难以得到一个训练充分的打分模型。
[0120]
为了得到置信度较高的结果,可采用5-fold的方法,分别对每个数据集划分20%的数据作为测试集,20%的数据作为验证集,60%的数据作为训练集;利用二次加权的kappa系数(quadratic weighted kappa)作为衡量指标,并且选择目前同类模型的最好结果作为对比,实验结果如表1所示:
[0121]
表1
[0122][0123]
从实验可以发现,使用单纯的均方误差mse作为目标函数时,训练后的模型与业界最好水平的低大约是0.01;使用本技术中添加约束调整项(mse rota mean)的目标函数,训练后的模型会比业界最好水平高出0.009。由此可见,本技术提供的基于条件约束的模型训练方法在数据不充分的时候,能够达到比较好的模型效果。
[0124]
本技术可应用于数据采集难度较大的回归模型训练过程中,例如教育应用平台中
的作文打分、语言发音评测打分等主观题打分模型,具体可采用基于条件约束进行训练得到的训练模型对学生的作文进行打分,模型输出的学生作文分数分布与真实作文分数分布相接近,打出的分数会有较好的区分度,能够反映学生写作水平上的差异,可以帮助老师批改作文或者学生对自己写作水平进行自测;另外可将作文打分模型与反馈模型相结合,形成一个打分、反馈系统,帮助学生提升英语写作能力。
[0125]
本实施例还提供了一种回归模型训练装置,请参阅图11,该装置可包括:
[0126]
目标函数获取模块1110,用于获取用于对预设模型进行训练的目标函数,所述目标函数中包括基于目标约束条件生成的约束调整项;
[0127]
目标样本集合获取模块1120,用于获取目标样本集合,所述目标样本集合中包括至少一个目标样本以及所述至少一个目标样本的真实标签;
[0128]
标签预测模块1130,用于通过所述预设模型对所述至少一个目标样本进行标签预测,得到所述至少一个目标样本的预测标签;
[0129]
约束调整项值确定模块1140,用于基于所述目标样本集合中所述至少一个目标样本的真实标签以及所述至少一个目标样本的预测标签,确定所述约束调整项的值;
[0130]
函数值确定模块1150,用于基于所述约束调整项的值,确定所述目标函数的函数值;
[0131]
模型参数更新模块1160,用于基于所述目标函数的函数值对所述预设模型的模型参数进行更新。
[0132]
进一步地,所述目标约束条件包括方差约束条件,所述约束调整项包括基于所述方差约束条件生成的方差约束调整项;相应地,约束调整项值确定模块1140包括:
[0133]
真实标签均值计算模块,用于基于所述目标样本集合中各目标样本的真实标签,计算各目标样本的真实标签的均值;
[0134]
第一确定模块,用于对于每个目标样本,基于所述目标样本的真实标签、所述目标样本的预测标签以及所述各目标样本的真实标签的均值,确定与所述目标样本对应的方差约束调整子项的值;
[0135]
第二确定模块,用于基于与各目标样本对应的方差约束调整子项的值,确定所述方差约束调整项的值。
[0136]
第一确定模块包括:
[0137]
差值确定模块,用于对于每个目标样本,确定所述目标样本的真实标签与所述目标样本的预测标签的差值为第一差值,以及确定所述目标样本的真实标签与所述各目标样本的真实标签的均值的差值为第二差值;
[0138]
方差约束调整子项值确定模块,用于将所述第一差值和所述第二差值的乘积确定为与所述目标样本对应的方差约束调整子项的值。
[0139]
第二确定模块包括:
[0140]
第一求和模块,用于对各目标样本对应的方差约束调整子项的值进行求和,得到第一数值;
[0141]
方差约束调整项值计算模块,用于基于对所述第一数值取绝对值后得到的数值计算所述方差约束调整项的值。
[0142]
进一步地,所述目标约束条件包括均值约束条件,所述约束调整项包括基于所述
均值约束条件生成的均值约束调整项;相应地,约束调整项值确定模块1140包括:
[0143]
第三确定模块,用于对于每个目标样本,基于所述目标样本的真实标签以及所述目标样本的预测标签,确定与所述目标样本对应的均值约束调整子项的值;
[0144]
第四确定模块,用于基于与各目标样本对应的均值约束调整子项的值,确定所述均值约束调整项的值。
[0145]
第三确定模块包括:
[0146]
均值约束调整子项值确定模块,用于对于每个目标样本,确定所述目标样本的真实标签与所述目标样本的预测标签的差值为与所述目标样本对应的均值约束调整子项的值。
[0147]
第四确定模块包括:
[0148]
第二求和模块,用于对各目标样本对应的均值约束调整子项的值进行求和,得到第二数值;
[0149]
均值约束调整项值计算模块,用于基于对所述第二数值取绝对值后得到的数值计算所述均值约束调整项的值。
[0150]
目标函数中还包括预设基准项;相应地,该装置还可包括目标函数生成模块,该目标函数生成模块包括:
[0151]
系数分配模块,用于系数分配模块为所述预设基准项分配基准系数,为所述约束调整项分配调整系数;
[0152]
第一生成模块,用于基于所述基准系数与所述预设基准项的乘积,以及所述调整系数与所述约束调整项的乘积,生成所述目标函数。
[0153]
进一步地,函数值确定模块1150包括:
[0154]
预设基准项值确定模块,用于基于所述目标样本集合中所述至少一个目标样本的真实标签以及所述至少一个目标样本的预测标签,确定所述预设基准项的值;
[0155]
代入计算模块,用于将所述预设基准项的值,以及所述约束调整项的值代入到所述目标函数中,得到所述目标函数的函数值。
[0156]
模型参数更新模块1160包括:
[0157]
调整梯度计算模块,用于基于所述目标函数的函数值计算所述预设模型中的各模型参数的调整梯度;
[0158]
参数调整模块,用于根据各模型参数的调整梯度分别对相应的模型参数进行调整,得到调整后的模型参数;
[0159]
第一更新模块,用于基于所述调整后的模型参数对所述预设模型的模型参数进行更新。
[0160]
上述实施例中提供的装置可执行本技术任意实施例所提供方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本技术任意实施例所提供的方法。
[0161]
本实施例还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行如本实施例上述任一方法。
[0162]
本实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算
机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行如本实施例上述任一方法。
[0163]
本实施例还提供了一种设备,其结构图请参见图12,该设备1200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,cpu)1222(例如,一个或一个以上处理器)和存储器1232,一个或一个以上存储应用程序1242或数据1244的存储媒体1230(例如一个或一个以上海量存储设备)。其中,存储器1232和存储媒体1230可以是短暂存储或持久存储。存储在存储媒体1230的程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对设备中的一系列指令操作。更进一步地,中央处理器1222可以设置为与存储媒体1230通信,在设备1200上执行存储媒体1230中的一系列指令操作。设备1200还可以包括一个或一个以上电源1226,一个或一个以上有线或无线网络接口1250,一个或一个以上输入输出接口1258,和/或,一个或一个以上操作系统1241,例如windows server
tm
,mac os x
tm
,unix
tm
,linux
tm
,freebsd
tm
等等。本实施例上述的任一方法均可基于图12所示的设备进行实施。
[0164]
本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤和顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或中断产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
[0165]
本实施例中所示出的结构,仅仅是与本技术方案相关的部分结构,并不构成对本技术方案所应用于其上的设备的限定,具体的设备可以包括比示出的更多或更少的部件,或者组合某些部件,或者具有不同的部件的布置。应当理解到,本实施例中所揭露的方法、装置等,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分仅仅为一种逻辑功能的划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元模块的间接耦合或通信连接。
[0166]
基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0167]
本领域技术人员还可以进一步意识到,结合本说明书所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但这种实现不应认为超出本技术的范围。
[0168]
以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献