模型训练方法、模型训练装置、存储介质和电子设备与流程

文档序号:23384853发布日期:2020-12-22 13:49阅读:103来源:国知局
模型训练方法、模型训练装置、存储介质和电子设备与流程

本发明涉及数据处理技术领域,具体涉及一种模型训练方法、模型训练装置、存储介质和电子设备。



背景技术:

在传统视觉领域,物体检测属于非常热门的研究方向。随着科学技术的不断发展,人们可以通过机器学习的方式对rgb像素矩阵(也即,图像采集装置采集到的彩色图像)中的目标物体进行较为准确的物体检测。但rgb像素矩阵容易受到采集环境的影响,例如外界环境的光线强度、能见度等,因此在对不同环境下得到的rgb像素矩阵进行物体检测时,会导致机器学习的方式存在一定的局限性,对于一些环境下得到的rgb像素矩阵的检测准确性较高,而对于另一些环境下得到的rgb像素矩阵的检测准确性不高。



技术实现要素:

有鉴于此,本发明实施例的目的在于提供一种模型训练方法、模型训练装置、存储介质和电子设备,用于提升模型在预定环境下物体检测的准确性。

根据本发明实施例的第一方面,提供一种模型训练方法,所述方法包括:

获取源域对应的待训练模型,所述待训练模型用于进行物体检测;

获取所述源域对应的第一图像集合以及目标域对应的第二图像集合,所述第一图像集合包括多个第一图像,所述第一图像包括第一对象,且各所述第一对象属于同一类别,所述第二图像集合包括多个第二图像,所述第二图像包括第二对象,且各所述第二对象属于同一类别;

对于各所述第一图像,分别以各所述第一图像为所述待训练模型的输入,以所述第一图像对应的标识信息为训练目标对所述待训练模型进行训练,直至所述待训练模型的检测损失函数收敛,所述标识信息包括所述第一图像内的至少一个对象识别框以及所述对象识别框对应的类别标识;

对于各所述第二图像,分别以各所述第二图像为所述待训练模型的输入,获取所述第二图像对应的第一特征和第二特征,第一特征以及所述第二特征为所述待训练模型的不同层的输出,所述第一特征以及所述第二特征用于使得第一注意力判别模型以及第二注意力判别模型的注意力损失函数收敛,并使得第一特征判别模型、第二特征判别模型以及第三特征判别模型的特征损失函数收敛;

响应于所述特征损失函数、所述注意力损失函数以及所述检测损失函数均收敛,将训练后的所述待训练模型确定为所述目标域对应的目标模型。

根据本发明实施例的第二方面,提供一种模型训练装置,所述装置包括:

模型获取单元,用于获取源域对应的待训练模型,所述待训练模型用于进行物体检测;

图像获取单元,用于获取所述源域对应的第一图像集合以及目标域对应的第二图像集合,所述第一图像集合包括多个第一图像,所述第一图像包括第一对象,且各所述第一对象属于同一类别,所述第二图像集合包括多个第二图像,所述第二图像包括第二对象,且各所述第二对象属于同一类别;

第一模型训练单元,用于对于各所述第一图像,分别以各所述第一图像为所述待训练模型的输入,以所述第一图像对应的标识信息为训练目标对所述待训练模型进行训练,直至所述待训练模型的检测损失函数收敛,所述标识信息包括所述第一图像内的至少一个对象识别框以及所述对象识别框对应的类别标识;

第二模型训练单元,用于对于各所述第二图像,分别以各所述第二图像为所述待训练模型的输入,获取所述第二图像对应的第一特征和第二特征,第一特征以及所述第二特征为所述待训练模型的不同层的输出,所述第一特征以及所述第二特征用于使得第一注意力判别模型以及第二注意力判别模型的注意力损失函数收敛,并使得第一特征判别模型、第二特征判别模型以及第三特征判别模型的特征损失函数收敛;

模型确定单元,用于响应于所述特征损失函数、所述注意力损失函数以及所述检测损失函数均收敛,将训练后的所述待训练模型确定为所述目标域对应的目标模型。

根据本发明实施例的第三方面,提供一种计算机可读存储介质,其上存储计算机程序指令,其中,所述计算机程序指令在被处理器执行时实现如第一方面所述的方法。

根据本发明实施例的第四方面,提供一种电子设备,包括存储器和处理器,其中,所述存储器用于存储一条或多条计算机程序指令,其中,所述一条或多条计算机程序指令被所述处理器执行以实现如第一方面所述的方法。

本发明实施例在获取源域的待训练模型、第一图像集合和目标域的第二图像集合后,以各第一图像为输入,并以各第一图像对应的对象识别框和对象识别框的类别为训练目标对待训练模型进行训练,同时以各第二图像为输入,获取第二图像在待训练模型的不同层的输出,以对注意力判别模型和特征判别模型进行训练,从而响应于待训练模型的检测损失函数、注意力判别模型的注意力损失函数和特征判别模型的特征损失函数收敛,将训练后的待训练模型确定为目标模型。本发明实施例无需对目标域图像标记就可以对待训练模型进行训练,提升了模型对于目标域的物体检测能力,并降低了标记成本。

