Meta-Learning to Detect Rare Objects (2019 ICCV)

2023-11-27 01:20

本文主要是介绍Meta-Learning to Detect Rare Objects (2019 ICCV),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 出处

2021 ICCV
卡耐基梅隆大学

2. 问题

当前对于小样本学习的研究主要关注小样本分类问题,小样本检测具有挑战而且尚未被探索。也有一些researcher将小样本分类方法用于小样本检测,但效果不够理想。

3. 解决方案

提出了一个基于元学习的框架,能够同时解决小样本分类和定位问题。该框架利用base classes的元知识来促进novel classes检测器的生成。作者的insight就是解决基于CNN的检测模型中类别不可知的和特定类别的组件,利用不同的元学习策略优化不同的组件。

category-agnostic:神经网络较浅层的参数很多类别是共享的,因此是类不可知的。

category-specific:较高层的神经网络,他们的参数是类特定的。

作者把Faster RCNN学到的特征和RPN作为类别不可知的组件,这些参数是base classes和novel classes共享的。分类器和bbox回归器是类别特定的,把参数中的dynamics(动力学)视为base classes和novel classes共享的。

作者提出了一个权重预测元模型,在模型参数空间上进行训练,利用小样本参数来预测类别large-sample bbox检测参数。

4. 模型

设计了小样本检测模型MetaDet,在Faster RCNN基础上构建的。
在这里插入图片描述
(1)模型的训练方式

采用元学习的方式,采样一个个的小任务(episode)。在元训练阶段,每类随机选取K个bbox标注,训练每个类别对应的检测器。

(2)作者的目标是基于base class数据集和novel class数据集估计检测器的参数θ,θ由类不可知的和特定类的组件组成,作者的框架就是要利用检测模型中参数生成的元知识,利用专门的元策略用于不同类型的组件。

category-specific参数不能够直接在base和novel classes中迁移,他们如何从在小数聚集上训练的参数转变为在大数据集上训练的参数,这样的dynamics pattern可以表达成通用的类不可知的转变。

因此作者提出了参数化的权重预测元模型通过元训练过程来学习这种转变。

(3)权重预测元模型

  • large-sample base dataset
    学习检测网络最后几层的class-specific权重
  • k-shot episode dataset sampled from base dataset
    学习对应的权重
    权重预测元模型就是:让小样本检测任务中的权重向large-sample的权重回归

(4)元学习的过程

元训练+元测试

  • 元训练
    分为两个阶段,category-agnostic and category-specific各自对应一个阶段

    • 第一个阶段
      训练基于大量样本的检测器,在整个S_train数据集上。其中基础检测器部分可以用于novel classes和class-specific组件
    • 第二个阶段
      小样本episode检测,利用第一阶段训练好的large-sample基础检测器生成k-shot检测器。冻结category-agnostic参数,重新训练category-specific参数。
  • 元测试
    为了训练k-shot novel检测器,初始化category-agnostic参数为(参照原文中的表达),随机初始化category-specific参数。

这篇关于Meta-Learning to Detect Rare Objects (2019 ICCV)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/426690

相关文章

java之Objects.nonNull用法代码解读

《java之Objects.nonNull用法代码解读》:本文主要介绍java之Objects.nonNull用法代码,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录Java之Objects.nonwww.chinasem.cnNull用法代码Objects.nonN

Pycharm安装报错:Cannot detect a launch configuration解决办法

《Pycharm安装报错:Cannotdetectalaunchconfiguration解决办法》本文主要介绍了Pycharm安装报错:Cannotdetectalaunchconfigur... 本文主要介绍了Pycharm安装报错:Cannot detect a launch configuratio

BUUCTF靶场[web][极客大挑战 2019]Http、[HCTF 2018]admin

目录   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 [web][HCTF 2018]admin 考点:弱密码字典爆破 四种方法:   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 访问环境 老规矩,我们先查看源代码

简单的Q-learning|小明的一维世界(3)

简单的Q-learning|小明的一维世界(1) 简单的Q-learning|小明的一维世界(2) 一维的加速度世界 这个世界,小明只能控制自己的加速度,并且只能对加速度进行如下三种操作:增加1、减少1、或者不变。所以行动空间为: { u 1 = − 1 , u 2 = 0 , u 3 = 1 } \{u_1=-1, u_2=0, u_3=1\} {u1​=−1,u2​=0,u3​=1}

简单的Q-learning|小明的一维世界(2)

上篇介绍了小明的一维世界模型 、Q-learning的状态空间、行动空间、奖励函数、Q-table、Q table更新公式、以及从Q值导出策略的公式等。最后给出最简单的一维位置世界的Q-learning例子,从给出其状态空间、行动空间、以及稠密与稀疏两种奖励函数的设置方式。下面将继续深入,GO! 一维的速度世界 这个世界,小明只能控制自己的速度,并且只能对速度进行如下三种操作:增加1、减

2019学习计划

工作三年了,第一年感觉是荒废的,第二年开始学习python,第三年开始自动化 感觉自己会的东西比较少,而且不够深入,流于表面 现制定一下今年大概的学习计划 需持续巩固加强:python、ui自动化、接口自动化、sql等 代码量需提升,敲的不够(重点) 学习: 1.移动端测试,appium等 2.前端知识系统整理学习  3.性能测试 4.docker入门,环境搭建 5.shell

Vue3+vite中使用import.meta.glob

前言:         在vue2中支持require导入模块或文件但是在vue3中已经不支持require导入了,为此vite提供了一个全新的方法import.meta.glob方法来支持批量导入文件  import.meta.glob 匹配到的文件默认是懒加载的,通过动态导入实现,并会在构建时分离为独立的 chunk。如果你倾向于直接引入所有的模块(例如依赖于这些模块中的副作用首先被应用

最简单的使用JDBC[连接数据库] mysql 2019年3月18日

最极简版本的, 我们这里以mysql为例: 首先要创建maven工程, 需要引入jar包:,这里需要注意, 如果你安装的是mysql最新版本8以上的, 下面有些地方需要更改,具体就是mysql连接的url, 和5版本的不一样,具体解决请自行百度哈.这里只演示mysql5版本的? 依赖: <dependency>   <groupId>mysql</groupId>   <artifactId

Learning Memory-guided Normality for Anomaly Detection——学习记忆引导的常态异常检测

又是一篇在自编码器框架中研究使用记忆模块的论文,可以看做19年的iccv的论文的衍生,在我的博客中对19年iccv这篇论文也做了简单介绍。韩国人写的,应该是吧,这名字听起来就像。 摘要abstract 我们解决异常检测的问题,即检测视频序列中的异常事件。基于卷积神经网络的异常检测方法通常利用代理任务(如重建输入视频帧)来学习描述正常情况的模型,而在训练时看不到异常样本,并在测试时使用重建误

Memorizing Normality to Detect Anomaly ——记忆正常以检测异常

Memorizing Normality to Detect Anomaly: Memory-augmented Deep Autoencoder for Unsupervised Anomaly Detection 记忆正常检测异常:记忆增强型深度自动编码器无监督异常检测 中国人挂了一堆外国人   Abstract 深度自动编码器在异常检测中得到了广泛的应用。通过对正常数据的训练,