端到端半监督目标检测框架

news/2024/7/5 4:31:06

点击上方“视学算法”,选择加"星标"或“置顶

重磅干货,第一时间送达

作者丨SuperHui@知乎

来源丨https://zhuanlan.zhihu.com/p/359154264

编辑丨极市平台

导读

 

本文是来自阿里团队的工作,作者团队重新审视SSOD并提出InstantTeaching,这是一个完全端到端且有效的SSOD框架,该框架使用即时伪标签和扩展的弱-强数据增强功能在每次训练迭代中进行教学。

简单介绍一下我们CVPR 2021的一项关于半监督目标检测方面的工作:

Instant-Teaching: An End-to-End Semi-Supervised Object Detection Framework

论文链接:https://arxiv.org/pdf/2103.11402.pdf

1. 背景

1.1 为什么需要半监督学习

这些年,数据驱动的深度学习技术在各种视觉任务中(图像分类、目标检测,实例分割,视频检测等)大展身手,屠榜各类benchmark。然而,在实际落地这些深度学习技术时,我们会发现,模型的性能严重依赖带标注的训练数据。比如,在不同场景上线相同功能的检测模型时,往往需要花费较大代价获取足够数量的标注数据来提高模型在相应场景下的性能。

模型对数据的依赖主要体现在以下两个方面:

  1. 对应用场景一致数据的依赖:以人体检测模型为例,在室外数据上训练的检测器,在室内场景的检测效果往往差强人意;在白天数据上训练的检测器,在夜晚场景下的效果通常也不会很好。

  2. 对数据规模的依赖: 大数据集训练的模型往往比小数据集的精度要高。

虽然有标注数据的获取成本比较高,但是我们可以非常容易的获取海量的无标注数据,如何有效利用这些无标注数据来提高模型的性能,降低模型对标注数据的依赖?半监督学习正是研究如何高效利用无标注数据的一个热门研究方向。

1.2 现有的检测半监督工作

目前,最先进的检测半监督方面的工作,主要是基于self-training以及一致性约束。下面分别介绍其中的代表性工作。

1.2.1 基于一致性约束的方案

CSD[1]是当前基于一致性约束的检测半监督方面的代表性工作。通过对未标注数据做弱增强(flip),组成pair对输入给检测模型,然后对模型预测输出的pair结果进行一致性约束,从而尽可能利用到这些未标注数据。

1.2.2 基于self-training的方案

STAC[2]是当前基于self-training的检测半监督方面的代表性工作。首先所有标注数据训练一个Teacher模型,然后在所有未标注数据上做Inference,并通过NMS和卡阈值的方式制备pseudo labels作为未标注数据的ground truth,然后将所有标注数据和未标注数据同时加入训练得到最终的模型,该方法简单有效,是当前检测半监督方面的SOTA工作。

2. 我们的方案: Instant-Teaching

2.1 Motivation

如下图所示,我们提出了端到端的检测半监督方案Instant-Teaching和增强版Instant-Teaching*:

我们改进的motivation主要有三点:

  1. 我们发现,现有的检测半监督方面的SOTA方案STAC,其伪标注pseudo labels通过离线获得,并且在训练过程中是不更新的。这样有一个问题,当训练的半监督模型的精度已经超过生成pseudo labels的模型时,继续使用不更新的pseudo labels,会限制半监督模型精度的进一步提升。

  2. data augmentations 在半监督学习中占据非常重要的位置,如何更有效的针对半监督学习设计更适合的数据增强方式?

  3. pseudo labels中容易存在错误label,尤其是在训练初期,并且这种错误会在半监督训练中累积,这种现象称为confirmation bias问题,如何设计矫正策略去尽可能修正这些错误的pseudo labels?

针对这三个问题,我们的检测半监督方案如下:

  • 针对问题1,我们采用在线伪标注更新的方式。随着模型训练收敛,模型的精度提升的同时,在线生成的pseudo labels的质量也会得到及时的提高,从而反过来进一步促进模型的学习。

  • 为了更有效的对unlabel images 进行数据增强,我们采用在labeled images 和 unlabeled images 之间进行Mixup和Mosaic增强。

  • 针对confirmation bias 问题,我们提出了Co-rectify的方案,即同时训练两个模型,两个模型分别为彼此检查和纠正pseudo labels,从而有效抑制错误预测的累积,提高模型精度。值得注意的是,虽然在训练时,需要同时训练两个模型,但是infernece时,只需要使用单个模型即可,因此,不影响模型推理的速度。

2.2 主要实验结果

*更多实验验证,欢迎参考我们的论文原文:https://arxiv.org/pdf/2103.11402.pdf

[1]Consistency-based Semi-supervised Learning for Object Detection

[2]A Simple Semi-Supervised Learning Framework for Object Detection

点个在看 paper不断!


http://lihuaxi.xjx100.cn/news/270346.html

相关文章

r型聚类典型指标_常用的聚类算法及聚类算法评价指标

1. 典型聚类算法1.1 基于划分的方法代表:kmeans算法指定k个聚类中心(计算数据点与初始聚类中心的距离)(对于数据点,找到最近的{i}ci(聚类中心),将分配到{i}ci中)(更新聚类中心点,是新类别数值的均值点)(计算每一类的偏差)返回返回…

CentOS SVN服务器管理多项目

一 需求 一般来说,公司有多个项目,在搭建好SVN服务器之后,就需要使用SVN来实现不在一个项目中的开发人员不能访问其它项目中的代码。 假设: 有3个项目:project1、project2、project3 开发人员有6个人:eg1、…

还在苦恼机器学习和线性回归?这篇总结拿走不谢 | 原力计划

作者 | 听星的朗瑞责编 | 王晓曼出品 | CSDN博客题图 | 东方IC什么是机器学习?机器学习是一种实现人工智能的方法,从数据中寻找规律、建立关系,根据建立的关系去解决问题,从数据中进行经验学习,实现自我优化与升级。维…

最新综述:车辆重识别技术

点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达【导读】这是一篇新出的车辆ReID中文综述论文,相信对那些想要整体把握该方向的朋友有帮助。#车辆重识别#A survey on vehicle re-identification 车辆再识别技…

Dubbo 入门实例 本地伪集群测试Demo

1. 概述 Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案 Dubbo是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000个服务提供3,000,000,000次访问量支持,并被广泛应用于阿里巴…

复旦大学自然语言处理实验室发布模型鲁棒性评测平台TextFlint

点击上方“视学算法”,选择加"星标"或“置顶”重磅干货,第一时间送达复旦大学自然语言处理实验室发布模型鲁棒性评测平台 TextFlint。该平台涵盖 12 项 NLP 任务,囊括 80 余种数据变形方法,花费超 2 万 GPU 小时&#x…

实验LVS+keepalived

lvs说明:目前有三种IP负载均衡技术(VS/NAT、VS/TUN和VS/DR);八种调度算法(rr,wrr,lc,wlc,lblc,lblcr,dh,sh)。在调度器的实现技术中,IP负载均衡技术是效率最高的。在已有的IP负载均衡技术中有通过网络地址转…

Java数组转List的三种方式及对比

点击上方蓝色“方志朋”,选择“设为星标”回复“666”获取独家整理的学习资料!作者:大脑补丁blog.csdn.net/x541211190/article/details/79597236前言: 本文介绍Java中数组转为List三种情况的优劣对比,以及应用场景的对…