附图说明

通过以下参照附图对本发明实施例的描述,本发明的上述以及其它目的、特征和优点将更为清楚,在附图中:

图1是本发明第一实施例的模型训练方法的流程图;

图2是本发明第一实施例的一种可选的方式中根据各第一图像训练待训练模型的流程图;

图3是本发明第一实施例的第一注意力判别模型的结构示意图;

图4是本发明第一实施例的方法计算第一通道乘积向量的示意图;

图5是本发明第一实施例的一种可选的实现方式中获取第一特征以及第二特征的流程图;

图6是本发明第一实施例的待训练模型的数据流向示意图;

图7是本发明第二实施例的模型训练装置的示意图;

图8是本发明第三实施例的电子设备的示意图。

具体实施方式

以下基于实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。为了避免混淆本发明的实质,公知的方法、过程、流程、元件和电路并没有详细叙述。

此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。

除非上下文明确要求,否则在说明书的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。

在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。

以交通行业为例,交通行业从业者可以通过图像采集装置(例如,设置在道路两侧的摄像头、相机等)采集道路周围的图像,采集得到的图像也即rgb(redgreenblue,红、绿、蓝三色)像素矩阵。rgb像素矩阵容易受到采集环境的影响,例如外界环境的光线强度、能见度等,因此在对不同环境下得到的rgb像素矩阵进行物体检测时,会导致机器学习的方式存在一定的局限性,对于一些环境下得到的rgb像素矩阵的检测准确性较高,而对于另一些环境下得到的rgb像素矩阵的检测准确性不高。例如,在基于晴天环境下检测准确性较高的模型对雾天环境下采集得到的rgb像素矩阵进行物体检测时,通常检测准确性不高。

图1是本发明第一实施例的模型训练方法的流程图。如图1所示,本实施例的方法包括如下步骤:

步骤s100,获取源域对应的待训练模型。

在本实施例中,待训练模型为用于对源域的图像进行物体检测的模型,可以为cnn(convolutionalneuralnetworks,卷积神经网络),例如fastrcnn(fastregion-basedconvolutionneuralnetworks,快速的基于区域的卷积神经网络)、yolo(youonlylookonce,你只需要看一次)等,本实施例不做具体限定。本实施例选择fastrcnn的其中一种模型,也即vgg16(visualgeometrygroup16,16层的视觉几何层网络)作为待训练模型的主体结构。

vgg16是一个包含16个隐藏层的卷积神经网络,具体包括13个卷积层和3个全连接层。16个隐藏层组成了vgg16中的五个块结构(也即,block),分别为第一块结构、第二块结构、第三块结构、第四块结构和第五块结构,其中,第三块结构、第四块结构和第五块结构均用于对图像进行特征提取。同时,cgg16还包括一个兴趣区域池化层(roipooling,regionofinterestpooling),兴趣区域池化层可以通过对图像同时进行对象分类和对象识别框回归的方式实现物体检测。

步骤s200,获取源域对应的第一图像集合以及目标域对应的第二图像集合。

源域和目标域是相对而言的,对于待训练模型而言,深度学习过程中所涉及的领域为源域,而深度学习过程中未涉及的领域为目标域。在本实施例中,源域对应的第一图像集合包括多个第一图像,且各第一图像包括至少一个第一对象,各第一图像对应的第一对象属于同一类别。类似地,目标域对应的第二图像集合包括多个第二图像,且各第二图像包括至少一个第二对象,各第二图像对应的第二对象属于同一类别。

例如,源域为“实际拍摄的真实场景”,目标域为“画笔绘制的水彩画场景”,则第一图像集合内的各第一图像均包括拍摄的场景、人物等,第二图像集合内的各第二图像均包括绘制的场景、人物等。再例如,源域为“晴天”,目标域为“雾天”,则第一图像集合内的各第一图像均为晴天状况下采集到的图像,例如晴天状况下采集到的车辆行驶图像,第二图像集合内的各第二图像均为雾天状况下采集到的图像,例如雾天状况下采集到的车辆行驶图像。

容易理解,待训练模型对源域的第一图像通常具有较高的物体检测能力,但对目标域的第一图像通常不具有较高的物体检测能力。

容易理解,步骤s100和步骤s200可以同时执行,也可以先后执行,本实施例不做具体限定。

步骤s300,对于各所述第一图像,分别以各第一图像为待训练模型的输入,以第一图像对应的标识信息为训练目标对待训练模型进行训练,直至待训练模型的检测损失函数收敛。

在本实施例中,第一图像对应的标识信息可以包括第一图像内的至少一个对象识别框以及对象识别框对应的类别标识。在本步骤中,服务器可以以各第一图像待训练模型的输入,并以包含至少一个对象识别框以及对象识别框对应的类别标识的该第一图像为训练目标对待训练模型进行训练。可选地,各第一图像对应的对象识别框以及对象识别框对应的类别标识可以基于待训练模型获得,也可以通过人工的方式预先进行标记,本实施例不做具体限定。

