一种目标检测交叉数据集的混合训练方法技术

技术编号:34804181 阅读:16 留言:0更新日期:2022-09-03 20:11
本发明专利技术公开了一种目标检测交叉数据集的混合训练方法,在目标检测任务训练中,能够动态生成mask矩阵,通过本发明专利技术中阀值算法选取mask矩阵中的最优阈值,以最优阀值为依据给mask矩阵赋值,同时决定哪些分类loss需要损失计算,最后对这些分类loss进行分类损失计算;针对已有的数据已经训练好了一个模型,需要增加新类别的数据集训练时,能够直接混合多个数据集,而不需要对混合后的数据集进行交叉标注,也能达到较高的模型精度,可以大大节省数据标注的时间和成本。据标注的时间和成本。据标注的时间和成本。

【技术实现步骤摘要】
一种目标检测交叉数据集的混合训练方法


[0001]本专利技术涉及数据集训练
,具体涉及一种目标检测交叉数据集的混合训练方法。

技术介绍

[0002]在目标检测任务中,已经在数据集A中训练完成了检测模型,需要增加新的类别检测,现有的做法一般有4种分别为,1、直接混合A、B数据集进行训练,会导致A数据集中B的类别没有标注,同时B数据集中A的类别没有标注,直接混合训练会降低模型的精度;2、对A、B数据集进行交叉标注,对A数据集标注所有B数据集中的类别,同时对数据集B标注所有A中的类别。该方法需要进行大量的数据标注工作;3、对A、B数据集分别训练模型,训练好的模型记为MA、MB,使用MA模型对数据集B推理生成A类别的标签,使用MB模型对数据集A推理生成B类别的标签,该方法依赖MA、MB模型的精度,生成的标签会有大量的错误标签和漏检,实际应用效果不佳;4、对于数据集A中的每一个样本,计算分类损失时,添加一个mask屏蔽B类别的损失,对于数据集B中的每一个样本,计算分类损失时,添加一个mask屏蔽A类别的损失,该方法将A、B数据集计算分类损失时相互进行屏蔽,没有考虑B数据集中潜在的A类负样本和A数据集中潜在的B类负样本,导致对最终模型的精度提升有限。

技术实现思路

