Semi-supervised Learning for Dense Object Detection in Retail Scenes

摘要

零售场景的每个图像通常包含密集的高数量的目标。标准的目标检测技术使用完全监督的训练方法。这是非常昂贵的,因为注释一个大型密集的零售目标检测数据集需要比标准数据集多一个数量级的工作。因此,我们提出半监督学习来有效地使用零售领域中大量的无标记数据。我们采用一种流行的自监督方法,即噪声学生最初提出的目标分类的任务,密集的目标检测。我们表明,使用无标记数据与嘈杂的学生训练方法,我们可以提高在密集的零售场景中精确检测目标的技术水平。我们还表明,随着未标记数据数量的增加,模型的性能也会增加。

1、简介

近年来,基于深度学习的目标检测算法越来越受欢迎,由于其突破性的进展,被广泛应用于医疗保健、自动驾驶汽车、监控等众多应用领域。尽管有了这一突破,密集的物体检测对许多先进的物体探测器来说是一个挑战。这是一个常见的用例,一些零售公司检测密集包装的目标在零售商店,以最大限度地销售和商店库存管理。在零售商店的货架上,物品往往有相同的品牌或几乎相同的,并在他们的邻近。挑战在于精确地估计克服相同模式的产品边界。

已经取得了很多进展,准确地检测这些目标,第一种方法是提高网络体系结构或损失准则如Retinanet架构将新焦点损失,和其他方法扩展焦损失如guided anchoring,ATSS,Generalized focal loss,Verifocal net。另一种简单的方法是使用更大的数据集进行训练,因为基于深度学习的模型可以很好地解决任何问题,如果我们有足够数量的标记数据。但这里的问题是手动标记这些标签,这是一个非常耗时和昂贵的过程,特别是当我们处理非常高密度的目标检测(通常每张图像超过100个目标)。这也很难进一步扩展。但是考虑到许多免费的无标签数据(网上的免费杂货图片,商店里的视频录像等),它们的数量通常比有限的有标签的数据集要高。然而,深度学习的许多应用,如医疗保健,只有在更大的数据集上进行训练才能受益,而这些数据必须是干净的和准确的标记。

最近,自监督学习(self - supervised learning, SSL)在机器学习领域得到了广泛的关注,它通过生成伪标签和以监督的方式训练模型来利用无标记的数据。该方法在各种计算机视觉任务中表现出了良好的性能,特别是图像分类。在自然语言处理中,自我监督学习甚至在这个术语出现之前就已经被使用了。word2vec普及了这种范式,该领域迅速地将这种方法应用于许多不同的问题。它还成功地应用于强化学习。

由于密集目标检测的复杂性,纯自监督学习方法并没有取得很好的效果。因此,我们采用半监督学习方法,使用嘈杂的学生训练方法。它是一种半监督的方法,训练我们的模型的标签和未标签数据的组合。我们的方法包括三个重要步骤:

  1. 在一个小的标记数据集上以纯粹监督的方式训练一个教师模型。
  2. 利用教师网络在无标注数据上生成伪标签,并对预测进行细化。
  3. 用标记和生成的伪标记相结合的方法训练一个学生模型。

我们可以重复这个过程,将学生模型当作教师来重新标记未标记的数据,并培训一个新学生。使用我们的方法,在SKU110K数据集上分别使用1倍、2倍和20倍附加的未标记数据时,我们可以得到0.5%、1%和1.5%的改进。

2、相关工作

密集目标检测:近年来,利用深度学习成功地解决了目标检测问题。但在密集目标检测中首先引入了焦损失。从那时起,人们提出了许多进一步的工作,以它为灵感,通过应用新技术和损失函数精确检测密集场景中的目标。具体来说,在密集目标检测更为相关的零售领域,近年来也提出了许多算法。

数据集:大多数流行的对象检测基准,如MS COCO, PASCAL VOC, Open Images v4,和ILSVRC都有一个非常稀疏的每幅图像的对象密度,因此可能不是一个有效的基准来评估密集的对象检测器。但最近,Goldman发布了一个基准数据集,用于在人口稠密的场景中进行目标检测。提出了零售数据集基准,以提高通用零售产品检测器的多样性和鲁棒性。