在本实施例中,检测损失函数ldet可以通过如下公式表示:

其中,ns用于表征第一图像集合中第一图像的数量,lcr用于表征待训练模型的分类损失和回归损失,r用于表征rpn模型的处理过程,用于表征第i个第一图像对应的第三通道乘积向量,用于表征第i个第一图像对应的第s个对象识别框,用于表征第i个图像对应的第s个对象识别框的类别标识。

图2是本发明第一实施例的一种可选的方式中根据各第一图像训练待训练模型的流程图。如图2所示,在一种可选的实现方式中,步骤s300可以包括如下步骤:

步骤s310,以各第一图像为待训练模型的输入,获取第四块结构输出的第三特征。

在本实施例中,服务器可以获取第四块结构来提取第一图像中的第三特征。第三特征可以为一个c×h×w的特征,其中c用于表征通道数,h用于表征第一图像的高度,w用于表征第一图像的宽度。

步骤s320,根据第三特征,基于第一注意力模型获取对应的第一图像的第四特征。

在本步骤中,服务器可以以第三特征为第一注意力模型的输入,获取第四特征。在本实施例中,第一注意力模型可以为一个卷积核为7×7,通道数为1,且步长为1的卷积层。

步骤s330,根据第四特征、经过梯度反转处理的第三特征以及对应的第一图像的第一域标签对第一注意力判别模型进行训练。

在本实施例的一种可选的实现方式中,服务器还可以对第一注意力判别模型进行训练,以使得第一注意力判别模型的注意力损失函数收敛。第一注意力模型用于增强检测相关区域(也即,包括第一对象的区域)并抑制关于跨域特征对齐的无关区域,有效增强待处理模型在空间维度的训练效果。

在本实施例中,第一域标签用于表征第一图像所属的域,本实施例的第一图像均属于源域,因此第一域标签可以为1。在本步骤中,服务器可以以第三特征为第一梯度反转结构的输入,获取经过梯度反转处理的第三特征,从而根据第四特征以及经过梯度反转处理的第三特征对第一注意力判别模型进行训练。

在本实施例中,第一梯度反转结构为梯度反转层(grl,gradientreversallayer),反向传播是指将损失(也即,预测值和真实值的误差)逐层向后传递,并根据回传的损失计算梯度,从而更新各层网络的参数,梯度反转层用于将回传到预定层(在本实施例中,也即第三结构、第四结构和第五结构)的损失乘以一个负数,以达到使得grl前后的网络的训练目标相反,以实现对抗的效果,从而增强待训练模型的训练效果的目的。

图3是本发明第一实施例的第一注意力判别模型的结构示意图。如图3所示,第一注意力判别模型可以包括三层结构,其中,结构31为第一层结构,包括一个卷积核为3×3,通道数为512,且步长为1的卷积层、一个激活函数层、一个批次标准化(bn,batchnormalization)归一层以及一个全局平均池化层;结构32为第二层结构,包括一个输入和输出均为512为的全连接层、一个激活函数层以及一个特征遗忘(dropout)层;结构33为第三层结构,包括一个输入为512维,输出为1维的全连接层以及一个激活函数层。其中,结构31以及结构32所包含的激活函数层使用的激活函数为relu,结构33所包含的激活函数层使用的激活函数为sigmoid。

在确定各第一图像对应的经过梯度反转处理的第三特征后,服务器可以根据第四特征以及经过梯度反转处理的第三特征确定第一注意力判别模型的输入。具体地,服务器可以根据各第四特征以及对应的经过梯度反转处理的第三特征确定第一通道乘积向量,然后以各第一通道乘积向量为第一注意力判别模型的输入,以各第一图像对应的第一域标签为训练目标对第一注意力判别模型进行训练。

在本实施例中,第三特征为c×h×w的特征,因此经过第一梯度旋转结构得到的梯度旋转的第三特征同样为c×h×w的特征,第四特征为h×w的特征,服务器可以将第四特征按梯度旋转的第三特征的各通道的元素进行乘积得到第一通道乘积向量。

图4是本发明第一实施例的方法计算第一通道乘积向量的示意图。如图4所示,特征41为经过梯度反转处理的第三特征,特征42为第四特征。其中,特征41的维度为c×h×w,因此特征41的各通道对应的元素可以看作一个h×w的矩阵,特征41c也即特征41的第c(c为大于等于1且小于等于c的预定整数)个通道对应的矩阵。在计算第一通道乘积向量时,服务器可以将特征41c分别与特征42相乘,获取第c个通道对应的矩阵乘积,然后根据各通道对应的矩阵乘积确定第一通道乘积向量。

步骤s340,根据第四特征确定第五块结构的输入,以获取对应的第一图像的第五特征。

在确定各第一图像的第四特征后,服务器可以分别根据各第四特征确定待训练模型的第五块结构的输入,从而基于第五块结构获取对应的第一图像的第五特征。

在本步骤中,服务器可以根据第三特征和第四特征确定第二通道乘积向量,然后以第二通道乘积向量为第五块结构的输入,获取对应的第一图像的第五特征。容易理解,第二通道乘积向量与第一通道成绩向量的计算方式相同,在此不再赘述。

