一种识别方法、装置及相关设备与流程

文档序号:37935261发布日期:2024-05-11 00:14阅读:19来源:国知局
一种识别方法、装置及相关设备与流程

本技术涉及计算机,尤其涉及一种识别方法、装置及相关设备。


背景技术:

1、目标识别是指利用计算机技术对场景中的目标进行识别分类,是计算机视觉领域中的重要研究之一。近年来,目标识别在闭集场景中已经取得了飞速的发展,通过闭集中有限类别训练的模型在上述有限类别的测试集上展现出卓越的性能。然而,在现实的开放场景测试中,数据的类别远不止训练集中的有限类别。在实际应用场景中,有限类别上训练的模型通常会对闭集类别之外的数据产生严重的误分类现象,将未知类的数据识别成已知类别。因此,如何对闭集数据进行准确分类的同时也能识别出不属于闭集类别的开集数据是一个亟待解决的技术问题。


技术实现思路

1、本技术提供一种识别方法、装置及相关设备,能够提高模型对闭集之外的未知类的检测精度,提高模型分类精度。

2、第一方面,本技术提供一种识别方法,该方法包括:计算设备将待识别图像输入多个训练好的识别模型,其中,每个训练好的识别模型包括图像语言预训练模型和包括多个提示词的提示模板,各个训练好的识别模型的提示模板各不相同;计算设备基于多个训练好的识别模型确定待识别图像属于各个类别的概率,其中,第i个训练好的识别模型输出待识别图像属于第i个训练好的识别模型对应的多个类别的概率;最后根据待识别图像属于各个类别的概率,确定待识别图像的类别。

3、在训练用于联合进行分类识别的多个识别模型时,对于训练每个识别模型的子集,设置一组包括多个提示词的提示模板,构建该子集对应的包括视觉语言预训练模型和提示模板的识别模型,再通过相同的方法分别用各个子集训练对应的识别模型,从而能够将大规模数据集的开集识别模型的训练转换为多个基于视觉语言预训练模型的小数据集上的训练,使得小规模数据集的训练方法复用到大规模数据集的开集识别。在进行待识别图像的识别时,通过多个训练好的识别模型进行联合预测,能够提高模型对待识别图像识别的准确性。采用上述训练好的多个识别模型进行联合预测,将基于大规模数据集的识别模型的预测转换成基于多个视觉语言预训练模型的联合预测,对待识别图像通过多个训练好的识别模型分别进行预测,能够提高最终预测的准确性。

4、在一种可能的实现方式中,上述第i个训练好的识别模型对应的多个类别包括闭集类别和开集类别,其中,闭集类别是用于训练第i个识别模型的第i个子集所包括的类别,开集类别是除训练集所包括的类别之外的类别,训练集是用于训练多个识别模型的数据集,第i个子集属于所述训练集。

5、应理解,训练好的识别模型能够输出多个类别的概率,这多个类别是在训练该识别模型时的类别标签对应的类别。也就是说,当上述多个类别包括开集类别时,在根据训练集对构建的识别模型进行训练时,除了使训练集中的类别标签参与模型训练,还用与下游任务无关的类别标签参与模型的训练,能够使训练好的模型在进行分类识别时,降低标签偏差,即降低将开集中的未知类别识别为闭集中的类别的概率,提高识别精度。

6、在一种可能的实现方式中,上述根据待识别图像属于各个类别的概率,确定待识别图像的类别,包括:获取各个识别模型输出的多个类别的概率中,各个识别模型对应的闭集类别中各个类别的概率;在各个识别模型对应的闭集类别中各个类别的概率的最大值大于或等于预设阈值的情况下,将该最大值所对应的类别确定为待识别图像的类别,或者,在最大值小于预设阈值的情况下,确定待识别图像属于未知类。

7、通过多个模型对待识别图像进行识别,基于闭集类别中概率最大的类别确定该待识别图像的类别,能够降低误识别的情况,提高识别的正确率。

8、在一种可能的实现方式中,上述方法还包括对各个识别模型的训练,具体包括:

9、计算设备将训练集划分为g个子集,每个子集所包括的图像类别不相同;通过第i个子集对第i个子集对应的识别模型进行训练,得到第i个训练好的识别模型,其中,第i个子集对应的识别模型包括图像语言预训练模型和第i个子集对应的提示模板,i为小于或等于g的正整数。

10、在一种可能的实现方式中,上述通过第i个子集对第i个子集对应的识别模型进行训练,得到第i个训练好的识别模型,包括:确定第i个子集对应的负类别标签,该负类别标签属于上述开集类别对应的标签;根据第i个子集、第i个子集对应的负类别标签、第i个子集对应的提示模板对第i个子集对应的识别模型进行训练,得到第i个子集对应的第i个训练好的识别模型。

11、在一种可能的实现方式中,上述根据第i个子集、第i个子集对应的负类别标签、第i个子集对应的提示模板对第i个子集对应的识别模型进行训练,包括:

12、根据所述第i个子集中的第一样本图像、所述第i个子集对应的负类别标签、所述第i个子集对应的提示模板对第i个子集对应的识别模型进行训练,更新所述第i个子集对应的提示模板对应的词向量embedding。

13、对于训练集,设置一组包括多个提示词的提示模板,构建对应的包括视觉语言预训练模型和提示模板的识别模型,并在根据训练集对构建的识别模型进行训练时,除了使训练集中的类别标签参与模型训练,还将与下游任务无关的类别的标签参与模型的训练,能够使训练好的模型在进行分类识别时,降低标签偏差(即将开集中的未知类别识别为闭集中的类别)。另外,在大规模数据集上训练具备开集识别的模型时,将大规模数据集划分为若干个子集,每个子集包括大规模数据集中的部分训练数据;对于每个子集,设置一组包括多个提示词的提示模板,构建对应的包括视觉语言预训练模型和提示模板的识别模型,再通过相同的方法分别用各个子集训练对应的识别模型,在训练的过程中,不更新视觉语言预训练模型的参数,仅根据各个子集更新对应的提示模板,从而能够将大规模数据集的开集识别模型的训练转换为多个基于视觉语言预训练模型的小数据集上的训练,使得小规模数据集的训练方法复用到大规模数据集的开集识别,能够降低大规模数据集训练的模型在预测时由于类别过多导致类间概率差异小导致的误识别问题。

14、第二方面,本技术实施例提供一种识别装置,该装置包括:获取模块,用于获取待识别图像,将待识别图像输入g个训练好的识别模型,其中,每个训练好的识别模型包括图像语言预训练模型和包括多个提示词的提示模板,各个训练好的识别模型的提示模板各不相同,g为大于1的整数;识别模块,用于基于多个训练好的识别模型确定待识别图像属于各个类别的概率,其中,第i个训练好的识别模型输出待识别图像属于第i个训练好的识别模型对应的多个类别的概率;识别模块,还用于根据待识别图像属于各个类别的概率,确定待识别图像的类别。

15、在一种可能的实现方式中,第i个训练好的识别模型对应的多个类别包括闭集类别和开集类别,其中,闭集类别是用于训练第i个识别模型的第i个子集所包括的类别,开集类别是除训练集所包括的类别之外的类别,训练集是用于训练多个识别模型的数据集,第i个子集属于训练集。

16、在一种可能的实现方式中,识别模块,具体用于:

17、获取各个识别模型输出的多个类别的概率中,各个识别模型对应的闭集类别中各个类别的概率;在各个识别模型对应的闭集类别中各个类别的概率的最大值大于或等于预设阈值的情况下,将该最大值所对应的类别确定为待识别图像的类别,或者,在最大值小于预设阈值的情况下,确定待识别图像属于未知类。

18、在一种可能的实现方式中,装置还包括训练模块,用于将训练集划分为g个子集,每个子集所包括的图像类别不相同;通过第i个子集对第i个子集对应的识别模型进行训练,得到第i个训练好的识别模型,其中,第i个子集对应的识别模型包括图像语言预训练模型和第i个子集对应的提示模板,i为小于或等于g的正整数。

19、在一种可能的实现方式中,训练模块具体用于:确定第i个子集对应的负类别标签,负类别标签属于开集类别对应的标签;根据第i个子集、第i个子集对应的负类别标签、第i个子集对应的提示模板对第i个子集对应的识别模型进行训练,得到第i个子集对应的第i个训练好的识别模型。

20、在一种可能的实现方式中,上述训练装置具体用于:根据第i个子集中的第一样本图像、第i个子集对应的负类别标签、第i个子集对应的提示模板对第i个子集对应的识别模型进行训练,更新第i个子集对应的提示模板对应的词向量embedding。

21、第三方面,本技术提供一种计算设备集群,包括至少一个计算设备,每个计算设备包括处理器和存储器;所述至少一个计算设备的处理器用于执行所述至少一个计算设备的存储器中存储的指令,以使得所述计算设备集群执行上述第一方面或第一方面任意可能的实现方式中所述的方法。

22、第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时,所述处理器执行如上述第一方面或第一方面任意可能的实现方式中所述的方法。

23、第五方面,本技术提供一种计算机程序产品,所述计算机程序产品包括计算机指令,在被计算设备执行时,计算设备执行如上述第一方面或第一方面任意可能的实现方式中所述的方法。

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