CN114359592A - 模型训练及图像处理方法、装置、设备、存储介质 - Google Patents
模型训练及图像处理方法、装置、设备、存储介质 Download PDFInfo
- Publication number
- CN114359592A CN114359592A CN202111667489.4A CN202111667489A CN114359592A CN 114359592 A CN114359592 A CN 114359592A CN 202111667489 A CN202111667489 A CN 202111667489A CN 114359592 A CN114359592 A CN 114359592A
- Authority
- CN
- China
- Prior art keywords
- model
- sequence
- predicted
- prediction
- target
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例公开了一种模型训练及图像处理方法、装置、设备、存储介质及计算机程序产品,其中该方法包括:获取第一增广图像和第二增广图像;利用第一模型对第一增广图像进行目标检测得到至少一个包括第一预测对象序列的第一检测结果,利用第二模型对第二增广图像进行目标检测得到至少一个包括第二预测对象序列的第二检测结果;对每一第一预测对象序列和每一第二预测对象序列进行匹配得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列;基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列对第一模型的模型参数进行至少一次更新,得到训练后的第一模型。
Description
技术领域
本申请涉及但不限人工智能领域,尤其涉及一种模型训练及图像处理方法、装置、设备、存储介质及计算机程序产品。
背景技术
目标检测是计算机视觉以及工业检测等领域中的重要问题,目标检测是利用算法在图像中得到感兴趣目标的位置和对应的分类。相比于图像分类,目标检测是一种预测密集型的计算机视觉任务,在目标检测模型的训练过程中对标注要求较高,从而标注成本也较高。
发明内容
有鉴于此,本申请实施例提供一种模型训练及图像处理方法、装置、设备、存储介质及计算机程序产品。
本申请实施例的技术方案是这样实现的:
一方面,本申请实施例提供一种模型训练方法,所述方法包括:
获取分别对第一图像样本进行增广处理后得到的第一增广图像和第二增广图像;
利用待训练的第一模型,对所述第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,并利用第二模型,对所述第二增广图像进行目标检测,得到至少一个包括第二预测对象序列的第二检测结果;
对每一所述第一预测对象序列和每一所述第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列;
基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,对所述第一模型的模型参数进行至少一次更新,得到训练后的所述第一模型。
另一方面,本申请实施例提供一种图像处理方法,包括:
获取待处理图像;
利用已训练的第四模型,对所述待处理图像进行目标检测,得到第三检测结果;其中,所述第三模型包括以下至少之一:采用上述模型训练方法得到的第一模型,采用上述模型训练方法得到的第三模型。
另一方面,本申请实施例提供一种模型训练装置,所述装置包括:
第一获取模块,用于获取分别对第一图像样本进行增广处理后得到的第一增广图像和第二增广图像;
第一检测模块,用于利用待训练的第一模型,对所述第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,并利用第二模型,对所述第二增广图像进行目标检测,得到至少一个包括第二预测对象序列的第二检测结果;
第一匹配模块,用于对每一所述第一预测对象序列和每一所述第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列;
第一更新模块,用于基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,对所述第一模型的模型参数进行至少一次更新,得到训练后的所述第一模型。
再一方面,本申请实施例提供一种图像处理装置,包括:
第三获取模块,用于获取待处理图像;
第二检测模块,用于利用已训练的第四模型,对所述待处理图像进行目标检测,得到第三检测结果;其中,所述第三模型包括以下至少之一:采用上述模型训练方法得到的第一模型,采用上述模型训练方法得到的第三模型。
再一方面,本申请实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法中的部分或全部步骤。
又一方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法中的部分或全部步骤。
又一方面,本申请实施例提供一种计算机程序,包括计算机可读代码,当所述计算机可读代码在计算机设备中运行时,所述展示设备中的处理器执行用于实现上述方法中的部分或全部步骤。
又一方面,本申请实施例提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序被计算机读取并执行时,实现上述方法中的部分或全部步骤。
本申请实施例中,本申请实施例中,获取分别对第一图像样本进行增广处理后得到的第一增广图像和第二增广图像;利用待训练的第一模型,对第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,并利用第二模型,对第二增广图像进行目标检测,得到至少一个包括第二预测对象序列的第二检测结果;对每一第一预测对象序列和每一第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列;基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,对第一模型的模型参数进行至少一次更新,得到训练后的第一模型。这样,可以通过保持第一模型和第二模型分别对同一图像样本的第一增广图像和第二增广图像处理后得到的第一预测对象序列和第二预测对象序列之间的一致性,实现目标检测模型的序列级别的自监督训练过程,并且可以对目标检测模型的整体网络结构进行训练,从而可以有效提高整个目标检测模型的性能,并能减少目标检测模型训练过程中的标注成本。
附图说明
图1为本申请实施例提供的一种模型训练方法的实现流程示意图;
图2为本申请实施例提供的一种模型训练方法的实现流程示意图;
图3为本申请实施例提供的一种模型训练方法的实现流程示意图;
图4为本申请实施例提供的一种模型训练方法的实现流程示意图;
图5为本申请实施例提供的一种模型训练方法的实现流程示意图;
图6为本申请实施例提供的一种图像处理方法的实现流程示意图;
图7A为本申请实施例提供的一种基于预训练方法进行模型训练的实现流程示意图;
图7B为本申请实施例提供的一种模型训练方法的实现架构示意图;
图8为本申请实施例提供的一种模型训练装置的组成结构示意图;
图9为本申请实施例提供的一种图像处理装置的组成结构示意图;
图10为本申请实施例提供的一种计算机设备的硬件实体示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面结合附图和实施例对本申请的技术方案进一步详细阐述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。所涉及的术语“第一/第二/第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一/第二/第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请的目的,不是旨在限制本申请。
针对相关技术中目标检测模型的训练过程中标注成本高的问题,可以采用自监督训练算法,利用无标签数据辅助提升目标检测模型的性能。但是,相关技术中的自监督训练算法主要应用在图像分类任务上,将整个图像看作一个整体,不适用于目标检测这种预测密集型任务,并且相关技术中的自监督训练算法通常只能预训练目标检测模型中部分网络的参数,例如只能训练主干网络部分的参数,因此对最终的整个目标检测模型的性能提升有限。
本申请实施例提供一种模型训练方法,该方法可以由计算机设备的处理器执行。其中,计算机设备指的可以是服务器、笔记本电脑、平板电脑、台式计算机、智能电视、机顶盒、移动设备(例如移动电话、便携式视频播放器、个人数字助理、专用消息设备、便携式游戏设备)等具备数据处理能力的设备。图1为本申请实施例提供的一种模型训练方法的实现流程示意图,如图1所示,该方法包括如下步骤S101至步骤S104:
步骤S101,获取分别对第一图像样本进行增广处理后得到的第一增广图像和第二增广图像。
这里,第一图像样本可以是任意合适的包含至少一个对象的图像。第一图像样本中包含的对象可以根据实际应用场景确定,例如可以包括但不限于人、人体部位、动物、动物肢体、植物、花朵、树叶、石头、云朵、围栏等对象中的至少一种。
对第一图像样本进行的增广处理可以包括但不限于随机缩放、随机裁剪、随机翻转、随机调整尺寸、颜色抖动、灰度处理、高斯模糊、随机擦除等中的至少一种。第一增广图像和第二增广图像可以分别是对同一第一图像样本进行不同增广处理后得到的,可以分别是对同一第一图像样本进行相同的增广处理后得到的。在实施时,本领域技术人员可以根据实际情况,对第一图像样本采用合适的增广处理得到第一增广图像和第二增广图像,本申请实施例并不限定。
步骤S102,利用待训练的第一模型,对所述第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,并利用第二模型,对所述第二增广图像进行目标检测,得到至少一个包括第二预测对象序列的第二检测结果。
这里,第一模型可以是任意合适的基于序列特性进行目标检测的模型,如视觉转换器(Vision Transformer,ViT)、基于转换器的目标检测模型(Detection Transformer,DETR)、可变形DETR等。第一模型能将目标检测问题转换为特征序列集合的预测问题,从而能够输出至少一个包括第一预测对象序列的第一检测结果。第一预测对象序列可以是第一模型对第一增广图像进行序列编码以及序列解码后得到的。每一第一预测对象序列可以表征第一图像样本中的一个预测对象。在实施时,本领域技术人员可以根据实际情况采用任意合适的序列编码方式以及序列解码方式对第一增广图像进行处理,得到至少一个第一预测对象序列,本申请实施例并不限定。
在一些实施方式中,第一模型可以是可变形DETR。第一检测结果中的第一预测对象序列,可以是转换器(Transformer)中的解码器输出的预测对象序列,也可以是对Transformer中的解码器输出的预测对象序列进行维度变换等映射处理后得到的映射后的预测对象序列。
在一些实施方式中,第一检测结果中可以包括第一预测对象序列、与所述第一预测对象序列对应的第一对象区域和第一对象类别。第一预测对象序列可以表征一个预测对象,与第一预测对象序列对应的第一对象区域和第一对象类别可以分别表征该预测对象的预测位置区域和预测类别。
第二模型可以与第一模型具有相同的网络结构,也可以与第一模型具有不同的网络结构,这里并不限定。利用第二模型对第二增广图像进行目标检测的处理过程,与利用第一模型对第一增广图像进行目标检测的处理过程是对应的,在实施时可以参照利用第一模型对第一增广图像进行目标检测的处理过程。第二预测对象序列可以是第二模型对第二增广图像进行序列编码以及序列解码后得到的。每一第二预测对象序列可以表征第一图像样本中的一个预测对象。
在一些实施方式中,在第三模型为基于Transformer的目标检测模型的情况下,第二检测结果中的第二预测对象序列,可以是Transformer中的解码器输出的预测对象序列,也可以是对Transformer中的解码器输出的预测对象序列进行维度变换等映射处理后得到的映射后的预测对象序列。
在一些实施方式中,第二检测结果中可以包括第二预测对象序列、与所述第二预测对象序列对应的第二对象区域和第二对象类别。第二预测对象序列可以表征一个预测对象,与第二预测对象序列对应的第二对象区域和第二对象类别可以分别表征该预测对象的预测位置区域和预测类别。
步骤S103,对每一所述第一预测对象序列和每一所述第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列。
这里,具有目标匹配关系的第一预测对象序列和第二预测对象序列可以表征第一图像样本中的同一个预测对象。在实施时,本领域技术人员可以根据实际情况采用任意合适的匹配方式对每一第一预测对象序列和每一第二预测对象序列进行匹配,这里并不限定。
在一些实施方式中,可以确定每一第一预测对象序列的输出时序,以及每一第二预测对象序列的输出时序,将输出时序相同的第一预测对象序列和第二预测对象序列确定为具有目标匹配关系的第一预测对象序列和第二预测对象序列,从而可以得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列。
在一些实施方式中,可以采用二分图匹配的方式,对每一第一预测对象序列和每一第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列。在实施时,可以采用任意合适的方式对二分图匹配过程采用的匹配损失进行计算,这里并不限定。例如,二分图匹配过程采用的匹配损失可以是基于以下至少之一确定的:互相匹配的每一对第一预测对象序列和每一第二预测对象序列之间的相似度、互相匹配的每一对第一预测对象序列和每一第二预测对象序列分别对应的第一对象区域与第二对象区域之间的交并比、互相匹配的每一对第一预测对象序列和每一第二预测对象序列分别对应的第一对象类别与第二对象类别之间的焦点损失等。
步骤S104,基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,对所述第一模型的模型参数进行至少一次更新,得到训练后的所述第一模型。
这里,在一些实施方式中,可以基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,确定是否需要对第一模型的模型参数进行更新,在需要对第一模型的模型参数进行更新的情况下,采用合适的参数更新算法对第一模型的模型参数进行更新,并在更新后重新确定每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,以基于重新确定的每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,确定是否需要对第一模型的模型参数进行继续更新。在确定不需要对第一模型的模型参数进行继续更新的情况下,将最终更新后的第一模型确定为训练后的第一模型。
例如,可以基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,确定目标损失值,并在目标损失值不满足预设条件的情况下,对第一模型的模型参数进行更新,在目标损失值满足预设条件或对第一模型的模型参数进行更新的次数达到设定阈值的情况下,停止对第一模型的模型参数进行更新,并将最终更新后的第一模型确定为训练后的第一模型。
本申请实施例中,获取分别对第一图像样本进行增广处理后得到的第一增广图像和第二增广图像;利用待训练的第一模型,对第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,并利用第二模型,对第二增广图像进行目标检测,得到至少一个包括第二预测对象序列的第二检测结果;对每一第一预测对象序列和每一第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列;基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,对第一模型的模型参数进行至少一次更新,得到训练后的第一模型。这样,可以通过保持第一模型和第二模型分别对同一图像样本的第一增广图像和第二增广图像处理后得到的第一预测对象序列和第二预测对象序列之间的一致性,实现目标检测模型的序列级别的自监督训练过程,并且可以对目标检测模型的整体网络结构进行训练,从而可以有效提高整个目标检测模型的性能,并能减少目标检测模型训练过程中的标注成本。
在一些实施例中,所述第一模型包括特征提取网络和转化器网络;上述步骤S102中所述的利用待训练的第一模型,对所述第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,包括如下步骤S111至步骤S112:
步骤S111,利用所述第一模型的特征提取网络,对所述第一增广图像进行特征提取,得到图像特征信息。
这里,特征提取网络可以是任意合适的能够进行图像特征提取的网络,如卷积神经网络、循环神经网络、基于转换器的特征提取网络等。在实施时,本领域技术人员可以根据实际情况在第一模型中采用合适的特征提取网络,得到图像特征信息,这里并不限定。
步骤S112,利用所述第一模型的转换器网络,对所述图像特征信息进行预测处理,得到至少一个第一预测对象序列。
这里,转换器网络可以包括编码器网络和解码器网络。在实施时,本领域技术人员可以根据实际情况在第一模型中采用合适的转换器网络,对所述图像特征信息进行预测处理,这里并不限定。
在一些实施方式中,可以对图像特征信息进行位置编码后输入编码器网络,得到编码器网络对位置编码后的图像特征信息进行特征编码处理后的至少一个编码特征序列;利用解码器网络,对每一编码特征序列进行识别处理,得到至少一个预测对象对应的上下文识别信息,并利用根据每一上下文识别信息对每一编码特征序列进行特征解码处理,得到至少一个第一预测对象序列。
上述实施例中,第一模型包括特征提取网络和转化器网络,这样,可以基于转换器网络的序列特性,实现基于转换器网络的目标检测模型的序列级别的自监督训练过程,并且可以对基于转换器网络的目标检测模型的整体网络结构进行训练,从而可以有效提高整个目标检测模型的性能,并能减少目标检测模型训练过程中的标注成本。
在一些实施例中,所述第一模型还包括第一前馈神经网络;上述步骤S112可以包括如下步骤S121至步骤S122:
步骤S121,利用所述第一模型的转换器网络,对所述图像特征信息进行预测处理,得到至少一个特征序列;
步骤S122,利用所述第一前馈神经网络,将每一所述特征序列映射至目标维度,得到至少一个第一预测对象序列。
这里,第一前馈神经网络可以是任意合适的能将特征序列映射至目标维度的前馈神经网络,这里并不限定。
目标维度可以是预先设定的。在实施时,本领域技术人员可以根据实际业务场景设置合适的目标维度。
例如,转换器网络输出的特征序列为256维的特征,通过第一前馈神经网络可以将该256维的特征序列映射为一个512维的第一预测对象序列。
上述实施例中,通过第一前馈神经网络将转换器网络输出的特征序列映射至目标维度,得到第二预测对象序列,这样,可以通过预先设定合适的目标维度,提高第一模型的检测性能。例如,可以通过设置较高的目标维度,提高第一模型的检测准确性,通过设置较低的目标维度,提高第一模型的检测效率。
在一些实施例中,所述第一检测结果还包括第一对象区域和第一对象类别,所述第一模型还包括第二前馈神经网络和第三前馈神经网络;上述步骤S102中所述的利用待训练的第一模型,对所述第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,还包括:
步骤S131,针对每一所述特征序列,利用所述第二前馈神经网络,对所述特征序列进行区域预测,得到第一对象区域,并利用所述第三前馈神经网络,对所述特征序列进行类别预测,得到第一对象类别。
这里,第二前馈神经网络可以是任意合适的能进行区域预测的前馈神经网络,这里并不限定。在一些实施方式中,利用第二前馈神经网络可以对特征序列表征的预测对象在第一增广图像中的位置区域进行预测,得到的第一对象区域可以是预测对象的检测框。
第三前馈神经网络可以是任意合适的能进行类别预测的前馈神经网络,这里并不限定。在一些实施方式中,利用第三前馈神经网络可以对特征序列表征的预测对象的对象类别进行预测,得到第一对象类别。在实施时,第三前馈神经网络的输出数量可以根据实际业务场景中所需检测的对象类别的数量确定,这里并不限定。
在一些实施例中,所述第二模型与所述第一模型具有相同的网络结构。在实施,利用第二模型对第二增广图像进行目标检测的处理过程,可以参照利用第一模型对第一增广图像进行目标检测的处理过程。
在一些实施例中,上述步骤S101可以包括如下步骤S141至步骤S142:
步骤S141,对第一图像样本进行第一图像增广处理,得到第一增广图像;
步骤S142,对所述第一图像样本进行第二图像增广处理,得到第二增广图像。
在实施时,第一图像增广处理与第二图像增广处理可以采用相同的增广处理方式,也可以采用不同的增广处理方式,这里并不限定。
在一些实施例中,所述第一图像增广处理包括以下至少之一:颜色抖动、灰度处理、高斯模糊、随机擦除;所述第二图像增广处理包括以下至少之一:随机缩放、随机裁剪、随机翻转、随机调整尺寸。
上述实施例中,通过对第一图像样本和第一图像样本分别进行第一图像增广处理和第二图像增广处理,得到第一增广图像和第二增广图像,由于相比于第二图像增广处理包括的随机缩放、随机裁剪、随机翻转以及随机调整尺寸带来的图像扰动,第一增广处理中包括的颜色抖动、灰度处理、高斯模糊、随机擦除带来的图像扰动更强,从而可以使得第一模型的目标检测难度相较第二模型更高,从而可以提升训练得到的第一模型的学习能力,并能减少由于第一模型与第二模型学习能力相同导致模型坍缩的情况。
本申请实施例提供一种模型训练方法,该方法可以由计算机设备的处理器执行。图2为本申请实施例提供的一种模型训练方法的实现流程示意图,如图2所示,该方法包括如下步骤S201至步骤S206:
步骤S201,获取分别对第一图像样本进行增广处理后得到的第一增广图像和第二增广图像。
步骤S202,利用待训练的第一模型,对所述第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,并利用第二模型,对所述第二增广图像进行目标检测,得到至少一个包括第二预测对象序列的第二检测结果。
步骤S203,对每一所述第一预测对象序列和每一所述第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列。
这里,上述步骤S201至步骤S203分别对应于前述步骤S101至步骤S103,在实施时可以参照前述步骤S101至步骤S103的实施方式。
步骤S204,基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度,确定目标损失值。
这里,可以采用任意合适的相似度损失函数确定每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度损失,基于每一相似度损失,可以确定目标损失值。相似度损失函数可以包括但不限于绝对值损失函数、最小平方误差损失函数、余弦损失函数、BYOL(Bootstrap Your Own Latent)算法、动量对比(Momentum Contrastive,MOCO)算法等中的至少一种。
步骤S205,在所述目标损失值不满足预设条件的情况下,对所述第一模型的模型参数进行更新,得到更新后的第一模型。
这里,预设条件可以包括但不限于目标损失值小于设定的损失值阈值、目标损失值变化收敛等。在实施时,预设条件可以根据实际情况设定,这里并不限定。
对第一模型的模型参数进行更新的方式可以是根据实际情况确定的,可以包括但不限于梯度下降法、动量更新法、牛顿动量法等中的至少一种,这里并不限定。
步骤S206,基于更新后的第一模型,确定训练后的所述第一模型。
这里,在一些实施方式中,可以将该更新后的第一模型确定为训练后的第一模型。
在一些实施方式中,可以对更新后的第一模型继续进行更新,并将最终更新后的第一模型确定为训练后的第一模型。
本申请实施例中,基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度,确定目标损失值,在目标损失值不满足预设条件的情况下,对第一模型的模型参数进行更新,得到更新后的第一模型,基于更新后的第一模型,确定训练后的第一模型。这样,可以在目标损失值不满足预设条件的情况下,对第一模型的模型参数进行至少一次更新,由于目标损失值是基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度确定的,从而可以提高训练后的第一模型与第二模型对于同一图像样本的不同增广图像进行处理后得到的预测对象序列的一致性,进而可以进一步提高训练后的目标检测模型的性能。
在一些实施例中,上述步骤S205可以包括如下步骤S211:
步骤S211,在所述目标损失值不满足预设条件的情况下,分别对所述第一模型的模型参数和所述第二模型的模型参数进行更新,得到更新后的第一模型和更新后的第二模型。
这里,可以在目标损失值不满足预设条件的情况下,对第一模型的模型参数和第二模型的模型参数均进行更新,实现第一模型和第二模型的对比学习。
对第二模型的模型参数进行更新的方式可以是根据实际情况确定的,可以包括但不限于梯度下降法、动量更新法、牛顿动量法等中的至少一种,这里并不限定。在实施时,第一模型和第二模型的模型参数更新方法可以相同,也可以不同,这里并不限定。
上述步骤S206可以包括如下步骤S212:
步骤S212,基于更新后的第一模型和更新后的第二模型,确定训练后的所述第一模型。
在一些实施方式中,可以基于更新后的第一模型和更新后的第二模型,确定新的目标损失值,并通过判断该新的目标损失值是否满足预设条件,来确定是否对更新后的第一模型继续进行更新。在新的目标损失值满足预设条件的情况下,可以确定不对更新后的第一模型继续进行更新,可以将该更新后的第一模型确定为训练后的第一模型;在新的目标损失值不满足预设条件的情况下,可以对更新后的第一模型继续进行更新,并将最终更新后的第一模型确定为训练后的第一模型。
上述实施例中,在对第一模型的模型参数进行更新的过程中,也对第二模型的模型参数进行更新,从而可以使得第一模型和第二模型的学习能力可以互相增强,进而可以进一步提高训练后的目标检测模型的性能。
在一些实施例中,上述步骤S211可以包括如下步骤S221至步骤S222:
步骤S221,基于所述第一模型当前的模型参数,对所述第二模型的模型参数进行动量更新,得到更新后的第二模型。
这里,本领域技术人员可以在实施时根据实际情况采用任意合适的动量更新方式基于第一模型当前的模型参数对第二模型的模型参数进行动量更新,本申请实施例并不限定。
在一些实施方式中,可以基于设定的权重,对第一模型当前的模型参数和第二模型当前的模型参数进行加权求和,得到更新后的第二模型。例如,可以采用如下公式1对第二模型的模型参数进行动量更新:
Θm+1=k*Θm+(1-k)*Θo (1);
其中,Θm和Θo分别为第二模型当前的模型参数和第一模型当前的模型参数,Θm+1为更新后的第二模型,k为设定的动量系数。在一些实施方式中k可以是大于或等于0.9且小于1的值,例如,k为0.995。
步骤S222,采用梯度更新的方式,对所述第一模型当前的模型参数进行更新,得到更新后的第一模型。
这里,可以采用任意合适的梯度更新算法,对第一模型当前的模型参数进行更新,本申请实施例并不限定。例如,梯度更新算法可以包括但不限定于批量梯度下降、随机梯度下降、小批量梯度下降等中的至少一种。
上述实施例中,基于第一模型当前的模型参数,对第二模型的模型参数进行动量更新,得到更新后的第二模型,并采用梯度更新的方式,对第一模型当前的模型参数进行更新,得到更新后的第一模型。这样,可以使得第一模型和第二模型以不同的速率进行更新,可以减少模型坍缩的情况,进一步提高训练后的目标检测模型的性能。
在一些实施例中,上述步骤S212可以包括如下步骤S231至步骤S235:
步骤S231,将对下一第一图像样本分别进行增广处理后得到的第一增广图像和第二增广图像,分别确定为当前第一增广图像和当前第二增广图像。
这里,下一第一图像样本可以是与当前的第一图像样本相同的图像,也可以是与当前的第一图像样本不同的图像。
步骤S232,利用当前更新后的第一模型,对所述当前第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,并利用当前更新后的第二模型,对所述当前第二增广图像进行目标检测,得到至少一个包括第二预测对象序列的第二检测结果。
步骤S233,对每一所述第一预测对象序列和每一所述第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列。
步骤S234,基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度,确定当前目标损失值。
这里,上述步骤S231至步骤S234分别对应于前述步骤S201至步骤S204,在实施时可以参照前述步骤S201至步骤S204的实施方式。
步骤S235,在所述当前目标损失值满足所述预设条件或对所述第一模型的模型参数进行更新的次数达到次数阈值的情况下,将所述当前更新后的第一模型确定为训练后的所述第一模型。
这里,次数阈值可以是用户预先根据实际情况设定的,也可以是默认的。
在一些实施例中,上述步骤S212可以还包括如下步骤S241至步骤S242:
步骤S241,在所述当前目标损失值不满足预设条件的情况下,分别对所述第一模型的模型参数和所述第二模型的模型参数进行下一次更新,得到下一次更新后的第一模型和下一次更新后的第二模型。
步骤S242,基于所述下一次更新后的第一模型和所述下一次更新后的第二模型,确定训练后的所述第一模型。
上述实施例中,可以在目标损失值不满足预设条件的情况下,对第一模型的模型参数和所述第二模型的模型参数进行下一次更新,并基于下一次更新后的第一模型和下一次更新后的第二模型,确定训练后的第一模型,从而可以通过不断迭代更新进一步提高训练后的第一模型的性能。
本申请实施例提供一种模型训练方法,该方法可以由计算机设备的处理器执行。图3为本申请实施例提供的一种模型训练方法的实现流程示意图,如图3所示,该方法包括如下步骤S301至步骤S310:
步骤S301,获取分别对第一图像样本进行增广处理后得到的第一增广图像和第二增广图像。
步骤S302,利用待训练的第一模型,对所述第一增广图像进行目标检测,得到至少一个第一检测结果,并利用第二模型,对所述第二增广图像进行目标检测,得到至少一个包括第二预测对象序列的第二检测结果;所述第一检测结果包括第一预测对象序列以及与所述第一预测对象序列对应的第一对象区域和第一对象类别。
步骤S303,对每一所述第一预测对象序列和每一所述第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列。
这里,上述步骤S301至步骤S303分别对应于前述步骤S101至步骤S103,在实施时可以参照前述步骤S101至步骤S103的实施方式。
步骤S304,获取所述第一图像样本中的至少一个候选对象,每一所述候选对象具有候选对象区域和候选对象类别。
这里,第一图像样本中的至少一个候选对象可以是随机确定的,也可以是通过任意合适的无监督算法对第一图像样本进行目标检测得到的,这里并不限定。例如,无监督检测算法可以包括但不限于滑动窗口法、候选区域算法、选择性搜索算法等中的至少一种。
候选对象的候选对象区域为候选对象在第一图像样本中的预测位置区域,候选对象的候选对象类别为该候选对象的预测类型。候选对象的候选对象类别可以作为该候选对象的候选对象区域的伪标签。
在一些实施例中,上述步骤S304可以包括:采用无监督方式,对所述第一图像样本进行目标检测,得到至少一个预测对象区域以及每一所述预测对象区域的伪标签;每一所述预测对象区域的伪标签用于表征所述预测对象区域的预测对象类别;针对每一所述预测对象区域,将所述预测对象区域作为候选对象区域,并将所述预测对象区域的伪标签作为候选对象类别,得到一个候选对象。这里,可以采用任意合适的无监督算法实现对第一图像样本进行的无监督方式的目标检测。这样,可以进一步减少目标检测模型训练过程中的标注成本。
步骤S305,基于每一所述第一预测对象序列对应的第一对象区域和第一对象类别、以及每一所述候选对象的候选对象区域和候选对象类别,对每一所述第一预测对象序列和每一所述候选对象进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和候选对象。
这里,具有目标匹配关系的第一预测对象序列和候选对象可以表征第一图像样本中的同一个预测对象。在实施时,本领域技术人员可以根据实际情况采用任意合适的匹配方式对每一第一预测对象序列和每一候选对象进行匹配,这里并不限定。
在一些实施方式中,可以采用二分图匹配的方式,对每一第一预测对象序列和每一候选对象进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和候选对象。在实施时,可以采用任意合适的方式对二分图匹配过程采用的匹配损失进行计算,这里并不限定。例如,二分图匹配过程采用的匹配损失可以是基于以下至少之一确定的:互相匹配的每一对第一预测对象序列和候选对象分别对应的第一对象区域与候选对象区域之间的交并比、互相匹配的每一对第一预测对象序列和候选对象分别对应第一对象类别与候选对象类别之间的焦点损失等。
步骤S306,基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度,确定第一损失值。
这里,可以采用任意合适的相似度损失函数确定每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的第一损失值,本申请实施例对此并不限定。
在一些实施方式中,可以确定每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度损失,并将每一相似度损失累加后得到第一损失值。例如,可以采用如下公式2所示的方式确定第一损失值:
步骤S307,基于每一对具有目标匹配关系的第一预测对象序列和候选对象,确定第二损失值。
这里,可以采用任意合适的损失函数确定每一对具有目标匹配关系的第一预测对象序列和候选对象之间的第二损失值,本申请实施例对此并不限定。损失函数可以包括但不限于相似度损失函数、焦点损失函数、交并比损失函数、广义交并比损失函数等中的至少一种。
步骤S308,基于所述第一损失值和所述第二损失值,确定目标损失值。
这里,可以根据实际情况采用合适的方式基于第一损失值和第二损失值确定目标损失值,本申请实施例并不限定。例如,可以将第一损失值和第二损失值之和确定为目标损失值,也可以将第一损失值和第二损失值的平均值确定为目标损失值,还可以采用不同的权重对第一损失值和第二损失值进行加权求和得到目标损失值。
步骤S309,在所述目标损失值不满足预设条件的情况下,对所述第一模型的模型参数进行更新,得到更新后的第一模型。
步骤S310,基于更新后的第一模型,确定训练后的所述第一模型。
这里,上述步骤S309至步骤S310分别对应于前述步骤S205至步骤S206,在实施时可以参照前述步骤S205至步骤S206的实施方式。
本申请实施例中,基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度,确定第一损失值,基于每一对具有目标匹配关系的第一预测对象序列和候选对象,确定第二损失值,并基于第一损失值和第二损失值,确定目标损失值。由于每一候选对象的候选对象类别可以作为该候选对象的候选对象区域的伪标签,因此,基于每一对具有目标匹配关系的第一预测对象序列和候选对象,确定的第二损失值可以对第一模型的预测对象定位能力提供客观性监督,从而可以提高训练后的第一模型的对象定位能力,进而可以进一步提高训练后的第一模型的检测准确性。
在一些实施例中,上述步骤S307可以包括如下步骤S321至步骤S322:
步骤S321,针对每一对具有目标匹配关系的第一预测对象序列和候选对象,基于所述第一预测对象序列对应的第一对象区域和所述候选对象的候选对象区域,确定一第一子损失值,并基于所述第一预测对象序列对应的第一对象类别与所述候选对象的候选对象类别,确定一第二子损失值。
这里,可以采用任意合适的损失函数确定第一对象区域和候选对象区域之间的第一子损失值,以及第一对象类别与候选对象类别之间的第二子损失值,本申请实施例对此并不限定。例如,可以采用交并比损失函数、广义交并比损失函数等确定第一对象区域和候选对象区域之间的第一子损失值,可以采用焦点损失函数确定第一对象类别与候选对象类别之间的第二子损失值。
步骤S322,基于每一所述第一子损失值和每一所述第二子损失值,确定第二损失值。
这里,可以根据实际情况采用合适的方式基于第一子损失值和第二子损失值确定第二损失值,本申请实施例并不限定。例如,可以将第一子损失值和第二子损失值之和确定为第二损失值,也可以将第一子损失值和第二子损失值的平均值确定为第二损失值,还可以采用不同的权重对第一子损失值和第二子损失值进行加权求和得到第二损失值。
在一些实施例中,可以对每一所述第一子损失值、每一所述第二子损失值、以及基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度损失进行加权求和后,得到目标损失值。例如,可以采用如下公式3所示的方式确定目标损失值:
其中,N为具有目标匹配关系的第一预测对象序列和第二预测对象序列对的数量,N为正整数;si是第一预测对象序列,是与si具有目标匹配关系的第二预测对象序列,是第一预测对象序列si与第二预测对象序列之间的相似度损失;ci是第一预测对象序列si对应的第一对象类别,cσ(i)是与si具有目标匹配关系的候选对象的候选对象类别,是采用交点损失函数计算的第一对象类别ci和候选对象类别之间的第一子损失值;表示ci为空时取0,ci不为空时取1;bi是第一预测对象序列si对应的第一对象区域,是与si具有目标匹配关系的候选对象的候选对象区域,是采用广义交并比损失函数计算的第一对象区域bi和候选对象区域之间的第二子损失值;λf、λb和λe分别为第一子损失值、第二子损失值和相似度损失的权重;为第一预测对象序列y与第二预测对象序列之间的目标损失值。
上述实施例中,针对每一对具有目标匹配关系的第一预测对象序列和候选对象,基于第一预测对象序列对应的第一对象区域和候选对象的候选对象区域,确定一第一子损失值,并基于第一预测对象序列对应的第一对象类别与候选对象的候选对象类别,确定一第二子损失值;基于每一第一子损失值和每一第二子损失值,确定第二损失值。这样,可以同时实现第一模型检测中的对象区域回归和对象类别的自监督表征学习过程,从而可以进一步提高训练后的第一模型的检测准确性。
本申请实施例提供一种模型训练方法,该方法可以由计算机设备的处理器执行。图4为本申请实施例提供的一种模型训练方法的实现流程示意图,如图4所示,该方法包括如下步骤S401至步骤S404:
步骤S401,获取分别对第一图像样本进行增广处理后得到的第一增广图像和第二增广图像。
步骤S402,利用待训练的第一模型,对所述第一增广图像进行目标检测,得到至少一个第一检测结果,并利用第二模型,对所述第二增广图像进行目标检测,得到至少一个第二检测结果;所述第一检测结果包括第一预测对象序列以及与所述第一预测对象序列对应的第一对象区域和第一对象类别,所述第二检测结果包括第二预测对象序列以及与所述第二预测对象序列对应的第二对象区域和第二对象类别。
这里,上述步骤S401至步骤S402分别对应于前述步骤S101至步骤S102,在实施时可以参照前述步骤S101至步骤S102的实施方式。
其中,第二对象区域可以是对第二预测对象序列表征的预测对象在第二增广图像中的位置区域进行预测得到的,可以是预测对象的检测框。第二对象类别可以是对第二预测对象序列表征的预测对象的对象类别进行预测得到的。
步骤S403,基于每一所述第一预测对象序列对应的第一对象区域和第一对象类别、以及每一所述第二预测对象序列对应的第二对象区域和第二对象类别,对每一所述第一预测对象序列和每一所述第二预测对象序列进行二分图匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列。
这里,可以采用任意合适的二分图匹配算法,对每一第一预测对象序列和每一第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列。例如,采用的二分图匹配算法可以包括但不限于匈牙利匹配算法、最大流匹配算法等中的至少一种。在实施时,可以采用任意合适的方式对二分图匹配过程采用的匹配损失进行计算,这里并不限定。例如,二分图匹配过程采用的匹配损失可以是基于以下至少之一确定的:互相匹配的每一对第一预测对象序列和第二预测对象序列之间的相似度、互相匹配的每一对第一预测对象序列和第二预测对象序列分别对应的第一对象区域与第二对象区域之间的交并比、互相匹配的每一对第一预测对象序列和第二预测对象序列分别对应的第一对象类别与第二对象类别之间的焦点损失等。
步骤S404,基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,对所述第一模型的模型参数进行至少一次更新,得到训练后的所述第一模型。
这里,上述步骤S404对应于前述步骤S104,在实施时可以参照前述步骤S104的实施方式。
在一些实施例中,上述步骤S403可以包括如下步骤S411至步骤S413:
步骤S411,基于每一所述第一预测对象序列和每一所述第二预测对象序列,确定至少一个候选序列对集合;每一所述候选序列对集合中包括至少一对具有候选匹配关系的第一预测对象序列和第二预测对象序列。
这里,可以采用任意合适的方式对每一第一预测对象序列和每一第二预测对象序列进行一一匹配,得到至少一个候选序列对集合,本申请实施例并不限定。例如,可以对每一第一预测对象序列和每一第二预测对象序列进行至少一次随机匹配,得到至少一个候选序列对集合。
步骤S412,针对每一候选序列对集合,基于所述候选序列对集合中每一对具有候选匹配关系的第一预测对象序列和第二预测对象序列中所述第一预测对象序列对应的第一对象区域和第一对象类别、以及所述第二预测对象序列对应的第二对象区域和第二对象类别,确定所述候选序列对集合的匹配损失。
这里,可以采用任意合适的方式对候选序列对集合的匹配损失进行计算。
在一些实施方式中,可以基于候选序列对集合中互相匹配的每一对第一预测对象序列和第二预测对象序列分别对应的第一对象区域与第二对象区域之间的交并比、互相匹配的每一对第一预测对象序列和每一第二预测对象序列分别对应的第一对象类别与第二对象类别之间的焦点损失,确定该候选序列对集合的匹配损失。
例如,可以采用如下公式4所示的方式计算候选序列对集合的匹配损失:
其中,N为具有目标匹配关系的第一预测对象序列和第二预测对象序列对的数量,N为正整数;表示匈牙利匹配损失,表示候选序列对集合中互相匹配的至少一对第一预测对象序列与第二预测对象序列;是第i对具有目标匹配关系的第一预测对象序列和第二预测对象序列中第二预测对象序列对应的第二对象类别,是与该第二预测对象序列具有目标匹配关系的第一预测对象序列的第一对象类别为的置信度;在为空时取0,不为空时取1;bi是第i对具有目标匹配关系的第一预测对象序列和第二预测对象序列中第一预测对象序列对应的第一对象区域,是与该第一预测对象序列具有目标匹配关系的第二预测对象序列的第二对象区域,是采用广义交并比损失函数计算的第一对象区域bi和第二对象区域之间的损失值。
步骤S413,将所述至少一个候选序列对集合中匹配损失最小的候选序列对集合中的每一对具有候选匹配关系的第一预测对象序列和第二预测对象序列,确定为少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列。
本申请实施例中,采用二分图匹配的方式,对每一第一预测对象序列和每一第二预测对象序列进行匹配,可以提高确定的至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间目标匹配关系的准确性,从而可以进一步提高训练后的第一模型的检测准确性。
本申请实施例提供一种模型训练方法,该方法可以由计算机设备的处理器执行。图5为本申请实施例提供的一种模型训练方法的实现流程示意图,如图5所示,该方法包括如下步骤S501至步骤S506:
步骤S501,获取分别对第一图像样本进行增广处理后得到的第一增广图像和第二增广图像。
步骤S502,利用待训练的第一模型,对所述第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,并利用第二模型,对所述第二增广图像进行目标检测,得到至少一个包括第二预测对象序列的第二检测结果。
步骤S503,对每一所述第一预测对象序列和每一所述第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列。
步骤S504,基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,对所述第一模型的模型参数进行至少一次更新,得到训练后的所述第一模型。
这里,上述步骤S501至步骤S504分别对应于前述步骤S101至步骤S104,在实施时可以参照前述步骤S101至步骤S104的实施方式。
步骤S505,基于训练后的所述第一模型,确定初始的第三模型。
这里,在一些实施方式中,可以根据实际的目标检测场景对训练后的第一模型中的前馈神经网络进行调整,并将调整后的第一模型确定为初始的第三模型。
在一些实施方式中,第一模型包括特征提取网络、转换器网络,以及与所述转换器网络连接的第一前馈神经网络、第二前馈神经网络和第三前馈神经网络;第一前馈神经网络、第二前馈神经网络和第三前馈神经网络分别用于输出第一预测对象序列、与所述第一预测对象序列对应的第一对象区域、与所述第一预测对象序列对应的第一对象类别;可以将训练后的第一模型中的第一前馈神经网络移除,并根据实际的目标检测场景对该第一模型中的第三前馈神经网络进行调整,将调整后的第一模型确定为初始的第三模型。
步骤S506,基于至少一个第二图像样本,对所述第三模型的模型参数进行更新,得到训练后的所述第三模型。
这里,第二图像样本可以具有标注信息,也可以是无标注信息的。在实施时,本领域技术人员可以根据实际的目标检测场景确定合适的第二图像样本,这里并不限定。
在一些实施方式中,可以基于至少一个第二图像样本,对所述第三模型的模型参数进行微调训练,得到训练后的所述第三模型。
本申请实施例中,基于训练后的第一模型,确定初始的第三模型,并基于至少一个第二图像样本,对第三模型的模型参数进行更新,得到训练后的第三模型。这样,可以将训练后的第一模型的模型参数迁移至其他目标检测模型,以应用至多种目标检测场景,可以提高第三模型的训练效率以及训练后的第三模型的检测准确性。
本申请实施例提供一种图像处理方法,该方法可以由计算机设备的处理器执行。图6为本申请实施例提供的一种模型训练方法的实现流程示意图,如图6所示,该方法包括如下步骤S601至步骤S602:
步骤S601,获取待处理图像;
步骤S602,利用已训练的第四模型,对所述待处理图像进行目标检测,得到第三检测结果;其中,所述第三模型包括以下至少之一:采用上述实施例中所述的模型训练方法得到的第一模型,采用上述实施例中所述的模型训练方法得到的第三模型。
这里,待处理图像可以是任意合适的待进行目标检测的图像,在实施时,本领域技术人员可以根据实际应用场景选择合适的待处理图像,本申请实施例并不限定。
本申请实施例中,由于上述实施例中所述的模型训练方法可以通过保持第一模型和第二模型分别对同一图像样本的第一增广图像和第二增广图像处理后得到的第一预测对象序列和第二预测对象序列之间的一致性,实现目标检测模型的序列级别的自监督训练过程,并且可以对目标检测模型的整体网络结构进行训练,从而可以有效提高整个目标检测模型的性能,因此,基于采用上述实施例中所述的模型训练方法得到的第一模型和/或采第三模型对待处理图像进行目标检测,可以提高目标检测的准确性。
本申请实施例提供一种基于Transformer序列一致性的自监督目标检测模型的预训练方法,该方法可以利用无标签数据对目标检测模型的整体网络结构进行训练,并能基于Transformer的序列特性,同时实现目标检测模型检测中的对象区域回归和对象类别的自监督表征学习过程。图7A为本申请实施例提供的一种基于该预训练方法的进行模型训练的实现流程示意图,如图7A所示,该方法可以包括如下步骤S701至步骤S703:
步骤S701,利用无监督方式获取第一图像样本中的至少一个候选对象,每一所述候选对象具有候选对象区域和候选对象类别。
在实施时,可以采用任意合适的无监督检测算法对第一图像样本中的目标对象进行检测,得到至少一个候选对象。例如,可以采用的选择性搜索算法从第一图像样本中无监督地获得高召回率的至少一个候选对象。
步骤S702,利用基于Transformer序列一致性的自监督目标检测模型的预训练方法,对第一模型进行预训练。
在一些实施方式中,可以采用如图7B所示的模型训练架构实现基于Transformer序列一致性的自监督目标检测模型的预训练方法,如图7B所示,该模型训练架构包括第一模型10和第二模型20,其中,第一模型10和第二模型20的网络结构相同,都包含有卷积神经网络(Convolutional Neural Networks,CNN)11或21、Transformer编码器12或22、Transformer解码器13或23、以及前馈神经网络(Feed-Forward Networks,FFN)14或24,前馈神经网络可以包括第一前馈神经网络、第二前馈神经网络和第三前馈神经网络;在模型训练的过程中,第一模型10和第二模型20的输入分别是对第一图像样本30进行增广处理后得到的第一增广图像和第二增广图像,其中,第一模型10中输入的第一增广图像的扰动包含更多的颜色层面扰动。第一模型10和第二模型20分别对第一增广图像和第二增广图像进行目标检测的过程是相同的,以第一模型10对第一增广图像进行目标检测的过程为例,在利用卷积神经网络11对第一增广图像进行特征提取后,会在提取的特征中添加位置编码40,利用Transformer编码器12和Transformer解码器13对添加位置编码后的特征进行处理,经过Transformer编码器12和Transformer解码器13的处理后,可以得到至少一个表征预测对象的特征序列31,利用第一前馈神经网络、第二前馈神经网络和第三前馈神经网络对每一特征序列31进行处理,针对每一特征序列31,可以得到第一前馈神经网络输出的第一预测对象序列Prj1、第二前馈神经网络输出的与该第一预测对象序列对应的第一对象区域Box1、第三前馈神经网络输出的与该第一预测对象序列对应的第一对象类别Cls1,相应地,利用第二模型20对第二增广图像进行处理后可以得到特征序列32、第二预测对象序列Prj2、与该第二预测对象序列对应的第二对象区域Box2、与该第二预测对象序列对应的第二对象类别Cls2。对于第一模型10和第二模型20的输出结果,可以利用二分图匹配算法对至少一个第一预测对象序列Prj1和至少一个第二预测对象序列Prj2进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列(如对应于第一对象区域Box1-1的第一预测对象序列和第二对象区域Box2-1的第二预测对象序列、对应于第一对象区域Box1-4的第一预测对象序列和第二对象区域Box2-2的第二预测对象序列、对应于第一对象区域Box1-4的第一预测对象序列和第二对象区域Box2-3的第二预测对象序列、对应于第一对象区域Box1-4的第一预测对象序列和第二对象区域Box2-4的第二预测对象序列),然后可以基于至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,利用绝对值损失函数计算相似度损失,基于该相似度损失,可以确定目标损失值,基于该目标损失值可以对第一模型10的网络参数和第二模型20的网络参数进行更新,以保证对同一图像样本进行不同增广处理后的增广图像的Transformer特征序列的一致性;其中,第一模型10的网络参数可以采用梯度更新的方式进行更新,第二模型20的网络参数的更新可以采用停止梯度的设计,基于第一模型10当前的网络参数进行动量更新。其中,二分图匹配算法是一种基于集合的匹配方法,二分图匹配算法的输入是第一模型10和第二模型20分别输出的至少一个第一预测对象序列和至少一个第二预测对象序列,以及每个第一预测对象序列对应的第一对象区域和第一对象类别的置信度、每个第二预测对象序列对应的第二对象区域和第二对象类别的置信度。相比于基于时序的一对一序列匹配,利用二分图匹配算法可以找到更优的序列匹配对(即具有目标匹配关系的第一预测对象序列和第二预测对象序列),并且为第一模型的自监督学习带来带更多的有益信息,最终提升自监督学习的效率和精度。
在一些实施方式中,对第一模型10的网络参数和第二模型20的网络参数进行更新的过程中考虑的目标损失值还可以包括第一目标检测网络输出的至少一个第一预测对象序列对应的第一对象区域和至少一个候选对象的候选对象区域之间的差异,以及每一第一预测对象序列对应的第一对象类别与每一候选对象的候选对象类别之间的差异。在实施时,可以利用二分图匹配算法匹配每一第一预测对象序列对应的第一对象区域和第一对象类别、以及每一候选对象的候选对象区域和候选对象类别,然后利用广义交并比函数确定每一对具有目标匹配关系的第一预测对象序列和候选对象分别对应的第一对象区域和候选对象区域之间的第一子损失值,利用焦点损失函数确定每一对具有目标匹配关系的第一预测对象序列和候选对象分别对应的第一对象类别与候选对象类别之间的第二子损失值,基于每一第一子损失值、每一第二子损失值以及每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度损失,可以确定目标损失值。
步骤S603,将预训练后的第一模型迁移到的目标检测任务中。
这里,根据不同的目标检测场景(如工业质检、工业巡检、医疗场景检测、自动驾驶等至少一种应用场景)中的目标检测任务,可以将训练后的第一模型中的第一前馈神经网络移除,并根据实际的目标检测任务对该第一模型中第三前馈神经网络的输出类别数量进行调整,将调整后的第一模型确定为初始的第三模型,然后对该第三模型的模型参数进行微调训练,得到可用于目标检测任务的第三模型。
图8为本申请实施例提供的一种模型训练装置的组成结构示意图,如图8所示,模型训练装置800包括:第一获取模块810、第一检测模块820、第一匹配模块830和第一更新模块840,其中:
第一获取模块810,用于获取分别对第一图像样本进行增广处理后得到的第一增广图像和第二增广图像;
第一检测模块820,用于利用待训练的第一模型,对所述第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,并利用第二模型,对所述第二增广图像进行目标检测,得到至少一个包括第二预测对象序列的第二检测结果;
第一匹配模块830,用于对每一所述第一预测对象序列和每一所述第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列;
第一更新模块840,用于基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,对所述第一模型的模型参数进行至少一次更新,得到训练后的所述第一模型。
在一些实施例中,所述第一更新模块还用于:基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度,确定目标损失值;在所述目标损失值不满足预设条件的情况下,对所述第一模型的模型参数进行更新,得到更新后的第一模型;基于更新后的第一模型,确定训练后的所述第一模型。
在一些实施例中,所述第一更新模块还用于:在所述目标损失值不满足预设条件的情况下,分别对所述第一模型的模型参数和所述第二模型的模型参数进行更新,得到更新后的第一模型和更新后的第二模型;基于更新后的第一模型和更新后的第二模型,确定训练后的所述第一模型。
在一些实施例中,所述第一更新模块还用于:基于所述第一模型当前的模型参数,对所述第二模型的模型参数进行动量更新,得到更新后的第二模型;采用梯度更新的方式,对所述第一模型当前的模型参数进行更新,得到更新后的第一模型。
在一些实施例中,所述第一更新模块还用于:将对下一第一图像样本分别进行增广处理后得到的第一增广图像和第二增广图像,分别确定为当前第一增广图像和当前第二增广图像;利用当前更新后的第一模型,对所述当前第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,并利用当前更新后的第二模型,对所述当前第二增广图像进行目标检测,得到至少一个包括第二预测对象序列的第二检测结果;对每一所述第一预测对象序列和每一所述第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列;基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度,确定当前目标损失值;在所述当前目标损失值满足所述预设条件或对所述第一模型的模型参数进行更新的次数达到次数阈值的情况下,将所述当前更新后的第一模型确定为训练后的所述第一模型。
在一些实施例中,所述第一更新模块还用于:在所述当前目标损失值不满足预设条件的情况下,分别对所述第一模型的模型参数和所述第二模型的模型参数进行下一次更新,得到下一次更新后的第一模型和下一次更新后的第二模型;基于所述下一次更新后的第一模型和所述下一次更新后的第二模型,确定训练后的所述第一模型。
在一些实施例中,所述第一检测结果还包括与所述第一检测结果中的第一预测对象序列对应的第一对象区域和第一对象类别;所述装置还包括:第二获取模块,用于获取所述第一图像样本中的至少一个候选对象,每一所述候选对象具有候选对象区域和候选对象类别;第二匹配模块,用于基于每一所述第一预测对象序列对应的第一对象区域和第一对象类别、以及每一所述候选对象的候选对象区域和候选对象类别,对每一所述第一预测对象序列和每一所述候选对象进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和候选对象;所述第一更新模块还用于:基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度,确定第一损失值;基于每一对具有目标匹配关系的第一预测对象序列和候选对象,确定第二损失值;基于所述第一损失值和所述第二损失值,确定目标损失值。
在一些实施例中,所述第一更新模块还用于:针对每一对具有目标匹配关系的第一预测对象序列和候选对象,基于所述第一预测对象序列对应的第一对象区域和所述候选对象的候选对象区域,确定一第一子损失值,并基于所述第一预测对象序列对应的第一对象类别与所述候选对象的候选对象类别,确定一第二子损失值;基于每一所述第一子损失值和每一所述第二子损失值,确定第二损失值。
在一些实施例中,所述第二获取模块还用于:采用无监督方式,对所述第一图像样本进行目标检测,得到至少一个预测对象区域以及每一所述预测对象区域的伪标签;每一所述预测对象区域的伪标签用于表征所述预测对象区域的预测对象类别;针对每一所述预测对象区域,将所述预测对象区域作为候选对象区域,并将所述预测对象区域的伪标签作为候选对象类别,得到一个候选对象。
在一些实施例中,所述第一检测结果还包括与所述第一检测结果中的第一预测对象序列对应的第一对象区域、第一对象类别,所述第二检测结果还包括与所述第二检测结果中的第二预测对象序列对应的第二对象区域和第二对象类别;所述第一匹配模块还用于:基于每一所述第一预测对象序列对应的第一对象区域和第一对象类别、以及每一所述第二预测对象序列对应的第二对象区域和第二对象类别,对每一所述第一预测对象序列和每一所述第二预测对象序列进行二分图匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列。
在一些实施例中,所述第一匹配模块还用于:基于每一所述第一预测对象序列和每一所述第二预测对象序列,确定至少一个候选序列对集合;每一所述候选序列对集合中包括至少一对具有候选匹配关系的第一预测对象序列和第二预测对象序列;针对每一候选序列对集合,基于所述候选序列对集合中每一对具有候选匹配关系的第一预测对象序列和第二预测对象序列中所述第一预测对象序列对应的第一对象区域和第一对象类别、以及所述第二预测对象序列对应的第二对象区域和第二对象类别,确定所述候选序列对集合的匹配损失;将所述至少一个候选序列对集合中匹配损失最小的候选序列对集合中的每一对具有候选匹配关系的第一预测对象序列和第二预测对象序列,确定为少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列。
在一些实施例中,所述第一模型包括特征提取网络和转化器网络;所述第一检测模块还用于:利用所述第一模型的特征提取网络,对所述第一增广图像进行特征提取,得到图像特征信息;利用所述第一模型的转换器网络,对所述图像特征信息进行预测处理,得到至少一个第一预测对象序列。
在一些实施例中,所述第一模型还包括第一前馈神经网络;所述第一检测模块还用于:利用所述第一模型的转换器网络,对所述图像特征信息进行预测处理,得到至少一个特征序列;利用所述第一前馈神经网络,将每一所述特征序列映射至目标维度,得到至少一个第一预测对象序列。
在一些实施例中,所述第一检测结果还包括第一对象区域和第一对象类别,所述第一模型还包括第二前馈神经网络和第三前馈神经网络;所述第一检测模块还用于:针对每一所述特征序列,利用所述第二前馈神经网络,对所述特征序列进行区域预测,得到第一对象区域,并利用所述第三前馈神经网络,对所述特征序列进行类别预测,得到第一对象类别。
在一些实施例中,所述第二模型与所述第一模型具有相同的网络结构。
在一些实施例中,所述第一获取模块还用于:对第一图像样本进行第一图像增广处理,得到第一增广图像;对所述第一图像样本进行第二图像增广处理,得到第二增广图像。
在一些实施例中,所述第一图像增广处理包括以下至少之一:颜色抖动、灰度处理、高斯模糊、随机擦除;所述第二图像增广处理包括以下至少之一:随机缩放、随机裁剪、随机翻转、随机调整尺寸。
在一些实施例中,所述装置还包括:确定模块,用于基于训练后的所述第一模型,确定初始的第三模型;第二更新模块,用于基于至少一个第二图像样本,对所述第三模型的模型参数进行更新,得到训练后的所述第三模型。
图9为本申请实施例提供的一种图像处理装置的组成结构示意图,如图9所示,图像处理装置900包括:第三获取模块910和第二检测模块920,其中:
第三获取模块910,用于获取待处理图像;
第二检测模块920,用于利用已训练的第四模型,对所述待处理图像进行目标检测,得到第三检测结果;其中,所述第三模型包括以下至少之一:采用上述实施例中所述的模型训练方法得到的第一模型,采用上述实施例中所述的模型训练方法得到的第三模型。
以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请装置实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
需要说明的是,本申请实施例中,如果以软件功能模块的形式实现上述的模型训练方法或图像处理方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本申请实施例不限制于任何特定的硬件和软件结合。
本申请实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法中的步骤。
本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法中的步骤。所述计算机可读存储介质可以是瞬时性的,也可以是非瞬时性的。
本申请实施例提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序被计算机读取并执行时,实现上述方法中的部分或全部步骤。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software DevelopmentKit,SDK)等等。
这里需要指出的是:以上存储介质、计算机程序产品和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请存储介质、计算机程序产品和设备实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
需要说明的是,图10为本申请实施例中计算机设备的一种硬件实体示意图,如图10所示,该计算机设备1000的硬件实体包括:处理器1001、通信接口1002和存储器1003,其中:
处理器1001通常控制计算机设备1000的总体操作。
通信接口1002可以使计算机设备通过网络与其他终端或服务器通信。
存储器1003配置为存储由处理器1001可执行的指令和应用,还可以缓存待处理器1001以及计算机设备1000中各模块待处理或已经处理的数据(例如,图像数据、音频数据、语音通信数据和视频通信数据),可以通过闪存(FLASH)或随机访问存储器(Random AccessMemory,RAM)实现。处理器1001、通信接口1002和存储器1003之间可以通过总线1004进行数据传输。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。另外,在本申请各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
Claims (24)
1.一种模型训练方法,其特征在于,所述方法包括:
获取分别对第一图像样本进行增广处理后得到的第一增广图像和第二增广图像;
利用待训练的第一模型,对所述第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,并利用第二模型,对所述第二增广图像进行目标检测,得到至少一个包括第二预测对象序列的第二检测结果;
对每一所述第一预测对象序列和每一所述第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列;
基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,对所述第一模型的模型参数进行至少一次更新,得到训练后的所述第一模型。
2.根据权利要求1所述的方法,其特征在于,所述基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,对所述第一模型的模型参数进行至少一次更新,得到训练后的所述第一模型,包括:
基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度,确定目标损失值;
在所述目标损失值不满足预设条件的情况下,对所述第一模型的模型参数进行更新,得到更新后的第一模型;
基于更新后的第一模型,确定训练后的所述第一模型。
3.根据权利要求2所述的方法,其特征在于,所述在所述目标损失值不满足预设条件的情况下,对所述第一模型的模型参数进行更新,得到更新后的第一模型,包括:
在所述目标损失值不满足预设条件的情况下,分别对所述第一模型的模型参数和所述第二模型的模型参数进行更新,得到更新后的第一模型和更新后的第二模型;
所述基于更新后的第一模型,确定训练后的所述第一模型,包括:
基于更新后的第一模型和更新后的第二模型,确定训练后的所述第一模型。
4.根据权利要求3所述的方法,其特征在于,所述分别对所述第一模型的模型参数和所述第二模型的模型参数进行更新,得到更新后的第一模型和更新后的第二模型,包括:
基于所述第一模型当前的模型参数,对所述第二模型的模型参数进行动量更新,得到更新后的第二模型;
采用梯度更新的方式,对所述第一模型当前的模型参数进行更新,得到更新后的第一模型。
5.根据权利要求3或4所述的方法,其特征在于,所述基于更新后的第一模型和更新后的第二模型,确定训练后的所述第一模型,包括:
将对下一第一图像样本分别进行增广处理后得到的第一增广图像和第二增广图像,分别确定为当前第一增广图像和当前第二增广图像;
利用当前更新后的第一模型,对所述当前第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,并利用当前更新后的第二模型,对所述当前第二增广图像进行目标检测,得到至少一个包括第二预测对象序列的第二检测结果;
对每一所述第一预测对象序列和每一所述第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列;
基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度,确定当前目标损失值;
在所述当前目标损失值满足所述预设条件或对所述第一模型的模型参数进行更新的次数达到次数阈值的情况下,将所述当前更新后的第一模型确定为训练后的所述第一模型。
6.根据权利要5所述的方法,其特征在于,所述基于更新后的第一模型和更新后的第二模型,确定训练后的所述第一模型,还包括:
在所述当前目标损失值不满足预设条件的情况下,分别对所述第一模型的模型参数和所述第二模型的模型参数进行下一次更新,得到下一次更新后的第一模型和下一次更新后的第二模型;
基于所述下一次更新后的第一模型和所述下一次更新后的第二模型,确定训练后的所述第一模型。
7.根据权利要求2至6中任一项所述的方法,其特征在于,所述第一检测结果还包括与所述第一检测结果中的第一预测对象序列对应的第一对象区域和第一对象类别;所述方法还包括:
获取所述第一图像样本中的至少一个候选对象,每一所述候选对象具有候选对象区域和候选对象类别;
基于每一所述第一预测对象序列对应的第一对象区域和第一对象类别、以及每一所述候选对象的候选对象区域和候选对象类别,对每一所述第一预测对象序列和每一所述候选对象进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和候选对象;
所述基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度,确定目标损失值,包括:
基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列之间的相似度,确定第一损失值;
基于每一对具有目标匹配关系的第一预测对象序列和候选对象,确定第二损失值;
基于所述第一损失值和所述第二损失值,确定目标损失值。
8.根据权利要求7所述的方法,其特征在于,所述基于每一对具有目标匹配关系的第一预测对象序列和候选对象,确定第二损失值,包括:
针对每一对具有目标匹配关系的第一预测对象序列和候选对象,基于所述第一预测对象序列对应的第一对象区域和所述候选对象的候选对象区域,确定一第一子损失值,并基于所述第一预测对象序列对应的第一对象类别与所述候选对象的候选对象类别,确定一第二子损失值;
基于每一所述第一子损失值和每一所述第二子损失值,确定第二损失值。
9.根据权利要求7或8所述的方法,其特征在于,所述获取所述第一图像样本中的至少一个候选对象,每一所述候选对象具有候选对象区域和候选对象类别,包括:
采用无监督方式,对所述第一图像样本进行目标检测,得到至少一个预测对象区域以及每一所述预测对象区域的伪标签;每一所述预测对象区域的伪标签用于表征所述预测对象区域的预测对象类别;
针对每一所述预测对象区域,将所述预测对象区域作为候选对象区域,并将所述预测对象区域的伪标签作为候选对象类别,得到一个候选对象。
10.根据权利要求1至9中任一项所述的方法,其特征在于,所述第一检测结果还包括与所述第一检测结果中的第一预测对象序列对应的第一对象区域、第一对象类别,所述第二检测结果还包括与所述第二检测结果中的第二预测对象序列对应的第二对象区域和第二对象类别;
所述对每一所述第一预测对象序列和每一所述第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,包括:
基于每一所述第一预测对象序列对应的第一对象区域和第一对象类别、以及每一所述第二预测对象序列对应的第二对象区域和第二对象类别,对每一所述第一预测对象序列和每一所述第二预测对象序列进行二分图匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列。
11.根据权利要求10所述的方法,其特征在于,所述基于每一所述第一预测对象序列对应的第一对象区域和第一对象类别、以及每一所述第二预测对象序列对应的第二对象区域和第二对象类别,对每一所述第一预测对象序列和每一所述第二预测对象序列进行二分图匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,包括:
基于每一所述第一预测对象序列和每一所述第二预测对象序列,确定至少一个候选序列对集合;每一所述候选序列对集合中包括至少一对具有候选匹配关系的第一预测对象序列和第二预测对象序列;
针对每一候选序列对集合,基于所述候选序列对集合中每一对具有候选匹配关系的第一预测对象序列和第二预测对象序列中所述第一预测对象序列对应的第一对象区域和第一对象类别、以及所述第二预测对象序列对应的第二对象区域和第二对象类别,确定所述候选序列对集合的匹配损失;
将所述至少一个候选序列对集合中匹配损失最小的候选序列对集合中的每一对具有候选匹配关系的第一预测对象序列和第二预测对象序列,确定为少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列。
12.根据权利要求1至11中任一项所述的方法,其特征在于,所述第一模型包括特征提取网络和转化器网络;
所述利用待训练的第一模型,对所述第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,包括:
利用所述第一模型的特征提取网络,对所述第一增广图像进行特征提取,得到图像特征信息;
利用所述第一模型的转换器网络,对所述图像特征信息进行预测处理,得到至少一个第一预测对象序列。
13.根据权利要求12所述的方法,其特征在于,所述第一模型还包括第一前馈神经网络;
所述利用所述第一模型的转换器网络,对所述图像特征信息进行预测处理,得到至少一个第一预测对象序列,包括:
利用所述第一模型的转换器网络,对所述图像特征信息进行预测处理,得到至少一个特征序列;
利用所述第一前馈神经网络,将每一所述特征序列映射至目标维度,得到至少一个第一预测对象序列。
14.根据权利要求13所述的方法,其特征在于,所述第一检测结果还包括第一对象区域和第一对象类别,所述第一模型还包括第二前馈神经网络和第三前馈神经网络;
所述利用待训练的第一模型,对所述第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,还包括:
针对每一所述特征序列,利用所述第二前馈神经网络,对所述特征序列进行区域预测,得到第一对象区域,并利用所述第三前馈神经网络,对所述特征序列进行类别预测,得到第一对象类别。
15.根据权利要求12至14中任一项所述的方法,其特征在于,所述第二模型与所述第一模型具有相同的网络结构。
16.根据权利要求1至15中任一项所述的方法,其特征在于,所述获取分别对第一图像样本进行增广处理后得到的第一增广图像和第二增广图像,包括:
对第一图像样本进行第一图像增广处理,得到第一增广图像;
对所述第一图像样本进行第二图像增广处理,得到第二增广图像。
17.根据权利要求16所述的方法,其特征在于,
所述第一图像增广处理包括以下至少之一:颜色抖动、灰度处理、高斯模糊、随机擦除;
所述第二图像增广处理包括以下至少之一:随机缩放、随机裁剪、随机翻转、随机调整尺寸。
18.根据权利要求1至17中任一项所述的方法,其特征在于,所述方法还包括:
基于训练后的所述第一模型,确定初始的第三模型;
基于至少一个第二图像样本,对所述第三模型的模型参数进行更新,得到训练后的所述第三模型。
19.一种图像处理方法,其特征在于,包括:
获取待处理图像;
利用已训练的第四模型,对所述待处理图像进行目标检测,得到第三检测结果;其中,所述第三模型包括以下至少之一:采用如权利要求1至17中任一项所述的模型训练方法得到的第一模型,采用如权利要求18所述的模型训练方法得到的第三模型。
20.一种模型训练装置,其特征在于,包括:
第一获取模块,用于获取分别对第一图像样本进行增广处理后得到的第一增广图像和第二增广图像;
第一检测模块,用于利用待训练的第一模型,对所述第一增广图像进行目标检测,得到至少一个包括第一预测对象序列的第一检测结果,并利用第二模型,对所述第二增广图像进行目标检测,得到至少一个包括第二预测对象序列的第二检测结果;
第一匹配模块,用于对每一所述第一预测对象序列和每一所述第二预测对象序列进行匹配,得到至少一对具有目标匹配关系的第一预测对象序列和第二预测对象序列;
第一更新模块,用于基于每一对具有目标匹配关系的第一预测对象序列和第二预测对象序列,对所述第一模型的模型参数进行至少一次更新,得到训练后的所述第一模型。
21.一种图像处理装置,其特征在于,包括:
第三获取模块,用于获取待处理图像;
第二检测模块,用于利用已训练的第四模型,对所述待处理图像进行目标检测,得到第三检测结果;其中,所述第三模型包括以下至少之一:采用如权利要求1至17中任一项所述的模型训练方法得到的第一模型,采用如权利要求18所述的模型训练方法得到的第三模型。
22.一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至19任一项所述方法中的步骤。
23.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至19任一项所述方法中的步骤。
24.一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序被计算机读取并执行时,实现权利要求1至19中任一项所述方法中的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111667489.4A CN114359592A (zh) | 2021-12-31 | 2021-12-31 | 模型训练及图像处理方法、装置、设备、存储介质 |
PCT/CN2022/095298 WO2023123847A1 (zh) | 2021-12-31 | 2022-05-26 | 模型训练及图像处理方法、装置、设备、存储介质及计算机程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111667489.4A CN114359592A (zh) | 2021-12-31 | 2021-12-31 | 模型训练及图像处理方法、装置、设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114359592A true CN114359592A (zh) | 2022-04-15 |
Family
ID=81104446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111667489.4A Pending CN114359592A (zh) | 2021-12-31 | 2021-12-31 | 模型训练及图像处理方法、装置、设备、存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114359592A (zh) |
WO (1) | WO2023123847A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023123847A1 (zh) * | 2021-12-31 | 2023-07-06 | 上海商汤智能科技有限公司 | 模型训练及图像处理方法、装置、设备、存储介质及计算机程序产品 |
CN117077541A (zh) * | 2023-10-11 | 2023-11-17 | 北京芯联心科技发展有限公司 | 一种医疗模型的参数高效微调方法和系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6226388B1 (en) * | 1999-01-05 | 2001-05-01 | Sharp Labs Of America, Inc. | Method and apparatus for object tracking for automatic controls in video devices |
CN105224623B (zh) * | 2015-09-22 | 2019-06-18 | 北京百度网讯科技有限公司 | 数据模型的训练方法及装置 |
CN113570398A (zh) * | 2021-02-02 | 2021-10-29 | 腾讯科技(深圳)有限公司 | 推广数据处理方法、模型训练方法、系统和存储介质 |
CN114359592A (zh) * | 2021-12-31 | 2022-04-15 | 上海商汤智能科技有限公司 | 模型训练及图像处理方法、装置、设备、存储介质 |
-
2021
- 2021-12-31 CN CN202111667489.4A patent/CN114359592A/zh active Pending
-
2022
- 2022-05-26 WO PCT/CN2022/095298 patent/WO2023123847A1/zh unknown
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023123847A1 (zh) * | 2021-12-31 | 2023-07-06 | 上海商汤智能科技有限公司 | 模型训练及图像处理方法、装置、设备、存储介质及计算机程序产品 |
CN117077541A (zh) * | 2023-10-11 | 2023-11-17 | 北京芯联心科技发展有限公司 | 一种医疗模型的参数高效微调方法和系统 |
CN117077541B (zh) * | 2023-10-11 | 2024-01-09 | 北京芯联心科技发展有限公司 | 一种医疗模型的参数高效微调方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2023123847A1 (zh) | 2023-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111985369A (zh) | 基于跨模态注意力卷积神经网络的课程领域多模态文档分类方法 | |
CN112016315B (zh) | 模型训练、文本识别方法及装置、电子设备、存储介质 | |
CN114359592A (zh) | 模型训练及图像处理方法、装置、设备、存储介质 | |
CN113298096B (zh) | 训练零样本分类模型的方法、系统、电子设备及存储介质 | |
CN115239638A (zh) | 一种工业缺陷检测方法、装置、设备及可读存储介质 | |
CN114495129B (zh) | 文字检测模型预训练方法以及装置 | |
CN114358203A (zh) | 图像描述语句生成模块的训练方法及装置、电子设备 | |
CN112329476A (zh) | 一种文本纠错方法及装置、设备、存储介质 | |
CN111767697B (zh) | 文本处理方法、装置、计算机设备以及存储介质 | |
CN116229530A (zh) | 图像处理方法、装置、存储介质及电子设备 | |
CN112712127A (zh) | 一种结合图卷积神经网络的图像情感极性分类方法 | |
CN112101207A (zh) | 一种目标跟踪方法、装置、电子设备及可读存储介质 | |
CN110717401A (zh) | 年龄估计方法及装置、设备、存储介质 | |
CN113435531B (zh) | 零样本图像分类方法、系统、电子设备及存储介质 | |
CN117351940B (zh) | 基于语音大模型的合成语音检测方法及装置 | |
CN113469111A (zh) | 图像关键点检测方法及系统、电子设备、存储介质 | |
CN116503670A (zh) | 图像分类及模型训练方法、装置和设备、存储介质 | |
CN114707518B (zh) | 面向语义片段的目标情感分析方法、装置、设备及介质 | |
CN115862015A (zh) | 文字识别系统的训练方法及装置、文字识别方法及装置 | |
CN114155388B (zh) | 一种图像识别方法、装置、计算机设备和存储介质 | |
CN113609355B (zh) | 一种基于动态注意力与图网络推理的视频问答系统、方法、计算机及存储介质 | |
CN114565797A (zh) | 一种用于分类的神经网络的训练、图像分类方法以及装置 | |
CN114741546A (zh) | 一种图像处理及模型训练方法、装置、设备、存储介质 | |
CN114139703A (zh) | 知识蒸馏方法及装置、存储介质及电子设备 | |
CN113822302A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40064041 Country of ref document: HK |