在本实施例的一种可选的实现方式中,步骤s330和步骤s340可以同时执行,也可以先后执行,本实施例不做具体限定。

步骤s350,根据第五特征,基于第二注意力模型获取对应的所述第一图像的第六特征。

与步骤s320相似,服务器可以以第五特征为第二注意力模型的输入,获取第六特征。在本实施例中,第二注意力模型同样可以为一个卷积核为7×7,通道数为1,且步长为1的卷积层。

步骤s360,根据第六特征以及经过梯度反转处理的第五特征以及对应的第一图像的第一域标签对第二注意力判别模型进行训练。

与步骤s330相似,在本实施例的一种可选的实现方式中,服务器还可以对第二注意力判别模型进行训练,以使得第二注意力判别模型的注意力损失函数收敛。在本步骤中,服务器可以以第五特征为第二梯度反转结构的输入,获取经过梯度反转处理的第五特征,从而根据第六特征以及经过梯度反转处理的第五特征对第二注意力判别模型进行训练。

在本实施例中,第二梯度反转结构同样为grl。第二注意力模型可以包括三层结构,其中,第一层结构包括一个卷积核为3×3,通道数为512,且步长为1的卷积层、一个激活函数层、一个批次bn归一层以及一个全局平均池化层;第二层结构包括一个输入和输出均为512为的全连接层、一个激活函数层以及一个dropout层;第三层结构包括一个输入为512维,输出为1维的全连接层以及一个激活函数层。其中,第一层结构以及第二层结构所包含的激活函数层使用的激活函数同样为relu,第三层结构所包含的激活函数层使用的激活函数同样为sigmoid。

在确定各第一图像对应的经过梯度反转处理的第五特征后,服务器可以根据第六特征以及经过梯度反转处理的第五特征确定第一注意力判别模型的输入。具体地,服务器可以根据各第四特征以及对应的经过梯度反转处理的第五特征确定第三通道乘积向量,然后以各第三通道乘积向量为第二注意力判别模型的输入,以各第一图像对应的第一域标签为训练目标对第二注意力判别模型进行训练。

步骤s370,根据第六特征确定兴趣区域池化层的输入,以对应的标识信息为训练目标对待训练模型进行训练。

在本实施例中,兴趣区域池化层属于待训练模型的物体检测结构。与步骤s340相似,在本步骤中,服务器可以根据第五特征以及第六特征确定第四通道乘积向量,然后以第四通道乘积向量为兴趣区域池化层的输入,以对应的标识信息为训练目标对待训练模型进行训练。

在本步骤中,服务器可以将第四通道乘积向量同时输入兴趣区域池化层和区域候选网络(rpn,regionproposalnetwork)。rpn用于生成对象识别框,具体地,rpn可以生成多个锚框(anchorboxes),然后判断各锚框所包含的特征为背景或对象(包括第一对象和第二对象)进行二分类,然后对包含对象的锚框进行边框回归,使得锚框与第一图像对应的对象识别框更加接近。rpn输出的至少一个锚框同样可以作为兴趣区域池化层的输入,与第四通道乘积向量共同作用,对锚框内的对象进行检测,确定第一对象的类别,从而输出至少一个第一对象的预测对象标识框和预测类别标识,使得预测对象标识框与第一图像内对应的对象标识框尽可能接近,预测类别标识与第一图像内对应的类别标识尽可能相同。

步骤s400,对于各第二图像,分别以各第二图像为待训练模型的输入,获取第二图像对应的第一特征和第二特征。

在本实施例中,第一特征和第二特征为待训练模型不同层的输出,具体地,第一特征为第二图像在第四块结构对应的输出,第二特征为第二图像在第五块结构对应的输出。第一特征和第二特征与第一图像对应的第三特征和第五特征相似,同样用于使得第一注意力判别模型以及第二注意力判别模型的注意力损失函数收敛。

容易理解,在本实施例中,步骤s300和步骤s400可以同时执行,也可以先后执行,本实施例不做具体限定。

图5是本发明第一实施例的一种可选的实现方式中获取第一特征以及第二特征的流程图。如图5所示,在本实施例的一种可选的实现方式中,步骤s400可以包括如下步骤:

步骤s410,以各第二图像为待训练模型的输入,获取第一特征。

在本步骤中,服务器可以以各第二图像为待训练模型的输入,并获取各第二图像在第四块结构的输出作为第一特征。

步骤s420,根据第一特征,基于第一注意力模型获取第七特征。

在确定各第二图像的第一特征后,服务器可以以各第一特征为第一注意力模型的输入,获取对应的第二图像的第七特征。

步骤s430,根据第七特征确定第五块结构的输入,以获取对应的第二图像的第二特征。

与步骤s340相似,在确定各第二图像的第七特征后,服务器可以分别根据各第七特征确定待训练模型的第五块结构的输入,从而基于第七块结构获取对应的第二图像的第二特征。

在本步骤中,服务器可以根据第七特征和第一特征确定第六通道乘积向量,然后以第六通道乘积向量为第五块结构的输入,获取对应的第二图像的第二特征。

容易理解,无需对第二图像预先进行标记,也就是说,第二图像对应的对象识别框和类别标识未知,由此,服务器可以在无需对第二图像进行标记的情况下对待训练模型进行训练,从而获得对目标域具有物体检测能力的目标模型,降低了人工标注的成本,同时,第二图像在第五结构对应的第二特征无需返回到待训练模型中。

在步骤s400中,服务器同样可以基于第一特征和第二特征对第一注意力判别模型和第二注意力判别模型进行训练。可选地,步骤s400还可以包括如下步骤:

步骤s440,根据第七特征、经过梯度反转处理的第一特征以及对应的第二图像的第二域标签对第一注意力判别模型进行训练。

在本实施例中,第二域标签用于表征第二图像所属的域,本实施例的第一图像均属于目标域,因此第二域标签可以为0。在本步骤中,服务器可以以第一特征为第一梯度反转结构的输入,获取经过梯度反转处理的第一特征,从而根据第七特征以及经过梯度反转处理的第一特征对第一注意力判别模型进行训练。具体地,服务器可以根据各第七特征以及对应的经过梯度反转处理的第一特征确定第五通道乘积向量,然后以各第五通道乘积向量为第一注意力判别模型的输入,以对应的第二图像的第二域标签为训练目标对第二注意力判别模型进行训练。

步骤s450,根据第二特征,基于第二注意力模型获取对应的第二图像的第八特征。

在本步骤中,服务器可以分别以各第二图像的第二特征为第二注意力模型的输入,获取各第二图像的第八特征。

步骤s460,根据第八特征、经过梯度反转处理的第二特征以及对应的第二图像的第二域标签对第二注意力判别模型进行训练。

与步骤s360相似,在本步骤中,服务器可以以第二特征为第二梯度反转结构的输入,获取经过梯度反转处理的第二特征,从而根据第八特征以及经过梯度反转处理的第二特征对第二注意力判别模型进行训练。

在确定各第二图像对应的经过梯度反转处理的第二特征后,服务器可以根据第八特征以及经过梯度反转处理的第二特征确定第二注意力判别模型的输入。具体地,服务器可以根据各第八特征以及对应的经过梯度反转处理的第二特征确定第七通道乘积向量,然后以各第七通道乘积向量为第二注意力判别模型的输入,以各第二图像对应的第二域标签为训练目标对第二注意力判别模型进行训练。

也就是说,在本实施例的一种可选的实现方式中,各第一图像与各第二图像均对第一注意力判别模型和第二注意力判别模型作用,使得第一注意力判别模型和第二注意力判别模型的损失函数收敛。在本实施例中,第一注意力判别模型和第二注意力判别模型的注意力损失函数latt可以通过如下公式表示:

其中,l用于表征第l块结构(也即,第四块结构和第五块结构),fl用于表征经过第l块结构的处理过程。

可以通过如下公式表示:

其中,可以通过如下公式计算:

其中,xs用于表征第一图像集合,xs用于表征第一图像,用于表征第l个块结构对应的特征判别模型(也即,第四块结构对应的第一特征判别模型和第五块结构对应的第二特征判别模型)的处理过程,用于表征第一图像对应的第l个特征判别模型的输入(也即,第一通道乘积向量和第三通道乘积向量),ε用于表征控制困难图像的贡献度,可以取值5。

可以通过如下公式计算:

其中,xt用于表征第二图像集合,xt用于表征第二图像,用于表征第二图像对应的第l个特征判别模型的输入(也即,第五通道乘积向量和第七通道乘积向量)。

在待训练模型的训练过程中,服务器还可以对第一特征判别模型、第二特征判别模型和第二特征判别模型进行训练,以通过第一特征判别模型、第二特征判别模型和第二特征判别模型在通道维度上获取能够准表征风格的特征信息,以弥合关于第一图像和第二图像样式对齐的域差异,进行全局风格特征的对齐。在本实施例的一种可选的实现方式中,本实施例的方法还可以包括如下步骤:

步骤s500,以各第一图像为待训练模型的输入,获取对应的第九特征。

在本实施例中,第九特征为第一图像在第三块结构对应的输出。在本步骤中,服务器可以以各第一图像为待训练模型的输入,获取第三块结构的输出作为第九特征。

步骤s600,以各第二图像为所述待训练模型的输入,获取对应的第十特征。

在本实施例中,第十特征为第二图像在第三块结构对应的输出。在本步骤中,服务器可以以各第二图像为待训练模型的输入,获取第三块结构的输出作为第十特征。

步骤s700,基于第九特征所述第十特征对第一特征判别模型进行训练。

在本步骤中,服务器可以分别将各第九特征和各第十特征转化为第一二维矩阵和第二二维矩阵,然后以第一二维矩阵和第二二维矩阵为第四梯度反转结构的输入,获取各经过梯度反转处理的第一二维矩阵和各经过梯度反转处理的第二二维矩阵,然后分别以各经过梯度反转处理的第一二维矩阵和各经过梯度反转处理的第二二维矩阵为第一特征判别模型的输入,以对应的第一图像的第一域标签以及对应的第二图像的第二域标签为训练目标对第一特征判别模型进行训练。

