CN110334735B - 多任务网络生成方法、装置、计算机设备和存储介质 - Google Patents
多任务网络生成方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN110334735B CN110334735B CN201910471744.4A CN201910471744A CN110334735B CN 110334735 B CN110334735 B CN 110334735B CN 201910471744 A CN201910471744 A CN 201910471744A CN 110334735 B CN110334735 B CN 110334735B
- Authority
- CN
- China
- Prior art keywords
- value
- matrix
- loss
- calculating
- loss value
- 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.)
- Active
Links
Images
Classifications
-
- 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
Abstract
本申请涉及一种多任务网络生成方法、装置、计算机设备和存储介质。所述方法包括:获取真值图像和根据多任务网络预测到的多个预测图像,根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值,计算第一损失值与第一预设损失值的差异度,当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值,当第二损失值小于预设网络损失值时,生成目标多任务网络。分阶段对多任务网络进行训练,当训练到第一损失值与预设第一损失值的差异度较小时,更换网络的损失函数,采用新的损失函数训练网络,增加网络的可靠性。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种多任务网络生成方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,计算机视觉技术也随之发展。机器学习和深度学习是计算机视觉技术的常见处理手段。目前较为常见的图像数据处理方法,都是通过已训练的网络模型进行数据处理,已训练的网络模型可以对图像进行快速的分割、识别和跟踪等等。采用已训练的网络模型进行图像数据处理,处理效率高。为了在同一个网络中实现多种功能时,需要训练出一个能够处理多任务的网络模型。在训练多任务网络时,多任务网络是否收敛,是根据各个任务的损失值确定的,而同一损失函数对不同任务的敏感度不一样,容易陷入局部最优,导致训练得到的多任务网络无法有效的执行对应的全部任务。
发明内容
为了解决上述技术问题,本申请提供了一种多任务网络生成方法、装置、计算机设备和存储介质。
第一方面,本申请提供了一种多任务网络生成方法,包括:
获取真值图像和根据多任务网络预测到的多个预测图像;
根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值;
计算第一损失值与第一预设损失值的差异度;
当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值;
当第二损失值小于预设网络损失值时,生成目标多任务网络。
第二方面,本申请提供了一种多任务网络生成装置,包括:
数据获取模块,用于获取真值图像和根据多任务网络预测到的多个预测图像;
第一损失值计算模块,用于根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值;
差异度计算模块,用于计算第一损失值与第一预设损失值的差异度;
第二损失值计算模块,用于当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值;
网络生成模块,用于当第二损失值小于预设网络损失值时,生成目标多任务网络。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取真值图像和根据多任务网络预测到的多个预测图像;
根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值;
计算第一损失值与第一预设损失值的差异度;
当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值;
当第二损失值小于预设网络损失值时,生成目标多任务网络。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取真值图像和根据多任务网络预测到的多个预测图像;
根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值;
计算第一损失值与第一预设损失值的差异度;
当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值;
当第二损失值小于预设网络损失值时,生成目标多任务网络。
上述多任务网络生成方法、装置、计算机设备和存储介质,所述方法包括:获取真值图像和根据多任务网络预测到的多个预测图像,根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值,计算第一损失值与第一预设损失值的差异度,当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值,当第二损失值小于预设网络损失值时,生成目标多任务网络。分阶段对多任务网络进行训练,当训练到第一损失值与预设第一损失值的差异度较小时,表示训练的多任务网络采用第一损失函数时已经处于收敛状态,陷入网络的局部最优,为了解决该问题,选择更换损失函数,采用新的损失函数网络进行训练,根据新的损失函数(即第二损失函数)的损失值更新多任务网络的参数,得到更新了参数的多任务网络,直到采用第二损失函数对应的损失值满足预设网络损失值时,才表示多任务网络收敛,得到目标多任务网络。采用第二损失函数对已经陷入局部最优的网络进行再次训练,跳出因为第一损失函数训练过程中陷入的局部最优,得到更好的多任务网络。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中多任务网络生成方法的应用环境图;
图2为一个实施例中多任务网络生成方法的流程示意图;
图3为一个实施例中多任务网络的示意图;
图4为一个实施例中多任务网络生成装置的结构框图;
图5为一个实施例中第二损失值计算模块的结构框图;
图6为一个实施例中第一子损失值计算单元的结构框图;
图7为一个实施例中第二子损失值计算单元的结构框图;
图8为一个实施例中计算机设备的内部结构图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为一个实施例中多任务网络生成方法的应用环境图。参照图1,该多任务网络生成方法应用多任务网络生成系统。该多任务网络生成系统包括终端110和服务器120。终端或服务器获取真值图像和根据多任务网络预测到的多个预测图像,根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值,计算第一损失值与第一预设损失值的差异度,当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值,当第二损失值小于预设网络损失值时,生成目标多任务网络。终端110和服务器120通过网络连接。终端110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
如图2所示,在一个实施例中,提供了一种多任务网络生成方法。本实施例主要以该方法应用于上述图1中的终端110(或服务器120)来举例说明。参照图2,该多任务网络生成方法具体包括如下步骤:
步骤S201,获取真值图像和根据多任务网络预测到的多个预测图像。
具体地,真值图像是指获取的真实图像,预测图像是指对真值图像进行预测得到的图像。多任务网络是指能够对真值图像进行多个不任务的预测的网络,不同的预测任务得到的预测图像不同。预测任务可以根据需求自定义设置,如包括热度图预测、分割预测和识别预测等等。多任务网络可以为深度学习网络,如深度卷积神经网络、循环神经网络等等。
步骤S202,根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值。
具体地,第一损失函数为常见的模型损失函数,如L1和L2损失函数。根据第一损失函数对多任务网络进行训练,得到多任务网络的第一损失值。以L2损失函数为例,设一个训练样本为htrue,训练样本对应的预测图像为hpred,其中训练样本htrue的维度信息为batch×w×h×k,batch表示训练样本的数量,w为训练样本的宽度,h为真值图像的高度,k为各个训练样本对应的预测图像的个数。则第一损失值Loss1如公式(1)所示,
在一个具体的实施例中,调用具体的函数计算第一损失值Loss1的具体过程包括:计算真值图像htrue和对应的预测热度图hpred的L2差异矩阵,即为Lht1-1,其中,Lht1-1=(htrue-hpred)2/2,Lht1-1的维度为batch×w×h×k,对误差矩阵Lht1-1的第1,2轴组成平面计算均值,得到每个真值图像的均值损失矩阵Lht1-2,其中Lht1-2=reduce_mean(Lht1-1,aixs(1,2)),Lht1-2的维度为batch×k,其中Lht1-2=reduce_mean(Lht1-1,aixs(1,2))表示对Lht1-1中的第零轴和第一轴组成的平面的每一个值求和取平均。对热度图的均值损失矩阵的第一轴计算均值,获得每个样本的均值损失Lht1-3,Lht1-3=reduce_mean(Lht1-2,aixs(1)),Lht1-3的维度为batch×1,计算均值损失Lht1-3的均值,得到整个网络的第一损失值Loss1,其中Loss1=reduce_mean(Lht1-3),loss1的维度为1。
步骤S203,计算第一损失值与第一预设损失值的差异度。
具体地,第一预设损失值为预先设置的损失值,该损失值可以根据需求自定义,如根据技术人员的经验值确定。如当第一预设损失值为0时,则第一损失值即为差异度,当所述预设损失值不为0时,则计算第一损失值与第一预设损失值的差异度,判断差异度是否小于预设差异度。其中预设差异度是用于判断多任务网络是否更换训练的损失函数的临界值,该临界值可以是根据技术人员经验值得到,也可以是根据模型训练的预设次训练数据得到。常见的差异度可以直接采用差值或比值表示,或对差值和比值的进一步处理得到,如计算差值或比值求对数,求平方或开方等等。
在一个实施例中,当差异度大于或等于预设差异度时,继续采用第一损失函数对多任务网络进行训练,再次计算第一损失值,计算第一损失值与第一预设损失值的差异度,直至差异度大于或等于预设差异度。
步骤S204,当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值。
具体地,当差异度小于预设差异度时,表示多任务网络需要更换损失函数,即将第一损失函数更换为第二损失函数,第一损失函数与第二损失函数为不同的损失函数。通过更换损失函数对多任务网络进行训练,得到的多任务网络更为准确。第二损失函数可以为技术人员自定义的损失函数,也可以为除了第一损失函数之外的其他的常见的损失函数。
在一个实施例中,获取多任务网络的第一训练次数,采用第一损失函数对多任务网络进行训练时,训练的次数为第一训练次数,当训练次数达到第一训练次数时,将网络的损失函数更换为第二损失函数,采用第二损失函数对多任务网络进行训练。
在一个实施例中,步骤S204,包括:
步骤S2041,根据第二损失函数中的第一子损失函数、真值图像和对应的多个预测图计算,得到第一子损失值。
步骤S2042,根据第二损失函数中的第二子损失函数、真值图像和对应的多个预测图计算,得到第二子损失值。
步骤S2043,计算第一子损失值和第二子损失值的加权值,将加权值作为第二损失值。
具体地,第二损失函数包括至少两个子损失函数,第一个子损失函数和第二个子损失函数为不同的损失函数。根据第一子损失函数,计算第一子损失值,第二子损失函数,计算第二子损失值。采用预设设置的加权系数对第一子损失值和第二子损失值进行加权,得到对应的加权值,将得到的加权值作为第二损失值。其中第一子损失值的加权系数和第二子损失值加权系数可以相同,也可以不相同。当第一子损失值和第二子损失值包含多个元素时,得到的加权值也包含多个元素,按照预设元素筛选规则从加权值中的多个元素中筛选部分元素,由筛选得到的元素计算第二损失值。
在一个实施例中,步骤S2041,包括:将真值图像中的非0元素的值变为1,得到蒙版矩阵,计算真值图像与预测图像的差值,得到第一差值矩阵,计算第一差值矩阵的第一绝对值矩阵,计算第一绝对值矩阵与蒙版矩阵的乘积,得到第一乘积矩阵,对第一乘积矩阵进行归一化,得到第一归一化矩阵,计算第一归一化矩阵的各个通道的矩阵中的矩阵元素的均值,将各个通道的各个通道矩阵对应的损失值,由各个通道对应的损失值组成第一子损失值。
具体地,真值图像中各个元素的值为0或非0。将真值图像中的非0元素的值变为1,得到蒙版矩阵。计算真值图像与预测图像的对应位置的差值,得到第一差值矩阵。计算第一差值矩阵的第一绝对值矩阵,得到真值图像与预测图像之间的差异值。通过蒙版矩阵,计算真值图像与预测图像中的非零元素的预测误差,对非零元素的预测误差进行归一化,得到第一损失值。
在一个实施例中,对第一乘积矩阵进行归一化,得到第一归一化矩阵,包括:计算蒙版矩阵中的全部元素的和,得到第一和值,计算第一乘积矩阵中的各个矩阵元素与第一和值的第一比值,由各个第一比值组成第一归一化矩阵。
具体地,对第一乘积矩阵进行归一化处理时,可以采用常见的矩阵归一化方法,如采用行归一化、列归一化或全矩阵的归一化等等。具体应用中可以选择具体的归一化方法。
在一个具体的实施中,如训练样本为htrue,训练样本对应的预测图像为hpred,hmask为蒙版矩阵。蒙版矩阵与htrue有相同的维度信息,其中训练样本htrue的维度信息为batch×w×h×k,表示batch×k个真值图像组成的矩阵,hpred表示batch×k个预测图像组成的矩阵,hmask表示batch×k个蒙版矩阵。batch表示训练样本的数量,w为训练样本的宽度,h为真值图像的高度,k为各个训练样本对应的预测图像的个数。则第一子损失值Loss21如公式(2)所示,
在一个具体的实施例中,调用具体的函数计算第一子损失值Loss21的具体过程包括:计算第一归一化矩阵Lht2-1,其中,Lht2-1=hmask×abs(htrue-hpred)/SUM(hmask),Lht2-1的维度为batch×w×h×k,Loss21=reduce_mean(Lht2-1,aixs(1,2)),Loss21的维度为batch×k,其中abs(htrue-hpred)表示计算矩阵htrue和hpred的差值的绝对值,得到第一绝对值矩阵。SUM(hmask)表示对矩阵hmask中的各个矩阵元素进行求和,reduce_mean(Lht2-1,aixs(1,2))表示计算矩阵Lht2-1中的w和h组成的矩阵的均值,得到各个真值图像的第一子损失值Loss21。
在一个实施例中,步骤S2042,包括:初始化一个与真值图像具有相同维度信息的全一矩阵,全一矩阵中的各个矩阵元素为1,获取蒙版矩阵,蒙版矩阵与步骤S2041中的蒙版矩阵为相同的矩阵。计算全一矩阵与蒙版矩阵的差值,得到第二差值矩阵,计算真值图像与预测图像的差值,得到第三差值矩阵,计算第三差值矩阵的绝对值,得到第三绝对值矩阵,计算第三绝对值矩阵与第二差值矩阵的乘积,得到第二乘积矩阵,对第二乘积矩阵进行归一化,得到第二归一化矩阵,计算第二归一化矩阵的各个通道的矩阵中的矩阵元素的均值,将各个通道的各个通道矩阵对应的损失值,由各个通道对应的损失值组成第二子损失值。
具体地,全一矩阵是指与真值图像的维度相同,且矩阵中的各个矩阵元素的值为1。蒙版矩阵与真值图像维度相同,将真值图像中的非0元素的值变换1。计算全一矩阵与蒙版矩阵的对应位置的差值,得到第二差值矩阵,第二差值矩阵中元素为1的位置,表示真值图像中元素为0的位置。计算真值图像与预测图像的差值的绝对值,得到第三绝对值矩阵,第三绝对值矩阵表征真值图像与预设图像之间的差异。计算第三绝对值矩阵与第二差值矩阵的乘积,得到第二乘积矩阵,第二乘积矩阵表征真值图像中元素为0的位置和预测图像之间的差异值。求取真值图像中元素为0的位置的差异值的均值,得到第二子损失值。
在一个实施例中,对第二乘积矩阵进行归一化,得到第二归一化矩阵,包括:计算第二差值矩阵的全部矩阵元素的和,得到第二和值,计算第二乘积矩阵中的各个矩阵元素与第二和值的第二比值,由各个第二比值组成第二归一化矩阵。
具体地,对第二乘积矩阵进行归一化处理时,采用常见的矩阵归一化方法,矩阵归一化包括按照行、列或整个矩阵进行归一化等等。具体的归一化方法根据需求自定义选取。
在一个具体的实施例中,如训练样本为htrue,训练样本对应的预测图像为hpred,hmask为蒙版矩阵,hone为全一矩阵。蒙版矩阵hmask和全一矩阵hone的维度信息,与htrue相同,其中训练样本htrue的维度信息为batch×w×h×k,表示batch×k个真值图像组成的矩阵,hpred表示batch×k个预测图像组成的矩阵,hmask表示batch×k个蒙版矩阵,hone表示batch×k个全一矩阵,全一矩阵是指矩阵的各个元素都为1。batch表示训练样本的数量,w为训练样本的宽度,h为真值图像的高度,k为各个训练样本对应的预测图像的个数。
则,第二子损失值Loss22如公式(3)所示,
在一个具体的实施例中,调用具体的函数计算第二子损失值Loss21的具体过程包括:Lht2-2=(hone-hmask)hmask×abs(htrue-hpred)/SUM(hone-hmask),Lht2-2的维度为batch×w×h×k,Loss22=reduce_mean(Lht2-1,aixs(1,2)),Loss22的维度为batch×k。其中abs(htrue-hpred)表示计算矩阵htrue和hpred的差值的绝对值,得到第二绝对值矩阵。SUM(hone-hmask)表示对矩阵(hone-hmask)中的各个矩阵元素进行求和,reduce_mean(Lht2-2,aixs(1,2))表示计算矩阵Lht2-2中的w和h组成的矩阵的矩阵元素的均值,得到各个真值图像的第一子损失值Loss21。
第二损失值Loss2如公式(4)所示:
在一个具体的实施例中,调用具体的函数计算第二损失值Loss2的具体过程包括:L2-1=w1×Loss21+w2×Loss22,w1为Loss21的加权系数,w2为Loss22的加权系数,L2的维度为batch×k,L2-2=top_k(L2-1,n)表示从L2-1中选取n个最大的值构成L2-2,L2-2的维度为batch×n,L2-3=reduce_mean(L2-2,aixs(1)),reduce_mean(L2-2,aixs(1))表示对矩阵L2-2中的列求均值,即求各个样本的损失值,L2-3的维度为batch×1,Loss2=reduce_mean(L2-3),reduce_mean(L2-3)表示矩阵L2-3对行求均值,得到第二损失值Loss2,其中Loss2的维度为1。
步骤S205,当第二损失值小于预设网络损失值时,生成目标多任务网络。
具体地,预设网络损失值为预先设置的用于判断多任务网络是否收敛的临界条件,当第二损失值小于预设网络损失值时,多任务网络收敛,得到目标多任务网络。当第二损失值大于或等于预设网络损失值时,表示多任务网络未收敛,根据第二损失值,更新多任务网络的网络参数,采用更新了网络参数的多任务网络继续多真值图像进行再次预测,根据第二损失函数、再次预测得到的预测图像和真值图像计算,再次得到第二损失值,再次对第二损失值进行判断,直至多任务网络模型收敛。
上述多任务网络生成方法,包括:获取真值图像和根据多任务网络预测到的多个预测图像,根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值,计算第一损失值与第一预设损失值的差异度,当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值,当第二损失值小于预设网络损失值时,生成目标多任务网络,表示训练的多任务网络采用第一损失函数时已经处于收敛状态,陷入网络的局部最优,为了解决该问题,选择更换损失函数,采用新的损失函数网络进行训练,根据新的损失函数(即第二损失函数)的损失值更新多任务网络的参数,得到更新了参数的多任务网络,直到采用第二损失函数对应的损失值满足预设网络损失值时,才表示多任务网络收敛,得到目标多任务网络。采用第二损失函数对已经陷入局部最优的网络进行再次训练,跳出因为第一损失函数训练过程中陷入的局部最优,得到更好的多任务网络。
在一个实施例中,上述多任务网络生成方法,包括:
步骤S301,根据第一损失函数、真值图像和对应的预测热度图计算,得到第一损失值中的第一热度图损失值。
步骤S302,计算第一热度图损失值,与第一预设损失值中的预设热度损失值的热度图差异度。
步骤S303,当热度图差异度小于预设差异度中的预设热度图差异度时,根据第二损失函数、真值图像和对应的预测热度图计算,得到第二损失值中的第二热度图损失值。
步骤S304,当第二热度图损失值,小于预设网络损失值中的预设热度图网络损失值时,生成目标多任务网络。
具体地,多任务网络中包括热度图预测任务,根据损失函数计算真值图像与对应的至少一个预测热度图的损失值,得到第一热度图损失值。计算第一热度图损失值与预设热度损失值的差异度,得到热度图差异度,其中差异度可以直接采用差值或比值等可以表示两个不通过数据之间的差异性的值表示。判断热度图差异度是否小于预设热度图差异度,当小于时,表示针对热度图的预测任务陷入局部最优,为了根据该问题,更换热度图的预测任务中的损失函数,即采用第二损失函数训练多任务网络。根据第二损失函数计算真值图像与预测热度图的损失值,得到第二热度图损失值。判断第二热度图损失值是否小于预设热度图网络损失值,当小于预设热度图网络损失值时,表示多任务网络收敛,得到目标多任务网络。其中预设热度图网络损失值是用于多任务网络是否收敛的临界值,该临界值可以是技术人员根据自身经验确定的,或是根据业务需求确定的。热度图预测任务中,由于热度图真值热度图非零的区域并较小,故根据第一损失函数计算得到的真值热度图和一张全零的预测热度图的损失值较小,容易陷入局部最优。根据需求设置的第二损失函数能够更好的表征真值图像与对应的预测热度图之间的差异,因此采用第二损失函数进行训练得到,提高了多任务网络的数据处理准确度,增加网络的可靠性。
在一个具体的实施例中,参照图3,图3为一个多任务网络的示意图,图中将样本输入多任务网络,根据多任务网络中对应的预测子网络生成对应的预测图像,如图中的预测图像1、预测图像2...预测图像n,对样本进行预处理得到各个类型的真值图像,如图3中的真值图像1、真值图像2...真值图像n,损失1表示真值图像1与预测图像1之间的差异度。根据预先定义的损失函数计算真值图像1与预测图像1的差异度,得到损失1,同理可以得到其他的损失值,根据损失1、损失2...损失n对应的加权系数,对各个损失进行加权求和得到总损失。根据总损失确定多任务网络的收敛状态,当总损失小于或等于预设损失值,或训练次数达到预定次数时,多任务网络收敛,得到目标多任务网络。
在一个具体实施例中,设多任务网络中包括热度图预测任务,则真值图像包括真值热度图像,预测图像中包括预测热度图,采用第一损失函数计算真值热度图像与对应的至少一个预测热度图的损失值,即为第一热度图损失值,其中第一损失函数为常见的模型损失函数,如L1和L2损失函数等等。判断第一热度图损失值与预设热度损失值的差异度,即为热度图差异度是否小于预设热度图差异度,当小于时,更换热度图预测任务中的损失函数,即将第一损失函数更换为第二损失函数,其中第二损失函数,包括第一子损失函数和第二子损失函数,第一子损失函数如公式(2)所示,第二子损失函数如公式(3)所示,第二损失函数如公式(4)所示。计算多任务网络中的第二热度图损失值,当第二热度图损失值,小于预设热度图网络损失值时,生成目标多任务网络。
上述多任务网络生成方法,采用了分阶段对热度图任务进行训练的方法,分阶段使用不同损失函数对热度图进行训练,满足不同训练时刻的不同需求。采用自定义的热度图损失函数,即使用热度图的蒙版对热度图区域进行划分,进而对不同区域赋予不同的权重进行计算,最后进行求和,采用自定义热度图损失,计算每个样本中前n个点的热度图损失进行训练。热度图预测任务中,由于热度图真值热度图非零的区域并较小,故根据第一损失函数,如L1损失函数和L2损失函数,计算得到的真值热度图和一张全零的预测热度图的损失值较小,容易陷入局部最优,为了解决该问题,采用针对热度图的第二损失函数替换第一损失函数,即采用第二损失函数对网络进行训练。第二损失函数中将分别对真值图像与对应的预测热度图的0值和非0值的误差进行统计,即对预测热度图进行分割,给各个分割区域赋予相应的权重,根据权重系数对0值和非0值的误差进行加权,得到第二损失值,且进行选取得到的前预设各值,增加了真值图像和对应的预测差异图像的差异度,跳出由于第一损失函数陷入的局部最优,得到更为可靠的多任务网络。
图2为一个实施例中多任务网络生成方法的流程示意图。应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种多任务网络生成装置200,包括:
数据获取模块201,用于获取真值图像和根据多任务网络预测到的多个预测图像。
第一损失值计算模块202,用于根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值。
差异度计算模块203,用于计算第一损失值与第一预设损失值的差异度。
第二损失值计算模块204,用于当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值。
网络生成模块205,用于当第二损失值小于预设网络损失值时,生成目标多任务网络。
在一个实施例中,如图5所示,第二损失值计算模块204,包括:
第一子损失值计算单元2041,用于根据第二损失函数中的第一子损失函数、真值图像和对应的多个预测图计算,得到第一子损失值。
第二子损失值计算单元2042,用于根据第二损失函数中的第二子损失函数、真值图像和对应的多个预测图计算,得到第二子损失值;
第二损失值计算单元2043,用于计算第一子损失值和第二子损失值的加权值,将加权值作为第二损失值。
在一个实施例中,如图6所示,第一子损失值计算单元2041,包括:
蒙版矩阵计算子单元20411,用于将真值图像中的非0元素的值变为1,得到蒙版矩阵。
第一差值计算子单元20412,用于计算真值图像与预测图像的差值,得到第一差值矩阵。
第一绝对值计算子单元20413,用于计算第一差值矩阵的第一绝对值矩阵。
第一乘积矩阵计算子单元20414,用于计算第一绝对值矩阵与蒙版矩阵的乘积,得到第一乘积矩阵。
第一归一化子单元20415,用于对第一乘积矩阵进行归一化,得到第一归一化矩阵。
第一子损失值计算子单元20416,用于计算第一归一化矩阵的各个通道的矩阵中的矩阵元素的均值,将各个通道的各个通道矩阵对应的损失值,由各个通道对应的损失值组成第一子损失值。
在一个实施例中,第一归一化子单元20415具体用于计算蒙版矩阵中的全部元素的和,得到第一和值,计算第一乘积矩阵中的各个矩阵元素与第一和值的第一比值,由各个第一比值组成第一归一化矩阵。
在一个实施例中,如图7所示,第二子损失值计算单元2042,包括:
全一矩阵初始子单元20421,用于初始化一个与真值图像具有相同维度信息的全一矩阵,全一矩阵中的各个矩阵元素为1。
蒙版矩阵生成子单元20422,用于将真值图像中的非0元素的值变为1,得到蒙版矩阵。
第二差值矩阵计算子单元20423,用于计算全一矩阵与蒙版矩阵的差值,得到第二差值矩阵,计算真值图像与预测图像的差值,得到第三差值矩阵。
第二绝对值矩阵计算子单元20424,用于计算第三差值矩阵的绝对值,得到第三绝对值矩阵。
第二乘积矩阵计算子单元20425,用于计算第三绝对值矩阵与第二差值矩阵的乘积,得到第二乘积矩阵。
第二归一化子单元20426,用于对第二乘积矩阵进行归一化,得到第二归一化矩阵。
第二子损失值计算子单元20427,用于计算第二归一化矩阵的各个通道的矩阵中的矩阵元素的均值,将各个通道的各个通道矩阵对应的损失值,由各个通道对应的损失值组成第二子损失值。
在一个实施例中,第二归一化子单元20426具体用于计算第二差值矩阵的全部矩阵元素的和,得到第二和值,计算第二乘积矩阵中的各个矩阵元素与第二和值的第二比值,由各个第二比值组成第二归一化矩阵。
在一个实施例中,第二损失值计算单元4023具体用于计算第一子损失值中的各个元素与第二子损失值中对应的元素的加权和,得到包含多个元素的加权值,对加权值的元素由大到小进行排序,选取排序后的位于预设位置之前的元素,作为目标元素,由目标元素组成的矩阵作为目标损失矩阵,计算目标损失矩阵的中全部元素的均值,将目标损失矩阵的均值作为第二损失值。
在一个实施例中,多任务网络生成装置,包括:
第一损失值计算模块202具体用于根据第一损失函数、真值图像和对应的预测热度图计算,得到第一损失值中的第一热度图损失值。
差异度计算模块203具体用于计算第一热度图损失值,与第一预设损失值中的预设热度损失值的热度图差异度。
第二损失值计算模块204具体用于当热度图差异度,小于预设差异度中的预设热度图差异度时,根据第二损失函数、真值图像和对应的预测热度图计算,得到第二损失值中的第二热度图损失值。
网络生成模块205具体用于当第二热度图损失值,小于预设网络损失值中的预设热度图网络损失值时,生成目标多任务网络。
图8示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的终端110(或服务器120)。如图8所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现多任务网络生成方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行多任务网络生成方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的多任务网络生成装置可以实现为一种计算机程序的形式,计算机程序可在如图8所示的计算机设备上运行。计算机设备的存储器中可存储组成该多任务网络生成装置的各个程序模块,比如,图4所示的数据获取模块201、第一损失值计算模块202、差异度计算模块203、第二损失值计算模块204和网络生成模块205。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的多任务网络生成方法中的步骤。
例如,图8所示的计算机设备可以通过如图4所示的多任务网络生成装置中的数据获取模块201执行获取真值图像和根据多任务网络预测到的多个预测图像。计算机设备可以通过第一损失值计算模块202执行根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值。计算机设备可以通过差异度计算模块203执行计算第一损失值与第一预设损失值的差异度。计算机设备可以通过第二损失值计算模块204执行当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值。计算机设备可以通过网络生成模块205执行当第二损失值小于预设网络损失值时,生成目标多任务网络。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:获取真值图像和根据多任务网络预测到的多个预测图像,根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值,计算第一损失值与第一预设损失值的差异度,当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值,当第二损失值小于预设网络损失值时,生成目标多任务网络。
在一个实施例中,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值,包括:根据第二损失函数中的第一子损失函数、真值图像和对应的多个预测图计算,得到第一子损失值,根据第二损失函数中的第二子损失函数、真值图像和对应的多个预测图计算,得到第二子损失值,计算第一子损失值和第二子损失值的加权值,将加权值作为第二损失值。
在一个实施例中,根据第二损失函数中的第一子损失函数、真值图像和对应的多个预测图计算,得到第一子损失值,包括:将真值图像中的非0元素的值变为1,得到蒙版矩阵,计算真值图像与预测图像的差值,得到第一差值矩阵,计算第一差值矩阵的第一绝对值矩阵,计算第一绝对值矩阵与蒙版矩阵的乘积,得到第一乘积矩阵,对第一乘积矩阵进行归一化,得到第一归一化矩阵,计算第一归一化矩阵的各个通道的矩阵中的矩阵元素的均值,将各个通道的各个通道矩阵对应的损失值,由各个通道对应的损失值组成第一子损失值。
在一个实施例中,对第一乘积矩阵进行归一化,得到第一归一化矩阵,包括:计算蒙版矩阵中的全部元素的和,得到第一和值,计算第一乘积矩阵中的各个矩阵元素与第一和值的第一比值,由各个第一比值组成第一归一化矩阵。
在一个实施例中,根据第二损失函数中的第二子损失函数、真值图像和对应的多个预测图计算,得到第二子损失值,包括:初始化一个与真值图像具有相同维度信息的全一矩阵,全一矩阵中的各个矩阵元素为1,将真值图像中的非0元素的值变为1,得到蒙版矩阵,计算全一矩阵与蒙版矩阵的差值,得到第二差值矩阵,计算真值图像与预测图像的差值,得到第三差值矩阵,计算第三差值矩阵的绝对值,得到第三绝对值矩阵,计算第三绝对值矩阵与第二差值矩阵的乘积,得到第二乘积矩阵,对第二乘积矩阵进行归一化,得到第二归一化矩阵,计算第二归一化矩阵的各个通道的矩阵中的矩阵元素的均值,将各个通道的各个通道矩阵对应的损失值,由各个通道对应的损失值组成第二子损失值。
在一个实施例中,对第二乘积矩阵进行归一化,得到第二归一化矩阵,包括:计算第二差值矩阵的全部矩阵元素的和,得到第二和值,计算第二乘积矩阵中的各个矩阵元素与第二和值的第二比值,由各个第二比值组成第二归一化矩阵。
在一个实施例中,第一子损失值和第二损失值包括多个元素,计算第一子损失值和第二子损失值的加权值,将加权值作为第二损失值,包括:计算第一子损失值中的各个元素与第二子损失值中对应的元素的加权和,得到包含多个元素的加权值,对加权值的元素由大到小进行排序,选取排序后的位于预设位置之前的元素,作为目标元素,由目标元素组成的矩阵作为目标损失矩阵,计算目标损失矩阵的中全部元素的均值,将目标损失矩阵的均值作为第二损失值。
在一个实施例中,多个预测图像中包括预测热度图;根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值,包括:根据第一损失函数、真值图像和对应的预测热度图计算,得到第一损失值中的第一热度图损失值;计算第一损失值与第一预设损失值的差异度,包括:计算第一热度图损失值与第一预设损失值中的预设热度损失值的热度图差异度;当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值,包括:当热度图差异度小于预设差异度中的预设热度图差异度时,根据第二损失函数、真值图像和对应的预测热度图计算,得到第二损失值中的第二热度图损失值,当第二损失值小于预设网络损失值时,生成目标多任务网络,包括:当第二热度图损失值小于预设网络损失值中的预设热度图网络损失值时,生成目标多任务网络。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取真值图像和根据多任务网络预测到的多个预测图像,根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值,计算第一损失值与第一预设损失值的差异度,当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值,当第二损失值小于预设网络损失值时,生成目标多任务网络。
在一个实施例中,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值,包括:根据第二损失函数中的第一子损失函数、真值图像和对应的多个预测图计算,得到第一子损失值,根据第二损失函数中的第二子损失函数、真值图像和对应的多个预测图计算,得到第二子损失值,计算第一子损失值和第二子损失值的加权值,将加权值作为第二损失值。
在一个实施例中,根据第二损失函数中的第一子损失函数、真值图像和对应的多个预测图计算,得到第一子损失值,包括:将真值图像中的非0元素的值变为1,得到蒙版矩阵,计算真值图像与预测图像的差值,得到第一差值矩阵,计算第一差值矩阵的第一绝对值矩阵,计算第一绝对值矩阵与蒙版矩阵的乘积,得到第一乘积矩阵,对第一乘积矩阵进行归一化,得到第一归一化矩阵,计算第一归一化矩阵的各个通道的矩阵中的矩阵元素的均值,将各个通道的各个通道矩阵对应的损失值,由各个通道对应的损失值组成第一子损失值。
在一个实施例中,对第一乘积矩阵进行归一化,得到第一归一化矩阵,包括:计算蒙版矩阵中的全部元素的和,得到第一和值,计算第一乘积矩阵中的各个矩阵元素与第一和值的第一比值,由各个第一比值组成第一归一化矩阵。
在一个实施例中,根据第二损失函数中的第二子损失函数、真值图像和对应的多个预测图计算,得到第二子损失值,包括:初始化一个与真值图像具有相同维度信息的全一矩阵,全一矩阵中的各个矩阵元素为1,将真值图像中的非0元素的值变为1,得到蒙版矩阵,计算全一矩阵与蒙版矩阵的差值,得到第二差值矩阵,计算真值图像与预测图像的差值,得到第三差值矩阵,计算第三差值矩阵的绝对值,得到第三绝对值矩阵,计算第三绝对值矩阵与第二差值矩阵的乘积,得到第二乘积矩阵,对第二乘积矩阵进行归一化,得到第二归一化矩阵,计算第二归一化矩阵的各个通道的矩阵中的矩阵元素的均值,将各个通道的各个通道矩阵对应的损失值,由各个通道对应的损失值组成第二子损失值。
在一个实施例中,对第二乘积矩阵进行归一化,得到第二归一化矩阵,包括:计算第二差值矩阵的全部矩阵元素的和,得到第二和值,计算第二乘积矩阵中的各个矩阵元素与第二和值的第二比值,由各个第二比值组成第二归一化矩阵。
在一个实施例中,第一子损失值和第二损失值包括多个元素,计算第一子损失值和第二子损失值的加权值,将加权值作为第二损失值,包括:计算第一子损失值中的各个元素与第二子损失值中对应的元素的加权和,得到包含多个元素的加权值,对加权值的元素由大到小进行排序,选取排序后的位于预设位置之前的元素,作为目标元素,由目标元素组成的矩阵作为目标损失矩阵,计算目标损失矩阵的中全部元素的均值,将目标损失矩阵的均值作为第二损失值。
在一个实施例中,多个预测图像中包括预测热度图;根据第一损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第一损失值,包括:根据第一损失函数、真值图像和对应的预测热度图计算,得到第一损失值中的第一热度图损失值;计算第一损失值与第一预设损失值的差异度,包括:计算第一热度图损失值与第一预设损失值中的预设热度损失值的热度图差异度;当差异度小于预设差异度时,根据第二损失函数、真值图像和对应的多个预测图像计算,得到多任务网络的第二损失值,包括:当热度图差异度小于预设差异度中的预设热度图差异度时,根据第二损失函数、真值图像和对应的预测热度图计算,得到第二损失值中的第二热度图损失值,当第二损失值小于预设网络损失值时,生成目标多任务网络,包括:当第二热度图损失值小于预设网络损失值中的预设热度图网络损失值时,生成目标多任务网络。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (9)
1.一种多任务网络生成方法,其特征在于,所述方法包括:
获取真值图像和根据多任务网络预测到的多个预测图像;
根据第一损失函数、所述真值图像和对应的多个预测图像计算,得到所述多任务网络的第一损失值;
计算所述第一损失值与第一预设损失值的差异度;
当所述差异度小于预设差异度时,根据第二损失函数、所述真值图像和对应的多个预测图像计算,得到所述多任务网络的第二损失值,第一损失函数与第二损失函数为不同的损失函数;
当所述第二损失值小于预设网络损失值时,生成目标多任务网络;
其中,所述根据第二损失函数、所述真值图像和对应的多个预测图像计算,得到所述多任务网络的第二损失值,包括:根据所述第二损失函数中的第一子损失函数、所述真值图像和对应的多个预测图计算,得到第一子损失值;根据所述第二损失函数中的第二子损失函数、所述真值图像和对应的多个预测图计算,得到第二子损失值;计算所述第一子损失值和所述第二子损失值的加权值,将所述加权值作为所述第二损失值;
所述根据所述第二损失函数中的第二子损失函数、所述真值图像和对应的多个预测图计算,得到第二子损失值,包括:
初始化一个与所述真值图像具有相同维度信息的全一矩阵,所述全一矩阵中的各个矩阵元素为1;将所述真值图像中的非0元素的值变为1,得到蒙版矩阵;计算所述全一矩阵与所述蒙版矩阵的差值,得到第二差值矩阵;计算所述真值图像与所述预测图像的差值,得到第三差值矩阵;计算所述第三差值矩阵的绝对值,得到第三绝对值矩阵;计算所述第三绝对值矩阵与所述第二差值矩阵的乘积,得到第二乘积矩阵;对所述第二乘积矩阵进行归一化,得到第二归一化矩阵;计算所述第二归一化矩阵的各个通道的矩阵中的矩阵元素的均值,将各个通道矩阵对应的均值作为各个通道的损失值,由各个通道对应的损失值组成所述第二子损失值。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第二损失函数中的第一子损失函数、所述真值图像和对应的多个预测图计算,得到第一子损失值,包括:
将所述真值图像中的非0元素的值变为1,得到蒙版矩阵;
计算所述真值图像与各个所述预测图像的差值,得到第一差值矩阵;
计算所述第一差值矩阵的第一绝对值矩阵;
计算所述第一绝对值矩阵与所述蒙版矩阵的乘积,得到第一乘积矩阵;
对所述第一乘积矩阵进行归一化,得到第一归一化矩阵;
计算所述第一归一化矩阵的各个通道的矩阵中的矩阵元素的均值,将各个通道矩阵对应的均值作为各个通道的损失值,由各个通道对应的损失值组成所述第一子损失值。
3.根据权利要求2所述的方法,其特征在于,所述对所述第一乘积矩阵进行归一化,得到第一归一化矩阵,包括:
计算所述蒙版矩阵中的全部元素的和,得到第一和值;
计算第一乘积矩阵中的各个矩阵元素与所述第一和值的第一比值,由各个所述第一比值组成所述第一归一化矩阵。
4.根据权利要求1所述的方法,其特征在于,所述对所述第二乘积矩阵进行归一化,得到第二归一化矩阵,包括:
计算所述第二差值矩阵的全部矩阵元素的和,得到第二和值;
计算第二乘积矩阵中的各个矩阵元素与所述第二和值的第二比值,由各个所述第二比值组成所述第二归一化矩阵。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述第一子损失值和所述第二子损失值包括多个元素,所述计算第一子损失值和第二子损失值的加权值,将所述加权值作为所述第二损失值,包括:
计算所述第一子损失值中的各个元素与所述第二子损失值中对应的元素的加权和,得到包含多个元素的所述加权值;
对所述加权值的元素由大到小进行排序,选取排序后的位于预设位置之前的元素,作为目标元素,由所述目标元素组成的矩阵作为目标损失矩阵;
计算所述目标损失矩阵的中全部元素的均值,将所述目标损失矩阵的均值作为所述第二损失值。
6.根据权利要求1所述的方法,其特征在于,所述多个预测图像中包括预测热度图;
所述根据第一损失函数、所述真值图像和对应的多个预测图像计算,得到所述多任务网络的第一损失值,包括:根据第一损失函数、所述真值图像和对应的预测热度图计算,得到所述第一损失值中的第一热度图损失值;
所述计算所述第一损失值与第一预设损失值的差异度,包括:计算所述第一热度图损失值与所述第一预设损失值中的预设热度损失值的热度图差异度;
所述当所述差异度小于预设差异度时,根据第二损失函数、所述真值图像和对应的多个预测图像计算,得到所述多任务网络的第二损失值,包括:当所述热度图差异度小于所述预设差异度中的预设热度图差异度时,根据所述第二损失函数、所述真值图像和对应的预测热度图计算,得到所述第二损失值中的第二热度图损失值;
所述当所述第二损失值小于预设网络损失值时,生成目标多任务网络,包括:当所述第二热度图损失值小于所述预设网络损失值中的预设热度图网络损失值时,生成目标多任务网络。
7.一种多任务网络生成装置,其特征在于,所述装置包括:
数据获取模块,用于获取真值图像和根据多任务网络预测到的多个预测图像;
第一损失值计算模块,用于根据第一损失函数、所述真值图像和对应的多个预测图像计算,得到所述多任务网络的第一损失值;
差异度计算模块,用于计算所述第一损失值与第一预设损失值的差异度;
第二损失值计算模块,用于当所述差异度小于预设差异度时,根据第二损失函数、所述真值图像和对应的多个预测图像计算,得到所述多任务网络的第二损失值;
网络生成模块,用于当所述第二损失值小于预设网络损失值时,生成目标多任务网络;
其中,所述根据第二损失函数、所述真值图像和对应的多个预测图像计算,得到所述多任务网络的第二损失值,包括:根据所述第二损失函数中的第一子损失函数、所述真值图像和对应的多个预测图计算,得到第一子损失值;根据所述第二损失函数中的第二子损失函数、所述真值图像和对应的多个预测图计算,得到第二子损失值;计算所述第一子损失值和所述第二子损失值的加权值,将所述加权值作为所述第二损失值;
所述根据所述第二损失函数中的第二子损失函数、所述真值图像和对应的多个预测图计算,得到第二子损失值,包括:
初始化一个与所述真值图像具有相同维度信息的全一矩阵,所述全一矩阵中的各个矩阵元素为1;将所述真值图像中的非0元素的值变为1,得到蒙版矩阵;计算所述全一矩阵与所述蒙版矩阵的差值,得到第二差值矩阵;计算所述真值图像与所述预测图像的差值,得到第三差值矩阵;计算所述第三差值矩阵的绝对值,得到第三绝对值矩阵;计算所述第三绝对值矩阵与所述第二差值矩阵的乘积,得到第二乘积矩阵;对所述第二乘积矩阵进行归一化,得到第二归一化矩阵;计算所述第二归一化矩阵的各个通道的矩阵中的矩阵元素的均值,将各个通道矩阵对应的均值作为各个通道的损失值,由各个通道对应的损失值组成所述第二子损失值。
8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910471744.4A CN110334735B (zh) | 2019-05-31 | 2019-05-31 | 多任务网络生成方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910471744.4A CN110334735B (zh) | 2019-05-31 | 2019-05-31 | 多任务网络生成方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110334735A CN110334735A (zh) | 2019-10-15 |
CN110334735B true CN110334735B (zh) | 2022-07-08 |
Family
ID=68140686
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910471744.4A Active CN110334735B (zh) | 2019-05-31 | 2019-05-31 | 多任务网络生成方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110334735B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110909663B (zh) * | 2019-11-20 | 2022-10-25 | 北京奇艺世纪科技有限公司 | 一种人体关键点识别方法、装置及电子设备 |
CN110969100B (zh) * | 2019-11-20 | 2022-10-25 | 北京奇艺世纪科技有限公司 | 一种人体关键点识别方法、装置及电子设备 |
CN111124952B (zh) * | 2019-12-04 | 2022-09-30 | 北京奇艺世纪科技有限公司 | 一种数据管理方法、装置、电子设备及可读存储介质 |
CN111046973A (zh) * | 2019-12-26 | 2020-04-21 | 北京市商汤科技开发有限公司 | 多任务检测方法及装置、存储介质 |
CN113139893B (zh) * | 2020-01-20 | 2023-10-03 | 北京达佳互联信息技术有限公司 | 图像翻译模型的构建方法和装置、图像翻译方法和装置 |
CN111881804B (zh) * | 2020-07-22 | 2023-07-28 | 汇纳科技股份有限公司 | 基于联合训练的姿态估计模型训练方法、系统、介质及终端 |
CN112132206A (zh) * | 2020-09-18 | 2020-12-25 | 青岛商汤科技有限公司 | 图像识别方法及相关模型的训练方法及相关装置、设备 |
CN113435528B (zh) * | 2021-07-06 | 2024-02-02 | 北京有竹居网络技术有限公司 | 对象分类的方法、装置、可读介质和电子设备 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106529402A (zh) * | 2016-09-27 | 2017-03-22 | 中国科学院自动化研究所 | 基于多任务学习的卷积神经网络的人脸属性分析方法 |
CN106599869A (zh) * | 2016-12-22 | 2017-04-26 | 安徽大学 | 一种基于多任务卷积神经网络的车辆属性识别方法 |
CN107633242A (zh) * | 2017-10-23 | 2018-01-26 | 广州视源电子科技股份有限公司 | 网络模型的训练方法、装置、设备和存储介质 |
CN108304859A (zh) * | 2017-12-29 | 2018-07-20 | 达闼科技(北京)有限公司 | 图像识别方法及云端系统 |
CN108335313A (zh) * | 2018-02-26 | 2018-07-27 | 阿博茨德(北京)科技有限公司 | 图像分割方法及装置 |
CN108875587A (zh) * | 2018-05-24 | 2018-11-23 | 北京飞搜科技有限公司 | 目标分布检测方法及设备 |
CN109086660A (zh) * | 2018-06-14 | 2018-12-25 | 深圳市博威创盛科技有限公司 | 多任务学习深度网络的训练方法、设备及存储介质 |
CN109472757A (zh) * | 2018-11-15 | 2019-03-15 | 央视国际网络无锡有限公司 | 一种基于生成对抗神经网络的图像去台标方法 |
CN109753946A (zh) * | 2019-01-23 | 2019-05-14 | 哈尔滨工业大学 | 一种基于身体关键点监督的真实场景行人小目标检测网络及检测方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11645508B2 (en) * | 2017-06-09 | 2023-05-09 | Korea Advanced Institute Of Science And Technology | Electronic apparatus and method for generating trained model |
-
2019
- 2019-05-31 CN CN201910471744.4A patent/CN110334735B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106529402A (zh) * | 2016-09-27 | 2017-03-22 | 中国科学院自动化研究所 | 基于多任务学习的卷积神经网络的人脸属性分析方法 |
CN106599869A (zh) * | 2016-12-22 | 2017-04-26 | 安徽大学 | 一种基于多任务卷积神经网络的车辆属性识别方法 |
CN107633242A (zh) * | 2017-10-23 | 2018-01-26 | 广州视源电子科技股份有限公司 | 网络模型的训练方法、装置、设备和存储介质 |
CN108304859A (zh) * | 2017-12-29 | 2018-07-20 | 达闼科技(北京)有限公司 | 图像识别方法及云端系统 |
CN108335313A (zh) * | 2018-02-26 | 2018-07-27 | 阿博茨德(北京)科技有限公司 | 图像分割方法及装置 |
CN108875587A (zh) * | 2018-05-24 | 2018-11-23 | 北京飞搜科技有限公司 | 目标分布检测方法及设备 |
CN109086660A (zh) * | 2018-06-14 | 2018-12-25 | 深圳市博威创盛科技有限公司 | 多任务学习深度网络的训练方法、设备及存储介质 |
CN109472757A (zh) * | 2018-11-15 | 2019-03-15 | 央视国际网络无锡有限公司 | 一种基于生成对抗神经网络的图像去台标方法 |
CN109753946A (zh) * | 2019-01-23 | 2019-05-14 | 哈尔滨工业大学 | 一种基于身体关键点监督的真实场景行人小目标检测网络及检测方法 |
Non-Patent Citations (3)
Title |
---|
Instance-aware Semantic Segmentation via Multi-task Network Cascades;Jifeng Dai等;《2016 IEEE Conference on Computer Vision and Pattern Recognition》;20161231;第3150-3158页 * |
基于多任务学习的多姿态人脸重建与识别;欧阳宁等;《计算机应用》;20171231;第37卷(第3期);第896-900页 * |
基于多模态深度神经网络的深度恢复;许龑;《中国优秀硕士学位论文全文数据库 信息科技辑》;20190115(第1期);第I138-3038页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110334735A (zh) | 2019-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110334735B (zh) | 多任务网络生成方法、装置、计算机设备和存储介质 | |
CN109241903B (zh) | 样本数据清洗方法、装置、计算机设备及存储介质 | |
CN110598845B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN111881023B (zh) | 一种基于多模型对比的软件老化预测方法及装置 | |
CN111105017A (zh) | 神经网络量化方法、装置及电子设备 | |
CN110647974A (zh) | 深度神经网络中的网络层运算方法及装置 | |
CN113128478A (zh) | 模型训练方法、行人分析方法、装置、设备及存储介质 | |
CN115049176A (zh) | 材料性能评估方法、装置及计算机设备 | |
CN112287965A (zh) | 图像质量检测模型训练方法、装置和计算机设备 | |
CN114359563A (zh) | 模型训练方法、装置、计算机设备和存储介质 | |
CN111709415A (zh) | 目标检测方法、装置、计算机设备和存储介质 | |
CN111783935A (zh) | 卷积神经网络构建方法、装置、设备及介质 | |
CN111160394A (zh) | 分类网络的训练方法、装置、计算机设备和存储介质 | |
CN113449840A (zh) | 神经网络训练方法及装置、图像分类的方法及装置 | |
CN112966754B (zh) | 样本筛选方法、样本筛选装置及终端设备 | |
CN111565065B (zh) | 一种无人机基站部署方法、装置及电子设备 | |
CN111898573A (zh) | 图像预测方法、计算机设备和存储介质 | |
CN114549849A (zh) | 图像识别方法、装置、计算机设备和存储介质 | |
CN115346125B (zh) | 一种基于深度学习的目标检测方法 | |
US20190236353A1 (en) | Information processing method and information processing system | |
CN113221662B (zh) | 人脸识别模型的训练方法及装置、存储介质、终端 | |
CN109583512B (zh) | 图像处理方法、装置及系统 | |
CN109800873B (zh) | 图像处理方法及装置 | |
CN110929163A (zh) | 课程推荐方法、装置、计算机设备及存储介质 | |
CN112581250A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |