searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

OTA——目标检测的最优分配

2024-05-07 09:42:00
44
0

传统的目标检测任务中,对于ground_truth(gt)和anchor的配对,都采取固定的策略(例如依赖IOU阈值--RetinaNet,对于Anchor-free类算法则往往依据anchors是否包含gt的中心点或者核心区域--FCOS)。这篇论文就提出了将anchor当作label需求方,而gt当作label提供方,而label从gt传输(匹配)至anchor的传输成本就是分类和回归的loss加权和(对于负样本只计算分类loss),这样就将gt和anchor的匹配问题变成了一个最优化传输成本的问题(Optimal Transport (OT) problem),可以使用Sinkhorn-Knopp迭代来进行问题求解。

1. 文档更新记录

1.1. 版本信息

  • 当前版本:v1.0
  • 论文名称:OTA: Optimal Transport Assignment for Object Detection
  • 创建时间:2024-05-07
  • 创建人:   钱翔

1.2. 修订历史

时间

版本号

修订人

修订内容

2024-05-07

v1.0

钱翔

创建

 

 

 

 

2. 算法介绍

2.1. 核心思想

传统的目标检测任务中,对于ground_truth(gt)和anchor的配对,都采取固定的策略(例如依赖IOU阈值--RetinaNet,对于Anchor-free类算法则往往依据anchors是否包含gt的中心点或者核心区域--FCOS)。这篇论文就提出了将anchor当作label需求方,而gt当作label提供方,而label从gt传输(匹配)至anchor的传输成本就是分类和回归的loss加权和(对于负样本只计算分类loss),这样就将gt和anchor的匹配问题变成了一个最优化传输成本的问题(Optimal Transport (OT) problem),可以使用Sinkhorn-Knopp迭代来进行问题求解。

2.2. 详细过程

  • 论文首先介绍了传统最优传输问题(Optimal Transport),同时对于目标检测的标签分配场景,更新了最优化问题并进行求解。之后对于最优化问题做了进一步的优化设计,同时评估了动态k值额效果。

2.2.1. 最优传输问题(Optimal Transport)

  • 有 m 个供货商,n 个需求方
  • 第 i 个供货商有[MISSING IMAGE: ,  ]单元的货物,第 j 个需求方需要[MISSING IMAGE: ,  ]单元的货物
  • 从供货商 i 到需求方 j 的运输成本为[MISSING IMAGE: ,  ]
  • OT问题的目标是找到最优运输计划[MISSING IMAGE: ,  ],使得总成本最小

2.2.2. 标签分配的最优传输问题(OT for Label Assignment)

对于标签分配,则在基础的最优传输问题基础上,增加了以下条件:

  • 每个需求方(anchor)需求一个label,即 ([MISSING IMAGE: ,  ])
  • 每个供货商(gt)提供的货物(label)是固定的值k,即 ([MISSING IMAGE: ,  ]),
  • 背景类[MISSING IMAGE: ,  ]提供[MISSING IMAGE: ,  ]个负标签,即 [MISSING IMAGE: ,  ]
  • 前景运输成本(从正样本[MISSING IMAGE: ,  ]到[MISSING IMAGE: ,  ])的成本[MISSING IMAGE: ,  ]如下:

[MISSING IMAGE: ,  ]

  • 背景运输成本(从bg到[MISSING IMAGE: ,  ])的成本[MISSING IMAGE: ,  ]如下([MISSING IMAGE: ,  ]代表背景类):

[MISSING IMAGE: ,  ]

2.2.3. 进一步的优化设计

  • 中心优先(Center Prior):对于每一个gt,作者会选择距离最近的[MISSING IMAGE: ,  ]个anchors,对于其余的anchors,运输成本则会增加一个常量[MISSING IMAGE: ,  ]作为中心优先的惩罚项。
  • 动态k值评估(Dynamic k Estimation):作者认为,不同尺寸、比例和重叠程度的gt,应该提供不同数量的标签(而不是都固定成k个),因此设计了一个依赖IOU的方法来估计[MISSING IMAGE: ,  ]值。具体就是对每个gt,计算其与所有anchor的IOU,然后挑选top q个IOU值相加,得到其[MISSING IMAGE: ,  ]值。
  • 在加入中心优先和动态k值评估这两项改动后,结合之前设计的标签分配的最优传输问题,就可以通过Sinkhorn-Knopp迭代来求解最优分配[MISSING IMAGE: ,  ],具体步骤见下图

 

  • OTA问题求解的迭代计算量,都是在forward和loss计算、back-propagation之间,可以认为是训练过程中loss计算步骤变得更加复杂了,通过控制T值(一般设定T=50),可以将训练时间的增加量控制在20%左右,对于推理时间则没有任何影响。

2.3. 实施参数

  • 作者选取了ImageNet预训练的ResNet-50-FPN模型作为backbone,计算成本矩阵[MISSING IMAGE: ,  ]时[MISSING IMAGE: ,  ]和[MISSING IMAGE: ,  ]选取FocalLoss和IoULoss,平衡参数[MISSING IMAGE: ,  ]。在反向传播时,[MISSING IMAGE: ,  ]选取GIoULoss,平衡参数[MISSING IMAGE: ,  ]。动态k值估计里面的q选取20。

2.4. 应用场景

  • OTA适用于任何目标检测类行的任务。

2.5. 消融实验

  • 在第一个消融实验中,作者研究了中心优先、动态k值这两个组件的效果,可以看到两个组件都可以对模型的map有一定的提升。

  • 对于中心优先这个改进项,作者对不同的r值的影响,发现r值为5时效果最好,不过整体而言OTA对r值不敏感。

  • 作者对不同的混淆anchor处理技术做了比较,发现OTA这种最优化求解的处理,效果都要好于人为设定规则的处理。

  • 最后,作者对不同的k值和动态k值进行了比较,发现动态k还是明显好于固定k值。

2.6. 效果评估

  • 作者在COCO数据集上,对于不同的backbone,将OTA和其他label assignment方法进行比较,发现OTA基本都能取得最好的MAP值。

  • 对于CrowdHuman数据集,作者对比下来,OTA也能取得最好的效果。

0条评论
0 / 1000
钱****翔
5文章数
0粉丝数
钱****翔
5 文章 | 0 粉丝
原创

OTA——目标检测的最优分配

2024-05-07 09:42:00
44
0

传统的目标检测任务中,对于ground_truth(gt)和anchor的配对,都采取固定的策略(例如依赖IOU阈值--RetinaNet,对于Anchor-free类算法则往往依据anchors是否包含gt的中心点或者核心区域--FCOS)。这篇论文就提出了将anchor当作label需求方,而gt当作label提供方,而label从gt传输(匹配)至anchor的传输成本就是分类和回归的loss加权和(对于负样本只计算分类loss),这样就将gt和anchor的匹配问题变成了一个最优化传输成本的问题(Optimal Transport (OT) problem),可以使用Sinkhorn-Knopp迭代来进行问题求解。

1. 文档更新记录

1.1. 版本信息

  • 当前版本:v1.0
  • 论文名称:OTA: Optimal Transport Assignment for Object Detection
  • 创建时间:2024-05-07
  • 创建人:   钱翔

1.2. 修订历史

时间

版本号

修订人

修订内容

2024-05-07

v1.0

钱翔

创建

 

 

 

 

2. 算法介绍

2.1. 核心思想

传统的目标检测任务中,对于ground_truth(gt)和anchor的配对,都采取固定的策略(例如依赖IOU阈值--RetinaNet,对于Anchor-free类算法则往往依据anchors是否包含gt的中心点或者核心区域--FCOS)。这篇论文就提出了将anchor当作label需求方,而gt当作label提供方,而label从gt传输(匹配)至anchor的传输成本就是分类和回归的loss加权和(对于负样本只计算分类loss),这样就将gt和anchor的匹配问题变成了一个最优化传输成本的问题(Optimal Transport (OT) problem),可以使用Sinkhorn-Knopp迭代来进行问题求解。

2.2. 详细过程

  • 论文首先介绍了传统最优传输问题(Optimal Transport),同时对于目标检测的标签分配场景,更新了最优化问题并进行求解。之后对于最优化问题做了进一步的优化设计,同时评估了动态k值额效果。