以第九特征为例,第九特征的维度为c×h×w,将第九特征转化为第一二维矩阵后,第一二维矩阵的维度为c×m,其中m=h×w。

容易理解,在第一特征判别模型的输入为经过梯度反转处理的第一二维矩阵时,对应的训练目标为对应的第一图像的第一域标签;在第一特征判别模型的输入为经过梯度反转处理的第二二维矩阵时,对应的训练目标为对应的第二图像的第二域标签。

步骤s800,基于第三特征以及第一特征对第二特征判别模型进行训练。

与步骤s700相似,在本步骤中,服务器可以分别将各第三特征和各第一特征转化为第三二维矩阵和第四二维矩阵,然后以第三二维矩阵和第四二维矩阵为第三梯度反转结构的输入,获取各经过梯度反转处理的第三二维矩阵和各经过梯度反转处理的第四二维矩阵,然后分别以各经过梯度反转处理的第三二维矩阵和各经过梯度反转处理的第四二维矩阵为第二特征判别模型的输入,以对应的第一图像的第一域标签以及对应的第二图像的第二域标签为训练目标对第二特征判别模型进行训练。

容易理解,在第二特征判别模型的输入为经过梯度反转处理的第三二维矩阵时,对应的训练目标为对应的第一图像的第一域标签;在第二特征判别模型的输入为经过梯度反转处理的第四二维矩阵时,对应的训练目标为对应的第二图像的第二域标签。

步骤s900,基于第五特征以及第二特征对第三特征判别模型进行训练。

与步骤s700相似,在本步骤中,服务器可以分别将各第五特征和各第二特征转化为第五二维矩阵和第六二维矩阵,然后以第五二维矩阵和第六二维矩阵为第五梯度反转结构的输入,获取各经过梯度反转处理的第五二维矩阵和各经过梯度反转处理的第六二维矩阵,然后分别以各经过梯度反转处理的第五二维矩阵和各经过梯度反转处理的第六二维矩阵为第三特征判别模型的输入,以对应的第一图像的第一域标签以及对应的第二图像的第二域标签为训练目标对第三特征判别模型进行训练。

容易理解,在第三特征判别模型的输入为经过梯度反转处理的第五二维矩阵时,对应的训练目标为对应的第一图像的第一域标签;在第三特征判别模型的输入为经过梯度反转处理的第六二维矩阵时,对应的训练目标为对应的第二图像的第二域标签。

在本实施例的一种可选的实现方式中,第一特征判别模型、第二特征判别模型和第三特征判别模型的特征损失函数可以通过如下公式表示:

其中,可以通过如下公式表示:

其中,可以通过如下公式表示:

其中,用于表征第l个块结构对应的特征判别模型(也即,第三块结构对应的第一特征判别模型、第四块结构对应的第二特征判别模型和第五块结构对应的第三特征判别模型)的处理过程,用于表征第一图像对应的第l个块结构对应的经过梯度反转处理的二维矩阵(也即,第三块结构对应的第一二维矩阵、第四块结构对应的第三二维矩阵和第五块结构的第五二维矩阵),γ用于表征控制困难风格图像的贡献度,可以取值5。

可以通过如下公式表示:

其中,用于表征第二图像对应的第l个块结构对应的经过梯度反转处理的二维矩阵(也即,第三块结构对应的第二二维矩阵、第四块结构对应的第四二维矩阵和第五块结构的第六二维矩阵)。

步骤s1000,响应于特征损失函数、注意力损失函数以及检测损失函数均收敛,将训练后的待训练模型确定为目标域对应的目标模型。

在特征损失函数、注意力损失函数以及检测损失函数均收敛时,可以认为待训练模型具有较高的物体检测识别性,因此服务器可以将训练后的待训练模型确定为目标域对应的目标模型,从而对目标域的图像进行识别。

图6是本发明第一实施例的待训练模型的数据流向示意图。如图6所示,服务器可以以第一图像:图像p1m(m为大于1的预定整数)为待训练模型的输入,获取待训练模型的第三块结构:结构b3的输出特征z3和第四块结构:结构b4的输出特征z4,然后将特征z4输入第一注意力模型:模型a4,获取特征φ4,进而计算特征z4和特征φ4的通道乘积向量,并以特征z4和特征φ4的通道乘积向量为第五块结构:结构b5的输入,获取结构b5的输出特征z5。在获取特征z5后,服务器将特征z5输入第二注意力模型:模型a5,获取特征φ5,进而计算特征z5和特征φ5的通道乘积向量,并以特征z5和特征φ5的通道乘积向量为兴趣区域池化层:池化层rp和rpn的输入,获取rpn输出的至少一个锚框:区域候选框,然后将至少一个锚框和特征z5和特征φ5的通道乘积向量同时输入池化层rp中,以第一图像p1m对应的对象识别框和对象识别框对应的类别标识为训练目标。同时,服务器可以以第二图像:图像p2n(n为大于1的预定整数)为待训练模型的输入,获取待训练模型的结构b3的输出特征z3和结构b4的输出特征z4,然后将特征z4输入模型a4,获取特征φ4,进而计算特征z4和特征φ4的通道乘积向量,并以特征z4和特征φ4的通道乘积向量为结构b5的输入,获取结构b5的输出特征z5。