[0003]本专利技术的目的在于,提供一种目标检测交叉数据集的混合训练方法,在目标检测任务训练中,针对已有的数据已经训练好了一个模型,需要增加新类别的数据集训练时,能够直接混合多个数据集,而不需要对混合后的数据集进行交叉标注,也能达到较高的模型精度,可以大大节省数据标注的时间和成本。
[0004]为解决上述技术问题,本专利技术采用如下的技术方案:一种目标检测交叉数据集的混合训练方法,包括以下步骤:
[0005]步骤1、样本标签分配:输入的图片经过常规方法处理后生成特征图Featuremap,特征图Featuremap上的点即为样本,样本在经过匹配之后,分配样本标签为正样本或负样本;
[0006]步骤2、动态生成mask矩阵:根据特征图Featuremap动态生成mask矩阵,对特征图Featuremap的样本分别进行阀值计算,同时判断其中样本标签,将标签为正样本的进行分类损失计算并给mask矩阵赋值;标签为负样本的需要根据样本阀值判断是否进行分类损失计算并给mask矩阵赋值;
[0007]步骤3、分类损失计算:用常规方法进行分类损失计算,决定分类loss是否继续参与训练。
[0008]前述步骤1中输入的图片经过骨干网络和特征金字塔网络后生成特征图Featuremap,特征图Featuremap的每一个点对应一个预先定义尺寸的样本,一个样本对应于输入图片上的一个矩形区域,特征图Featuremap上每个样本的激活值代表该样本属于对
应类别的概率,样本经过匹配之后得出正样本和负样本;样本的匹配过程为:每个样本通过最大IoU或者最近中心点的距离与真实的GT进行匹配,样本与GT匹配成功后被分配到该GT对应的类别标签,对于匹配成功的样本称之为正样本,未匹配任何GT的样本称之为负样本。
[0009]前述样本类别标签具体可以为:设A数据集中包含的类别数为C1,类别标签为{1,...,C1},B数据集中包含的类别数为C2,类别标签为{C1+1,...,C1+C2},数据集A的负样本标签为C1+C2+1,数据集B的负样本标签为C1+C2+2。
[0010]前述步骤2中根据特征图Featuremap生成的样本标签,动态的生成mask矩阵:设一张图片的特征图Featuremap生成的样本数为N,A和B数据集的总类别数为C1+C2,则特征图Featuremap包含C1+C2个通道,每个通道表示在该位置存在对应类别的概率,全部激活值输出为N*(C1+C2),同时动态的生成N*(C1+C2)的一个mask矩阵,样本和mask矩阵一一对应,mask矩阵中满足条件的置1,不满足条件的置0,将mask乘到最后的分类loss中,动态的决定是否忽略某个样本的某个类别的loss。
[0011]前述mask矩阵中置为1或0的判断过程为:特征图Featuremap的每一个样本,判断是否为正样本,如果是正样本则将mask中对应的第i行置1,对于i∈[0,N),mask[i,:]=1,如果不是正样本,则判断样本的标签是C1+C2+1或C1+C2+2,若样本标签为C1+C2+1,则循环判断样本的激活值是否大于B数据集中每一类的最优阈值T,大于最优阈值T,将样本对应的类别mask位置置0,对于样本编号为i,类别为ci,那么mask[i,ci]=0,不大于最优阈值T则将样本对应的类别mask位置置1,对于样本编号为i,类别为ci,那么mask[i,ci]=1;若样本标签为C1+C2+2,则循环判断样本的激活值是否大于A数据集中每一类的最优阈值T,大于最优阈值T,将样本对应的类别mask位置置0,对于样本编号为i,类别为ci,那么mask[i,ci]=0,不大于最优阈值T则将样本对应的类别mask位置置1,对于样本编号为i,类别为ci,那么mask[i,ci]=1。
[0012]前述最优阈值T的选取过程:在一种实现中,可以将阈值区间从0

1均匀分成K个区间,设置参数K=100,则每个区间的分割为{0.01,0.02,.....,0.99,1},正负样本分别统计,记为P_bin和N_bin,P_bin和N_bin的维度为(C1+C2)*100,每一个类别单独统计激活值落在bin区间的总数,对于正样本的样本激活值,对应类别的P_bin的计数加一,样本的类别为i,激活值为j,那么P_bin[i,j]+=1,对于负样本的样本激活值,对应类别的N_bin的计数加一,样本的类别为i,激活值为j,那么N_bin[i,j]+=1。训练完一轮迭代后,可以统计得到训练集中所有类别的正负样本在100个不同的bin的计数,对正负样本的计数bin计算F1分数,取F1分数最高的bin值作为动态mask的生成阈值T;
[0013]F1分数的计算公式(1)为:
[0014][0015]计算公式(1)中precision的计算公式(2)为
[0016]计算公式(1)中recall的计算公式(3)为
[0017]计算公式(2)和计算公式(3)中:TP表示预测为正样本,标签也是正样本,FP表示预测为正样本,标签是负样本,FN表示预测为负样本,标签是正样本;对于一个epoch中统计得
到的P_bin和N_bin,那么对于类别为ci的第i个bin,其TP为FP为FN为将TP、FP、FN带入公式(1)、(2)、(3)中可以得到每个类别在每个bin下的F1分数,对于每一个类别取F1分数最大值对应的bin值作为该类的mask阈值,记为最优阈值T,维度为(C1+C2)。
[0018]前述步骤3分类损失计算过程:目标检测的分类损失可以用交叉熵或Focalloss,直接将mask矩阵和分类loss相乘,即可决定分类loss是否继续参与训练;
[本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种目标检测交叉数据集的混合训练方法,其特征在于,包括以下步骤:步骤1、样本标签分配:输入的图片经过常规方法处理后生成特征图Featuremap,特征图Featuremap上的点即为样本,样本在经过匹配之后,分配样本标签为正样本或负样本;步骤2、动态生成mask矩阵:根据特征图Featuremap动态生成mask矩阵,对特征图Featuremap的样本分别进行阀值计算,给mask矩阵赋值,同时判断其中样本标签,将标签为正样本的进行分类损失计算并给mask矩阵赋值;标签为负样本的需要根据样本阀值判断是否进行分类损失计算并给mask矩阵赋值;步骤3、分类损失计算:用常规方法进行分类损失计算,决定分类loss是否继续参与训练。2.根据权利要求1所述的一种目标检测交叉数据集的混合训练方法,其特征在于,步骤1中输入的图片经过骨干网络和特征金字塔网络后生成特征图Featuremap,特征图Featuremap的每一个点对应一个预先定义尺寸的样本,一个样本对应于输入图片上的一个矩形区域,特征图Featuremap上每个样本的激活值代表该样本属于对应类别的概率,样本经过匹配之后得出正样本和负样本;样本的匹配过程为:每个样本通过最大IoU或者最近中心点的距离与真实的GT进行匹配,样本与GT匹配成功后被分配到该GT对应的类别标签,对于匹配成功的样本称之为正样本,未匹配任何GT的样本称之为负样本。3.根据权利要求2所述的一种目标检测交叉数据集的混合训练方法,其特征在于,样本类别标签具体可以为:设A数据集中包含的类别数为C1,类别标签为{1,...,C1},B数据集中包含的类别数为C2,类别标签为{C1+1,...,C1+C2},数据集A的负样本标签为C1+C2+1,数据集B的负样本标签为C1+C2+2。4.据权利要求1或权利要求3所述的一种目标检测交叉数据集的混合训练方法,其特征在于,步骤2中根据特征图Featuremap生成的样本标签,动态的生成mask矩阵:设一张图片的特征图Featuremap生成的样本数为N,A和B数据集的总类别数为C1+C2,则特征图Featuremap包含C1+C2个通道,每个通道表示在该位置存在对应类别的概率,全部激活值输出为N*(C1+C2),同时动态的生成N*(C1+C2)的一个mask矩阵,样本和mask矩阵一一对应,mask矩阵中满足条件的置1,不满足条件的置0,将mask乘到最后的分类loss中,动态的决定是否忽略某个样本的某个类别的loss。5.据权利要求4所述的一种目标检测交叉数据集的混合训练方法,其特征在于,mask矩阵中置为1或0的判断过程为:特征图Featuremap的每一个样本,判断是否为正样本,如果是正样本则将mask中对应的第i行置1,对于i∈[0,N),mask[i,:]=1,如果不是正样本,则判断样本的标签是C1+C2+1或C1+C2+2,若样本标签为C1+C2+1,则循环判断样本的激活值是否大于B数据集中每一类的最优阈值T,大于最优阈值T,将样本对应的类别mask位置置0,对于样本编号为i,类别为ci,那么mask[i,ci]=0,不大于最优阈值T则将样本对应的类别mask位置置1,对于样本编号为i,类别为ci,那么mask[i,ci]=1;若样本标签为C1+C2+2,则循环判断样本的激活值是否大于A数据集中每一类的最优阈值T,大于最优阈值T,将样本对应的类别mask位置置0,对于样本编号为i,类别为ci,那么mask[i,ci]=0,不大于最优阈值T则将样本对应的类别mask位置置1,对于样本编号为i,类别为ci,那么mask[i,ci]=1。6.据权利要求5所述的一种目标检测交叉数据集的混合训练方法,其特征在于,最优阈值T的选取过程:在一种实现中,可以将阈值区间从0

【专利技术属性】
技术研发人员:陈搏田泽康邓卉
申请(专利权)人:易视腾科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1