2.2.1. 最优传输问题(Optimal Transport)

  • 有 m 个供货商,n 个需求方
  • 第 i 个供货商有[MISSING IMAGE: ,  ]单元的货物,第 j 个需求方需要[MISSING IMAGE: ,  ]单元的货物
  • 从供货商 i 到需求方 j 的运输成本为[MISSING IMAGE: ,  ]
  • OT问题的目标是找到最优运输计划[MISSING IMAGE: ,  ],使得总成本最小

2.2.2. 标签分配的最优传输问题(OT for Label Assignment)

对于标签分配,则在基础的最优传输问题基础上,增加了以下条件:

  • 每个需求方(anchor)需求一个label,即 ([MISSING IMAGE: ,  ])
  • 每个供货商(gt)提供的货物(label)是固定的值k,即 ([MISSING IMAGE: ,  ]),
  • 背景类[MISSING IMAGE: ,  ]提供[MISSING IMAGE: ,  ]个负标签,即 [MISSING IMAGE: ,  ]
  • 前景运输成本(从正样本[MISSING IMAGE: ,  ]到[MISSING IMAGE: ,  ])的成本[MISSING IMAGE: ,  ]如下:

[MISSING IMAGE: ,  ]

  • 背景运输成本(从bg到[MISSING IMAGE: ,  ])的成本[MISSING IMAGE: ,  ]如下([MISSING IMAGE: ,  ]代表背景类):

[MISSING IMAGE: ,  ]

2.2.3. 进一步的优化设计

  • 中心优先(Center Prior):对于每一个gt,作者会选择距离最近的[MISSING IMAGE: ,  ]个anchors,对于其余的anchors,运输成本则会增加一个常量[MISSING IMAGE: ,  ]作为中心优先的惩罚项。
  • 动态k值评估(Dynamic k Estimation):作者认为,不同尺寸、比例和重叠程度的gt,应该提供不同数量的标签(而不是都固定成k个),因此设计了一个依赖IOU的方法来估计[MISSING IMAGE: ,  ]值。具体就是对每个gt,计算其与所有anchor的IOU,然后挑选top q个IOU值相加,得到其[MISSING IMAGE: ,  ]值。
  • 在加入中心优先和动态k值评估这两项改动后,结合之前设计的标签分配的最优传输问题,就可以通过Sinkhorn-Knopp迭代来求解最优分配[MISSING IMAGE: ,  ],具体步骤见下图

 

  • OTA问题求解的迭代计算量,都是在forward和loss计算、back-propagation之间,可以认为是训练过程中loss计算步骤变得更加复杂了,通过控制T值(一般设定T=50),可以将训练时间的增加量控制在20%左右,对于推理时间则没有任何影响。

2.3. 实施参数

  • 作者选取了ImageNet预训练的ResNet-50-FPN模型作为backbone,计算成本矩阵[MISSING IMAGE: ,  ]时[MISSING IMAGE: ,  ]和[MISSING IMAGE: ,  ]选取FocalLoss和IoULoss,平衡参数[MISSING IMAGE: ,  ]。在反向传播时,[MISSING IMAGE: ,  ]选取GIoULoss,平衡参数[MISSING IMAGE: ,  ]。动态k值估计里面的q选取20。

2.4. 应用场景

  • OTA适用于任何目标检测类行的任务。

2.5. 消融实验

  • 在第一个消融实验中,作者研究了中心优先、动态k值这两个组件的效果,可以看到两个组件都可以对模型的map有一定的提升。

  • 对于中心优先这个改进项,作者对不同的r值的影响,发现r值为5时效果最好,不过整体而言OTA对r值不敏感。

  • 作者对不同的混淆anchor处理技术做了比较,发现OTA这种最优化求解的处理,效果都要好于人为设定规则的处理。

  • 最后,作者对不同的k值和动态k值进行了比较,发现动态k还是明显好于固定k值。

2.6. 效果评估

  • 作者在COCO数据集上,对于不同的backbone,将OTA和其他label assignment方法进行比较,发现OTA基本都能取得最好的MAP值。

  • 对于CrowdHuman数据集,作者对比下来,OTA也能取得最好的效果。

文章来自个人专栏
计算机视觉
5 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
2
1