本发明涉及深度学习技术领域,特别涉及一种模型训练、回归分析的方法、装置、存储介质和设备。
背景技术:
回归分析是基于深度学习的图像分析领域的一项重要分支。对图像进行回归分析,主要是指,利用预先构建的深度学习模型处理图像,得到该图像在一个具有连续的取值范围的待测指标上的预测值。
例如,图像中的人物或车辆的年龄预测就是对图像的回归分析的一种应用,其中人像或车辆的年龄就是需要预测的待测指标,利用预先构建的深度学习模型处理图像,可以确定出图像中人像或车辆的年龄的预测值。一般的,用于实现回归分析任务的深度学习模型可以称为回归模型。
目前,针对回归模型进行训练时一般采用加权求和损失函数计算每次更新后的模型损失值,然后基于模型损失值更新模型参数。
加权求和损失函数中,模型损失值由待测指标的取值范围内各个备选值按权重分布中对应的权重加权求和的结果,与图像在待测指标上的真实值(预先标注得到)之间的偏差决定,权重分布则取决于回归模型输出的图像特征。
加权求和损失函数只能约束各个备选值加权求和的结果,而无法控制取值范围内备选值的权重的整体分布情况。这就导致利用加权求和损失函数训练完成的回归模型在用于实际预测时,可能出现部分相对于真实值偏差较大的备选值具有过高的权重,使得最终的预测结果的误差较大,准确度较低。
技术实现要素:
基于上述现有技术的缺点,本申请提供一种模型训练、回归分析的方法、装置、存储介质和设备,以提供一种具有更高的准确度的回归分析模型。
本申请第一方面提供一种模型训练的方法,包括:
获取训练样本;其中,所述训练样本包括样本图像,以及预先标注的所述样本图像的待测指标的真实值;
利用待训练的回归模型对所述样本图像进行识别,得到所述样本图像的图像特征,并根据所述图像特征确定所述样本图像的权重分布;其中,所述权重分布用于指示所述样本图像的待测指标的预测值;所述权重分布包括所述待测指标的取值范围内每一个备选值的权重;
利用第一损失函数对所述权重分布执行损失计算,得到所述待训练的回归模型的第一损失值,并利用第二损失函数对所述权重分布执行损失计算,得到所述待训练的回归模型的第二损失值;其中,所述第一损失函数为利用所述权重分布中与所述真实值对应的权重进行计算的熵损失函数;所述第二损失函数为利用所述权重分布包含的每一个权重和所述真实值进行计算的加权求和损失函数;
对所述第一损失值和所述第二损失值进行运算,得到所述回归模型的模型损失值;
若所述模型损失值不符合预设的模型收敛条件,根据所述模型损失值计算得到参数更新值;并利用所述参数更新值更新模型参数;其中,所述模型参数指代所述待训练的回归模型的参数;
返回执行所述利用待训练的回归模型对所述样本图像进行识别,得到所述样本图像的图像特征步骤,直至所述模型损失值符合所述模型收敛条件为止。
可选的,所述对所述第一损失值和所述第二损失值进行运算,得到所述回归模型的模型损失值,包括:
计算所述第一损失值和第一系数的乘积,得到修正后的第一损失值;
计算所述第二损失值和第二系数的乘积,得到修正后的第二损失值;
将所述修正后的第一损失值与所述修正后的第二损失值之和确定为所述待训练的回归模型的模型损失值。
可选的,所述对所述第一损失值和所述第二损失值进行运算,得到所述回归模型的模型损失值,包括:
将所述第一损失值与所述第二损失值相加,得到所述回归模型的模型损失值。
可选的,所述利用第一损失函数对所述权重分布执行损失计算,得到所述待训练的回归模型的第一损失值,包括:
对所述权重分布中与所述真实值对应的权重进行对数运算,得到所述待训练的回归模型的第一损失值;
所述利用第二损失函数对所述权重分布执行损失计算,得到所述待训练的回归模型的第二损失值,包括:
将所述待测指标的取值范围内的每一个备选值,按照所述权重分布中对应的权重进行加权求和,得到所述样本图像的待测指标的预测值;
对所述预测值和所述真实值的偏差进行平方运算,得到所述待训练的回归模型的第二损失值。
本申请第二方面提供一种回归分析的方法,包括:
获取待识别图像;
利用完成训练的回归模型对所述待识别图像进行识别,得到所述待识别图像的图像特征,并根据所述图像特征确定所述待识别图像的权重分布;其中,所述回归模型利用本申请第一方面任意一项所提供的模型训练的方法训练得到;
根据所述待识别图像的权重分布,确定出所述待识别图像在预先指定的待测指标上的预测值。
本申请第三方面提供一种模型训练的装置,包括:
获取单元,用于获取训练样本;其中,所述训练样本包括样本图像,以及预先标注的所述样本图像的待测指标的真实值;
识别单元,用于利用待训练的回归模型对所述样本图像进行识别,得到所述样本图像的图像特征,并根据所述图像特征确定所述样本图像的权重分布;其中,所述权重分布用于指示所述样本图像的待测指标的预测值;所述权重分布包括所述待测指标的取值范围内每一个备选值的权重;
计算单元,用于利用第一损失函数对所述权重分布执行损失计算,得到所述待训练的回归模型的第一损失值,并利用第二损失函数对所述权重分布执行损失计算,得到所述待训练的回归模型的第二损失值;其中,所述第一损失函数为利用所述权重分布中与所述真实值对应的权重进行计算的熵损失函数;所述第二损失函数为利用所述权重分布包含的每一个权重和所述真实值进行计算的加权求和损失函数;
合并单元,用于对所述第一损失值和所述第二损失值进行运算,得到所述回归模型的模型损失值;
更新单元,用于若所述模型损失值不符合预设的模型收敛条件,根据所述模型损失值计算得到参数更新值;并利用所述参数更新值更新模型参数;其中,所述模型参数指代所述待训练的回归模型的参数;
所述识别单元,用于返回执行所述利用待训练的回归模型对所述样本图像进行识别,得到所述样本图像的图像特征步骤,直至所述模型损失值符合所述模型收敛条件为止。
可选的,所述合并单元对所述第一损失值和所述第二损失值进行运算,得到所述回归模型的模型损失值时,具体用于:
将所述第一损失值与所述第二损失值相加,得到所述回归模型的模型损失值。
本申请第四方面提供一种回归分析的装置,包括:
获取单元,用于获取待识别图像;
识别单元,用于利用完成训练的回归模型对所述待识别图像进行识别,得到所述待识别图像的图像特征,并根据所述图像特征确定所述待识别图像的权重分布;其中,所述回归模型利用本申请第一方面任意一项所提供的模型训练的方法训练得到;
确定单元,用于根据所述待识别图像的权重分布,确定出所述待识别图像在预先指定的待测指标上的预测值。
本申请第五方面提供一种计算机存储介质,用于存储计算机程序,所述计算机程序被执行时,具体用于实现本申请第一方面任意一项所提供的模型训练的方法,或者用于实现本申请第二方面所提供的回归分析的方法。
本申请第六方面提供一种电子设备,包括存储器和处理器;
其中,所述存储器用于存储计算机程序;
所述处理器用于执行所述计算机程序,所述计算机程序被执行时,具体用于实现本申请第一方面任意一项所提供的模型训练的方法,或者用于实现本申请第二方面任意一项所提供的回归分析的方法。
本申请提供一种模型训练、回归分析的方法、装置、存储介质和设备,方法包括:利用待训练的回归模型确定样本图像的权重分布;用第一损失函数和第二损失函数对权重分布执行损失计算,得到第一损失值和第二损失值,第一损失函数为对权重分布中与真实值对应的权重进行计算的熵损失函数;第二损失函数为对权重分布中每一个权重和真实值进行计算的加权求和损失函数;对第一损失值和第二损失值运算得到模型损失值;若模型损失值不符合模型收敛条件,根据模型损失值更新待训练的回归模型的参数,再次训练直至符合模型收敛条件为止。模型损失值既约束各个备选值加权求和的结果,也能控制各备选值的权重集中在真实值附近,提高训练好的回归模型的准确度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种模型训练的方法的流程图;
图2为本申请实施例提供的一种模型损失值反向传播的示意图;
图3为本申请实施例提供的一种回归分析的方法的流程图;
图4为本申请实施例提供的一种模型训练的装置的结构示意图;
图5为本申请实施例提供的一种回归分析的装置的结构示意图;
图6为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请实施例提供了一种模型训练的方法,请参考图1,该方法可以包括如下步骤:
s101、获取训练样本。
其中,训练样本包括样本图像,以及预先标注的样本图像的待测指标的真实值。
本申请实施例所提供的方法所训练的回归模型,可以指代任意一种用于对图像进行回归分析的深度学习模型,常见的回归分析问题包括但不限于:
预测图像中显示的人群的人数,即人数识别,针对这一问题,前述待测指标为人群所包含的人数;
预测图像中显示的车辆的年龄(即车辆的使用年限),即车龄识别,针对这一问题,待测指标为车辆的使用年限,即车龄;
预测图像中显示的人物脸部图像的年龄,即年龄识别,针对这一问题,待测指标为图像中显示的人物的年龄。
以用于年龄识别的回归模型,即年龄模型的训练过程为例,步骤s101中的训练样本,可以包括样本面部图像,以及预先标注的样本图像中人物的真实年龄,也就是说,在对于年龄识别模型的训练,待测指标为图像中人物的年龄,真实值即预先标注的人物真实年龄。
训练样本可以有多个,换言之,步骤s101中,可以利用摄像设备拍摄得到多个不同年龄的人的面部图像,将这些面部图像作为样本面部图像,同时获取被拍摄的这些人的真实年龄,将样本面部图像和被拍摄的人的真实年龄组合,就得到多个训练样本。
s102、利用待训练的回归模型对样本图像进行识别,得到样本图像的图像特征,并确定样本图像的权重分布。
样本图像的权重分布可以根据待训练的回归模型输出的图像特征确定。
其中,权重分布用于指示样本图像的待测指标的预测值;权重分布包括待测指标的取值范围内每一个备选值的权重。
利用待训练的年龄模型对样本面部图像进行年龄识别,得到年龄特征。
其中,年龄特征用于指示样本面部图像中人像的预测年龄。
针对每一张样本图像,待训练的回归模型均能够识别出该图像对应的图像特征,若步骤s101中获取了多个训练样本,则步骤s102中可以利用待训练的回归模型对每一张样本图像进行识别,得到每一张样本图像的图像特征。
对于任意一张样本图像,回归模型输出的图像特征均是一个n维的向量,其中,n为预先设定的待测指标的取值范围内的备选值的数量。
例如,对于年龄模型,待测指标,即人物的年龄的取值范围可以是1至100,显然该范围内有100个备选值,相应的输出的图像特征为100维的向量。
对用于进行人数识别的回归模型,待测指标是图像中人群所包含的人数,可以预先设定人群包含的人数为10至80,该范围内有70个备选值,则输出的图像特征为70维的向量。
图像特征包含的每一个数值,均对应于待测指标的一个备选值,该数值表征,样本图像的待测指标的数值等于对应的备选值的概率。
以年龄模型为例,针对设定的1至100的年龄范围,对应的待训练的年龄模型输出的就是一个100维的向量,其中第一个数值表示被识别的人像年龄为1岁的概率,第二个数值表示被识别的人像年龄为2岁的概率,以此类推。下文涉及年龄模型的训练时,均以1岁至100岁这一年龄范围为例进行说明。
根据图像特征,可以计算得到每一个备选值的权重,这些权重组合成的向量称为该样本图像的权重分布。
具体的,对于第i个备选值,其对应的权重pi可以由下述公式计算得到:
xi表示图像特征中第i个备选值对应的数值,上述公式中的分母表示图像特征包含的所有数值之和。
s103、分别利用第一损失函数和第二损失函数对样本图像的权重分布执行损失计算,得到第一损失值和第二损失值。
步骤s103具体可以包括:
对权重分布中与真实值对应的权重进行对数运算,得到待训练的回归模型的第一损失值;
利用第二损失函数对权重分布执行损失计算,得到待训练的回归模型的第二损失值,包括:
将待测指标的取值范围内的每一个备选值,按照权重分布中对应的权重进行加权求和,得到样本图像的待测指标的预测值;
对预测值和真实值的偏差进行平方运算,得到待训练的回归模型的第二损失值。
其中,第一损失值由第一损失函数根据权重分布计算得到,第一损失函数为利用权重分布中与真实值对应的权重进行计算的熵损失函数,第二损失值由第二损失函数根据权重分布计算得到,第二损失函数为利用权重分布包含的每一个权重和真实值进行计算的加权求和损失函数。
在具体实施时,第一损失函数可以是连续时序分类函数(theconnectionisttemporalclassificationloss),交叉熵损失函数(crossentropyloss),poison分布的训练样本的负对数似然损失函数(negativeloglikelihoodlosswithpoissondistributionoftarget)。
第二损失函数可以是加权求和损失函数。
下面以年龄模型的训练过程为例说明第一损失值和第二损失值的一种可选的计算过程。
当第一损失函数为交叉熵损失函数时,第一损失值loss1的具体计算过程可以包括:
首先在步骤s120所述的权重分布中,确定出样本图像的真实年龄所对应的权重,即真实年龄权重。
举例来说,对于一个训练样本,其样本面部图像的年龄特征记为x(x1,x2,x3,……,xi,……x100),这个样本面部图像的真实年龄用class表示,若样本面部图像的真实年龄为30,则class等于30,那么,这个训练样本的真实年龄权重,可以按下述公式计算得到:
其中,e为自然常数,若将上述以自然常数为底的指数运算改写为exp()的形式,则上述公式可以变形为:
上述公式中,分子是以年龄特征x中,真实年龄class对应的概率为指数,以自然常数为底进行指数运算得到的数值,分母则是,以自然常数为底,以年龄特征包含的每一个概率作为指数,分别进行指数运算后的所有数值之和。pclass就表示该训练样本的真实年龄权重。
根据训练样本的真实年龄权重,计算得到交叉熵损失值loss1。
交叉熵损失函数的表达式如下:
可以看出,上述表达式中-log[]内的算式就是前述真实年龄权重,针对任意一个训练样本,在计算出该训练样本的真实年龄权重pclass之后,只需要将真实年龄权重pclass代入上述表达式中的-log[]的括号内,就可以计算得到该训练样本本次的交叉熵损失值loss1。
当第二损失函数为加权求和损失函数时,第二损失值的具体计算过程可以包括:
在年龄模型的训练过程中,步骤s102所确定的权重分布,包含设定的年龄范围内的每一个年龄所对应的年龄权重,将年龄范围内每一个年龄的年龄权重代入下述加权求和损失函数的表达式,就可以计算得到第二损失值loss2:
其中,class与前文含义一致,表示预先标注的样本面部图像中人像的真实年龄。
s104、对第一损失值和第二损失值进行运算,得到回归模型的模型损失值。
步骤s104中对第一损失值和第二损失值进行运算的方式,可以是:
计算第一损失值和预设的第一系数的乘积,得到修正后的第一损失值;
计算第二损失值和预设的第二系数的乘积,得到修正后的第二损失值;
将修正后的第一损失值与修正后的第二损失值相加,将得到的和确定为待训练的回归模型的模型损失值loss-m。
通过这种方式可以控制这两种损失值在后续更新模型参数时对模型参数的影响的大小,从而调控回归模型的训练速度。
步骤s104中对第一损失值和第二损失值进行运算的方式,也可以是:
直接将第一损失值与第二损失值相加,将两者之和确定为回归模型的模型损失值loss-m。
步骤s104中对第一损失值和第二损失值进行运算的方式,还可以是:
将第一损失值和第二损失值相乘,将两者的乘积确定为回归模型的模型损失值loss-m。
s105、判断模型损失值是否符合模型收敛条件。
若模型损失值不符合模型收敛条件,则执行步骤s106,若模型损失值符合模型收敛条件,则执行步骤s107。
其中,模型收敛条件可以是,模型损失值小于或等于预先设定的损失阈值。也就是说,在步骤s105中,可以将模型损失值和损失阈值进行比较,若模型损失值大于损失阈值,则可以判断出模型损失值不符合模型收敛条件,反之,若模型损失值小于或等于损失阈值,则可以判断出模型损失值符合模型收敛条件。
需要说明的是,当步骤s101中获取了多个训练样本时,步骤s104中对应的可以针对每一个训练样本均计算得到对应的模型损失值,这种情况下,执行步骤s105时,只有在每一个训练样本的模型损失值均符合模型收敛条件的情况下才会执行步骤s107,反之,只要有一个训练样本的模型损失值不符合模型收敛条件,则执行步骤s106。
s106、根据模型损失值计算得到参数更新值;并利用参数更新值更新模型参数。
其中,模型参数指代待训练的回归模型的参数。
执行了步骤s106之后,返回执行步骤s102,利用模型参数被更新后的回归模型,再次对样本图像进行识别。
当存在多个训练样本,并对应的针对每一个训练样本计算得到对应的模型损失值的时候,步骤s106中可以仅利用那些不符合模型收敛条件的模型损失值计算参数更新值,然后用参数更新值更新模型参数。
具体的,可以针对每一个训练样本,都利用其模型损失值计算得到对应的参数更新值,然后将计算得到的所有参数更新值求和,用总的参数更新值更新模型参数,也可以利用多个训练样本的参数更新值依次更新模型参数。
对于任意一个训练样本,可以利用反向传播算法对这个训练样本的模型损失值loss-m进行计算,得到对应的参数更新值。
请参考图2,回归模型的模型参数,主要包括卷积层的模型参数和全连接层的模型参数。从图2可以看出,对于一个输入回归模型的特定图像(在训练过程,就是训练样本包含的样本图像),回归模型从这个样本图像中识别得到的图像特征,以及根据图像特征计算得到的取值范围内各个备选值的权重(即权重分布),均由回归模型当前各个模型参数的数值决定。
因此,可以以回归模型的结构为依据,对回归模型识别出图像特征并计算出模型损失值的过程进行反向推导,从而得到构成回归模型的模型参数和模型损失值之间的函数关系,然后根据这一函数关系,以及当前的模型损失值,计算得到模型参数的参数更新值。
如上述公式所示,公式最左侧的一项表示的是模型损失值和模型参数之间的函数关系,其中w就表示模型参数,可以看出,模型损失值和模型参数之间的函数关系,可以表示成模型损失值和权重分布之间的函数关系,与,权重分布和模型参数的函数关系的乘积(参考上述公式中左侧第一个等号两边的算式),进一步的,权重分布(pk)和模型参数的函数关系又可以表示成,权重分布和图像特征(x)之间的函数关系,与,图像特征和模型参数之间的函数关系的乘积。
其中,模型损失值和权重分布之间的函数关系可以根据前述第一损失函数和第二损失函数确定,结合前述例子,也就是根据交叉熵损失函数和加权求和损失函数确定,权重分布和图像特征之间的函数关系可以根据权重分布包含的各个备选值的权重的计算方法确定,而图像特征和模型参数之间的函数关系,则可以根据回归模型的结构确定。
通过上述公式,就可以确定出模型损失值和模型参数之间的函数关系,进而根据当前的模型损失值计算出模型参数的参数更新值。
s107、输出训练好的回归模型。
本申请所提供的回归模型的训练方法具有如下的有益效果:
本申请提供的方法在训练时对同一个权重分布分别利用第一损失函数和第二损失函数计算得到两种损失值,然后对两种损失值运算得到的运算结果作为用于更新模型参数的模型损失值,通过这种方式使两种损失函数耦合在一起,在训练回归模型的过程中起到相互约束的作用。从而弥补单独使用其中某一种损失函数训练模型时带来的不足。
根据前文计算权重分布的公式可以看出,对于一个图像特征,根据该图像特征计算得到整个年龄范围内所有权重分布之和为100%。
第一方面,根据前述加权求和损失函数的表达式可以看出,对于一个特定的训练样本,加权求和损失值的大小仅由待测指标的取值范围内所有备选值按对应的权重加权求和后的结果决定,显然不能反映最终输出的权重分布在整个取值范围上的分布情况。因此,仅使用加权求和损失函数对回归模型进行训练,有可能出现训练过程中加权求和损失值(由加权求和损失函数计算得到的损失值)符合模型收敛条件,但是各个备选值的权重在整个取值范围上的分布情况不合理(合理的分布情况是,备选值越接近训练样本的真实值,则对应的权重越大,备选值距离训练样本的真实值越远,则对应的权重越小),后续利用回归模型对图像进行识别时,这种不合理的分布情况会导致回归模型检测得到的待测指标的预测值和真实值的偏差过大。
第二方面,根据交叉熵损失函数的表达式可以看出,第一损失值只能反映回归模型输出的权重分布中,和训练样本的真实值对应的权重是否足够大,但是,对于回归分析领域所涉及的图像,一般当两幅图像的待测指标的取值相近时,这两幅图像的差别很小(例如,同一个人不同年龄的面部图像就差别很小),实际上回归模型输出的权重分布中,数值较大的权重主要都是分布在真实值以及和真实值接近的其他备选值上,(例如真实年龄为30岁,则数值较大的权重主要分布在28至32岁这一区间内),而不会完全集中在真实值上,导致仅仅使用第一损失函数进行训练,很难使回归模型输出的第一损失值符合模型收敛条件,降低了回归模型的训练效率。
而通过本申请提供的方法将第一损失函数和第二损失函数耦合,针对第一方面的问题,当训练过程中回归模型输出的权重分布不合理时,例如,有一个和真实值偏差较大的备选值具有较大的权重时,第一损失值会显著增大,使得两者耦合得到的模型损失值不符合模型收敛条件,从而继续更新模型参数,由此就避免了训练好的回归模型输出的图像特征所对应的权重分布不合理的情况。
针对第二方面的问题,当回归模型输出的权重分布较平均的分布在真实值,以及和真实值相接近的多个备选值时,计算得到的第二损失值会显著减小,这样,即使第一损失值仍然较大,两者耦合得到的模型损失值也会相对减小,使得回归模型可以在权重分布的分布集中在待测指标的真实值附近时迅速的符合收敛条件,从而完成对回归模型的训练,达到提高回归模型的训练效率的效果。
请参考图3,基于上述针对回归模型的模型训练方法,本申请还提供一种利用训练好的回归模型实现的回归分析方法,该方法可以包括如下步骤:
s301、获取待识别图像。
当回归分析问题具体是指针对人物面部图像的年龄识别问题时,待识别图像可以是待识别面部图像,具体可以利用任意一种摄像设备对用户拍摄而得到。
s302、利用完成训练的回归模型对待识别图像进行识别,得到待识别图像的图像特征,并确定待识别图像的权重分布。
以年龄识别问题为例,步骤s302的执行过程可以是,利用完成训练的年龄模型对待识别面部图像进行年龄识别,得到待识别面部图像的图像特征(即图像中人物的年龄特征),然后根据年龄模型输出的年龄特征,计算得到年龄范围内每一个年龄对应的年龄权重。
s303、根据待识别图像的权重分布,确定出待识别图像在待测指标上的预测值。
步骤s303的执行过程可以是,将待测指标的取值范围内的每一个备选值,均和权重分布中对应的权重相乘,得到相应的乘积,最后将每一个备选值和对应权重的乘积相机,得到的结果就是待测指标。
以年龄识别问题为例:
在执行本实施例提供的方法时,可以先对一个用户拍摄其面部,得到待识别面部图像之后,将该待识别面部图像输入训练好的年龄模型,得到年龄特征x(即步骤s302所述的图像特征),然后可以按下述公式计算得到该用户的预测年龄s:
其中,若计算结果s不是整数,则可以按四舍五入的方法对s取整,得到该用户的预测年龄(即待测指标的预测值)。
结合本申请实施例提供的模型训练的方法,本申请实施例还提供一种模型训练的装置,请参考图4,该装置可以包括如下单元:
获取单元401,用于获取训练样本。
其中,训练样本包括样本图像,以及预先标注的样本图像的待测指标的真实值。
识别单元402,用于利用待训练的回归模型对样本图像进行识别,得到样本图像的图像特征,并根据图像特征确定样本图像的权重分布。
其中,权重分布用于指示样本图像的待测指标的预测值;权重分布包括待测指标的取值范围内每一个备选值的权重。
计算单元403,用于利用第一损失函数对权重分布执行损失计算,得到待训练的回归模型的第一损失值,并利用第二损失函数对权重分布执行损失计算,得到待训练的回归模型的第二损失值。
其中,第一损失函数为利用权重分布中与真实值对应的权重进行计算的熵损失函数;第二损失函数为利用权重分布包含的每一个权重和真实值进行计算的加权求和损失函数。
合并单元404,用于对第一损失值和第二损失值进行运算,得到回归模型的模型损失值。
更新单元405,用于若模型损失值不符合预设的模型收敛条件,根据模型损失值计算得到参数更新值;并利用参数更新值更新模型参数。
其中,模型参数指代待训练的回归模型的参数。
识别单元402,用于返回执行利用待训练的回归模型对样本图像进行识别,得到样本图像的图像特征步骤,直至模型损失值符合模型收敛条件为止。
可选的,合并单元404对第一损失值和第二损失值进行运算,得到回归模型的模型损失值时,具体用于:
将第一损失值与第二损失值相加,得到回归模型的模型损失值。
可选的,合并单元404对第一损失值和第二损失值进行运算,得到回归模型的模型损失值时,具体用于:
计算第一损失值和第一系数的乘积,得到修正后的第一损失值;
计算第二损失值和第二系数的乘积,得到修正后的第二损失值;
将修正后的第一损失值与修正后的第二损失值之和确定为待训练的回归模型的模型损失值。
可选的,计算单元403利用第一损失函数对权重分布执行损失计算,得到待训练的回归模型的第一损失值时,具体用于:
对权重分布中与真实值对应的权重进行对数运算,得到待训练的回归模型的第一损失值;
利用第二损失函数对权重分布执行损失计算,得到待训练的回归模型的第二损失值,包括:
将待测指标的取值范围内的每一个备选值,按照权重分布中对应的权重进行加权求和,得到样本图像的待测指标的预测值;
对预测值和真实值的偏差进行平方运算,得到待训练的回归模型的第二损失值。
本申请任一实施例提供的模型训练的装置,其具体工作原理可以参考本申请实施例提供的模型训练的方法中的相关步骤,此处不再详述。
本申请提供一种模型训练的装置,其中,识别单元402利用待训练的回归模型确定样本图像的权重分布;计算单元403根据权重分布计算得到第一损失值和第二损失值;第一损失值根据权重分布中真实值对应的权重计算得到;第二损失值利用真实值以及权重分布包含的所有权重计算得到;合并单元404对第一损失值和第二损失值运算得到模型损失值;若模型损失值不符合预设的模型收敛条件,更新单元405根据模型损失值更新待训练的回归模型的参数,并再次训练,直至符合模型收敛条件为止。本方案应用的模型损失值,既能够约束各个备选值加权求和的结果,也能控制取值范围内各个备选值的权重集中在样本图像的真实值附近,使得训练好的回归模型具有更高的准确度。
本申请实施例还提供一种回归分析的装置,用于利用前述模型训练的装置训练好的回归模型解决相应的回归分析问题,如年龄识别,车龄识别等。
请参考图5,上述回归分析的装置可以包括:
获取单元501,用于获取待识别图像。
识别单元502,用于利用完成训练的回归模型对待识别图像进行识别,得到待识别图像的图像特征,并根据图像特征确定待识别图像的权重分布。
其中,回归模型利用本申请任一实施例所提供的模型训练方法训练得到。
确定单元503,用于根据待识别图像的权重分布,确定出待识别图像在预先指定的待测指标上的预测值。
利用前述模型训练装置,可以训练得到具有较高准确度的回归模型,在此基础上,利用该回归模型可以更准确的检测出待识别图像在待测指标上的预测值,使得预测值更接近于待识别图像在待测指标上的真实值。
本申请实施例还提供一种计算机存储介质,用于存储计算机程序,计算机程序被执行时,具体用于实现本申请任一实施例提供的模型训练的方法,或者用于实现本申请任一实施例所提供的回归分析的方法。
本申请实施例还提供一种电子设备,请参考图6,该电子设备包括存储器601和处理器602。
其中,存储器601用于存储计算机程序;
处理器602用于执行计算机程序,计算机程序被执行时,具体用于实现本申请任一实施例所提供的模型训练的方法,或者用于实现本申请任一实施例所提供的回归分析的方法。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
需要注意,本发明中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。