对于图像p1m和图像p2n的特征z3、特征z4和特征z5,服务器可以分别将特征z3、特征z4和特征z5转化为对应的二维矩阵,也即特征g3、特征g4和特征g5,然后将特征g3、特征g4和特征g5输入grl,获取经过梯度反转处理的特征g3、特征g4和特征g5,从而分别以经过梯度反转处理的特征g3、特征g4和特征g5为第一特征判别模型:模型s3、第二特征判别模型:模型s4和第三特征判别模型:模型s5的输入,以对应的图像p1m和图像p2n的域标签为训练目标对模型s3、模型s4和模型s5进行训练。

对于图像p1m和图像p2n的特征z4和特征z5,服务器可以将特征z4输入grl,获取经过梯度反转处理的z4,然后计算经过梯度反转处理的z4与特征φ4的通道乘积向量,并以经过梯度反转处理的z4与特征φ4的通道乘积向量为第一注意力判别模型:模型d4的输入,以对应的图像p1m和图像p2n的域标签为训练目标对模型d4进行训练。类似地,服务器可以将特征z5输入grl,获取经过梯度反转处理的z5,然后计算经过梯度反转处理的z5与特征φ5的通道乘积向量,并以经过梯度反转处理的z5与特征φ5的通道乘积向量为第二注意力判别模型:模型d5的输入,以对应的图像p1m和图像p2n的域标签为训练目标对模型d5进行训练。

可选地,在对待训练模型训练完毕,获取目标域对应的目标模型后,本实施例的方法还可以包括如下步骤:

步骤s1100,获取目标域对应的第三图像。

在本步骤中,服务器可以获取目标域对应的至少一个第三图像。容易理解,在本实施例中,第三图像和第二图像可以为同一图像,也可以为不同图像,本实施例不做具体限定。

步骤s1200,以第三图像为目标模型的输入,获取第三图像对应的至少一个目标对象识别框以及所述目标对象识别框对应的目标类别标识,以对所述第三图像进行物体检测。

以图6所示的模型结构为例进行说明。在本步骤中,服务器可以将第三图像输入目标模型中,获取第三图像在结构b4对应的特征z4,然后将特征z4输入模型a4中,获取第三图像对应的特征φ4,然后计算特征z4与特征φ4对应的通道乘积向量作为结构b5的输入,从而获取第三图像对应的特征z5。在获取特征z5后,服务器将特征z5输入模型a5中,获取第三图像对应的特征φ5,然后计算特征z5与特征φ5对应的通道乘积向量作为rpn以及池化层rp的输入,获取rpn输出的至少一个区域候选框同时作为池化层rp的输入,从而得到第三图像对应的至少一个目标对象识别框和目标对象识别框对应的目标类别标识。

容易理解,在本步骤中,若第三图像不包括任何对象,则目标模型可以不输出第三图像对应的至少一个目标对象识别框和目标对象识别框对应的目标类别标识。

本实施例在获取源域的待训练模型、第一图像集合和目标域的第二图像集合后,以各第一图像为输入,并以各第一图像对应的对象识别框和对象识别框的类别为训练目标对待训练模型进行训练,同时以各第二图像为输入,获取第二图像在待训练模型的不同层的输出,以对注意力判别模型和特征判别模型进行训练,从而响应于待训练模型的检测损失函数、注意力判别模型的注意力损失函数和特征判别模型的特征损失函数收敛,将训练后的待训练模型确定为目标模型。本实施例无需对目标域图像标记就可以对待训练模型进行训练,提升了模型对于目标域的物体检测能力,并降低了标记成本。

图7是本发明第二实施例的模型训练装置的示意图。如图7所示,本实施例的装置包括模型获取单元71、图像获取单元72、第一模型训练单元73、第二模型训练单元74和模型确定单元75。

其中,模型获取单元71用于获取源域对应的待训练模型,所述待训练模型用于进行物体检测。图像获取单元72用于获取所述源域对应的第一图像集合以及目标域对应的第二图像集合,所述第一图像集合包括多个第一图像,所述第一图像包括第一对象,且各所述第一对象属于同一类别,所述第二图像集合包括多个第二图像,所述第二图像包括第二对象,且各所述第二对象属于同一类别。第一模型训练单元73用于对于各所述第一图像,分别以各所述第一图像为所述待训练模型的输入,以所述第一图像对应的标识信息为训练目标对所述待训练模型进行训练,直至所述待训练模型的检测损失函数收敛,所述标识信息包括所述第一图像内的至少一个对象识别框以及所述对象识别框对应的类别标识。第二模型训练单元74用于对于各所述第二图像,分别以各所述第二图像为所述待训练模型的输入,获取所述第二图像对应的第一特征和第二特征,第一特征以及所述第二特征为所述待训练模型的不同层的输出,所述第一特征以及所述第二特征用于使得第一注意力模型以及第二注意力模型的注意力损失函数收敛,并使得第一特征判别模型、第二特征判别模型以及第三特征判别模型的特征损失函数收敛。模型确定单元75用于响应于所述特征损失函数、所述注意力损失函数以及所述检测损失函数均收敛,将训练后的所述待训练模型确定为所述目标域对应的目标模型。