半监督学习:SSL方法领域的大多数进展仅限于图像分类,因为将这些方法应用于目标检测是困难和昂贵的。对于图像分类,除了noise -student之外,还提出了一致性正则化等方法。它们在网络上施加正则化,使其能够抗噪声和增益。许多作品的灵感来自于基于一致性的方法,带有一些附加组件,如mean teacher, temporal ensemble。将自我训练与一致性损失相结合,提出了[22]定点比赛。数据增强是所有SSL方法中最重要的方面之一,因为它们带来了巨大的改进。然而,大多数增强方法仅限于图像分类,无法将其成功应用到更复杂的目标检测任务中。还有其他一些工作尝试将SSL应用于目标检测任务[23]和[9]。

          

          

 3、目标检测的有噪声学生网络训练

3.1、标签数据上教师网络的训练

我们使用GFL[15]作为密集目标检测的教师网络,因为它在COCO数据集中获得了最先进的密集目标检测结果。 我们把这个模型作为一个老师,在一个标记数据集上训练。 广义焦损失(GFL)通过引入分布焦损失、质量焦损失和广义欠条损失来扩展焦损失。 结果表明,这些新的损失可以显著提高目标探测器的性能,特别是在密集目标检测方面。 它能够精确地分离出接近的物体的边界,与以前的物体探测器相比,在有噪声的情况下工作得更好。  

3.2、无标签数据上伪标签的测试

在对教师网络进行培训后,我们对较大的未标记数据进行了推断。 由于数据集是有噪声的,我们必须执行一些启发式方法来进一步细化我们的预测。 我们在伪标签上应用一个置信阈值来消除潜在的误报,同时拥有良好的召回率。 这个超参数是通过对少量数据的评估来估计的。 利用非最大抑制进一步细化预测。 IOU的计算方法为两个框的交点面积与两个框并集面积之比。 我们发现,使用传统NMS的变体有助于更好地消除假阳性。 我们称之为nms-inter。 nms-inter情况下的IoU是两个盒子相交面积与两个框最小面积之比。 这有助于消除假阳性预测完全在产生的框内。  

 4、数据集

4.1、标记数据集

我们使用包含9000张零售货架图像的内部数据集。 我们将此数据集称为PD9k零售数据集。 这个数据集非常多样化,由具有不同对象密度的图像组成。 它既包括具有少量sku的近距离图像,也包括具有100-200 sku的宽货架图像。 它包含926242个skus,每个图像的平均密度为102个skus。  

4.2、无标记的数据集

我们收集了一些不同商店零售货架的视频。 我们从这些视频中采样帧,这些视频包含书架和使用我们的教师网络的大量sku。 我们使用这些帧作为我们的未标记数据集。 我们将此数据集称为零售视频帧(RVF)数据集。  

4.3、测试数据集

我们在SKU110K数据集上测试了噪声学生训练。 它是用于密集零售目标检测的流行数据集。 测试分割总共包含2941个图像,其中432,312个skus,每个图像的平均密度为147个skus。  

           

 5、实验

我们在PD9k数据集上训练我们的教师网络作为我们的基线模型。 我们进一步进行了三个实验来证明半监督学习的有效性。 从RVF数据集中,我们随机抽取未标记的图像,分别创建了10000、20000和200000张图像的三个独立数据集。 之后,我们一共创建了三个独立的数据集,其中完全包含我们用于培训教师网络的标记数据集,以及前面提到的每个数据集中的三个未标记数据集。 然后利用各自的训练数据集进行了三个噪声学生训练实验。 在每次实验中,学生网络训练完成后,我们在验证数据集上基于mAP选择最佳检查点,在下一次迭代中对未标注的图像生成伪标签。  

 6、实现细节

我们使用mmdetection framework[1]对GFL模型进行训练,以Resnet-50网络为骨干进行高密度目标检测器。 对教师网络进行训练时,采用基于MS-COCO数据集的预处理权值对网络进行初始化。 我们所有的训练实验都使用SGD优化器进行,学习速率为1e-3,动量为0.9,重量衰减为1e-4。 我们使用step lr调度器对模型进行了30个epoch的训练。 评估时,使用pycocotools api,利用IOU阈值[0.5:0.95]计算mAP。 我们将pycocotools的maxDet参数设置为300,就像在[7]中使用的那样。  

7、结果

我们的教师网络是根据纯标记数据进行训练的,这是基线模型。 它的mAP值为0.389。 表1总结了使用不同数量的未标记数据的半监督噪声学生模型的结果。 对于在10k伪标记图像上训练的模型,除了标记图像外,我们得到了相对于基线的0.5%增益。 当我们在20k伪标记图像和标记图像上训练该模型时,我们发现mAP有1%的增益。 在最后一个模型中,我们选取了200k张伪标记图像,发现mAP比基线模型增加了1.4%。  

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wanderer001

ROIAlign原理

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值