本实施例在获取源域的待训练模型、第一图像集合和目标域的第二图像集合后,以各第一图像为输入,并以各第一图像对应的对象识别框和对象识别框的类别为训练目标对待训练模型进行训练,同时以各第二图像为输入,获取第二图像在待训练模型的不同层的输出,以对注意力判别模型和特征判别模型进行训练,从而响应于待训练模型的检测损失函数、注意力判别模型的注意力损失函数和特征判别模型的特征损失函数收敛,将训练后的待训练模型确定为目标模型。本实施例无需对目标域图像标记就可以对待训练模型进行训练,提升了模型对于目标域的物体检测能力,并降低了标记成本。

图8是本发明第三实施例的电子设备的示意图。图8所示的电子设备为通用数据处理装置,其包括通用的计算机硬件结构,其至少包括处理器81和存储器82。处理器81和存储器82通过总线83连接。存储器82适于存储处理器81可执行的指令或程序。处理器81可以是独立的微处理器,也可以是一个或者多个微处理器集合。由此,处理器81通过执行存储器82所存储的命令,从而执行如上所述的本发明实施例的方法流程实现对于数据的处理和对于其他装置的控制。总线83将上述多个组件连接在一起,同时将上述组件连接到显示控制器84和显示装置以及输入/输出(i/o)装置85。输入/输出(i/o)装置85可以是鼠标、键盘、调制解调器、网络接口、触控输入装置、体感输入装置、打印机以及本领域公知的其他装置。典型地,输入/输出(i/o)装置85通过输入/输出(i/o)控制器86与系统相连。

其中,存储器82可以存储软件组件,例如操作系统、通信模块、交互模块以及应用程序。以上所述的每个模块和应用程序都对应于完成一个或多个功能和在发明实施例中描述的方法的一组可执行程序指令。

上述根据本发明实施例的方法、设备(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应理解,流程图和/或框图的每个块以及流程图图例和/或框图中的块的组合可以由计算机程序指令来实现。这些计算机程序指令可以被提供至通用计算机、专用计算机或其它可编程数据处理设备的处理器,以产生机器,使得(经由计算机或其它可编程数据处理设备的处理器执行的)指令创建用于实现流程图和/或框图块或块中指定的功能/动作的装置。

同时,如本领域技术人员将意识到的,本发明实施例的各个方面可以被实现为系统、方法或计算机程序产品。因此,本发明实施例的各个方面可以采取如下形式:完全硬件实施方式、完全软件实施方式(包括固件、常驻软件、微代码等)或者在本文中通常可以都称为“电路”、“模块”或“系统”的将软件方面与硬件方面相结合的实施方式。此外,本发明的方面可以采取如下形式:在一个或多个计算机可读介质中实现的计算机程序产品,计算机可读介质具有在其上实现的计算机可读程序代码。

可以利用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是如(但不限于)电子的、磁的、光学的、电磁的、红外的或半导体系统、设备或装置,或者前述的任意适当的组合。计算机可读存储介质的更具体的示例(非穷尽列举)将包括以下各项:具有一根或多根电线的电气连接、便携式计算机软盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪速存储器)、光纤、便携式光盘只读存储器(cd-rom)、光存储装置、磁存储装置或前述的任意适当的组合。在本发明实施例的上下文中,计算机可读存储介质可以为能够包含或存储由指令执行系统、设备或装置使用的程序或结合指令执行系统、设备或装置使用的程序的任意有形介质。

计算机可读信号介质可以包括传播的数据信号,所述传播的数据信号具有在其中如在基带中或作为载波的一部分实现的计算机可读程序代码。这样的传播的信号可以采用多种形式中的任何形式,包括但不限于:电磁的、光学的或其任何适当的组合。计算机可读信号介质可以是以下任意计算机可读介质:不是计算机可读存储介质,并且可以对由指令执行系统、设备或装置使用的或结合指令执行系统、设备或装置使用的程序进行通信、传播或传输。

用于执行针对本发明各方面的操作的计算机程序代码可以以一种或多种编程语言的任意组合来编写,所述编程语言包括:面向对象的编程语言如java、smalltalk、c++、php、python等;以及常规过程编程语言如“c”编程语言或类似的编程语言。程序代码可以作为独立软件包完全地在用户计算机上、部分地在用户计算机上执行;部分地在用户计算机上且部分地在远程计算机上执行;或者完全地在远程计算机或服务器上执行。在后一种情况下,可以将远程计算机通过包括局域网(lan)或广域网(wan)的任意类型的网络连接至用户计算机,或者可以与外部计算机进行连接(例如通过使用因特网服务供应商的因特网)。

以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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