MetaAnchor: Learning to Detect Objects with Customized Anchors

Intro

本文我其实看了几遍也没看懂,看了meta以为是一个很高大上的东西,一搜是元学习的范畴,学会如何学习,很绕人。万般无奈之下请教了下老师,才知道他想表达什么。其实作者的想法很简单,就是先把最后anchor预测类别和位置的权重拿出来,这里的权重通过设计另一个网络来预测,而这个网络的参数又可以通过整个网络的训练梯度回传来学习。这样做的好处是,将anchor的配置(w,h)当成了输入,只需要给定一组anchor参数,就可以完成特定的预测任务,也不用事先指定anchor的数量了,确实是好想法。

Anchor Function

我们知道传统神经网络都是通过事先设定好anchor的种类,然后训练,在训练完成后anchor就固定了,如果想要改变anchor的数量,那么就需要重新训练网络了,而本文的方法的好处是,一次训练,稍微更改,就能适应新的任务!

首先这个anchor function是给定输入的某个特征x和参数sita,来表征这个bin在给定参数下的类别置信度和回归offset的。sita cls 和sita reg 其实理解过来就是预测和回归网络的权重,以参数的形式表达了出来。我觉得这里只要理解了后面就没啥问题了。

作者的想法很简单,就是把anchor的配置作为输入来预测这个权重,这样就能很方便的动态调整anchor的尺度。

Anchor Function Generator

作者先做了个下标变换,其本质目的还是为了使得anchor function的通用化,原来每个bin都有自己独立的一套参数,这个参数其实是预先设计好的,即anchor的配置,把bi放到参数sita里,就是上面提到的,将anchor的配置变为输入的参数,而不是预先设计好并且一一对应的。这里的理解是预先设计好的anchor的尺寸其实是预先设计了anchor function,如果sita改变,得重新训练网络。

然后就是提出anchor function generator来预测给定anchor配置下的参数sita_bi,这时候bi就是输入的anchor配置。

然后将上面的公式扩展成下面的子网络形式,这样就能够通过网络来学习这个网络的参数,从而预测网络权重了。

Architecture Details

文章用retina net来做验证,通过将retina net的最后预测层的权重交由另一个子网络来预测,实验证了文章的想法。其中,其网络结构如图:

其中,anchor的配置如下图计算:

Conclusion

MetaAnchor的想法很简单,也很实用,解决的问题也很明确,就是图个方便,每次改配置不用重新训练了,文章说实话不好懂,但是懂了就简单了。几句话其实就说完了。

[论文理解]MetaAnchor: Learning to Detect Objects with Customized Anchors的更多相关文章

  1. [论文理解] CornerNet: Detecting Objects as Paired Keypoints

    [论文理解] CornerNet: Detecting Objects as Paired Keypoints 简介 首先这是一篇anchor free的文章,看了之后觉得方法挺好的,预测左上角和右下 ...

  2. Deep Learning 17:DBN的学习_读论文“A fast learning algorithm for deep belief nets”的总结

    1.论文“A fast learning algorithm for deep belief nets”的“explaining away”现象的解释: 见:Explaining Away的简单理解 ...

  3. Image Processing and Analysis_8_Edge Detection:Learning to Detect Natural Image Boundaries Using Local Brightness, Color, and Texture Cues ——2004

    此主要讨论图像处理与分析.虽然计算机视觉部分的有些内容比如特 征提取等也可以归结到图像分析中来,但鉴于它们与计算机视觉的紧密联系,以 及它们的出处,没有把它们纳入到图像处理与分析中来.同样,这里面也有 ...

  4. [论文理解]关于ResNet的进一步理解

    [论文理解]关于ResNet的理解 这两天回忆起resnet,感觉残差结构还是不怎么理解(可能当时理解了,时间长了忘了吧),重新梳理一下两点,关于resnet结构的思考. 要解决什么问题 论文的一大贡 ...

  5. 【论文笔记】Learning Fashion Compatibility with Bidirectional LSTMs

    论文:<Learning Fashion Compatibility with Bidirectional LSTMs> 论文地址:https://arxiv.org/abs/1707.0 ...

  6. ICCV2019论文点评:3D Object Detect疏密度点云三维目标检测

    ICCV2019论文点评:3D Object Detect疏密度点云三维目标检测 STD: Sparse-to-Dense 3D Object Detector for Point Cloud 论文链 ...

  7. [论文理解]Deep Residual Learning for Image Recognition

    Deep Residual Learning for Image Recognition 简介 这是何大佬的一篇非常经典的神经网络的论文,也就是大名鼎鼎的ResNet残差网络,论文主要通过构建了一种新 ...

  8. [论文理解] Learning Efficient Convolutional Networks through Network Slimming

    Learning Efficient Convolutional Networks through Network Slimming 简介 这是我看的第一篇模型压缩方面的论文,应该也算比较出名的一篇吧 ...

  9. [论文理解] Good Semi-supervised Learning That Requires a Bad GAN

    Good Semi-supervised Learning That Requires a Bad GAN 恢复博客更新,最近没那么忙了,记录一下学习. Intro 本文是一篇稍微偏理论的半监督学习的 ...

随机推荐

  1. 未能加载文件或程序集“Oracle.DataAccess, Version=4.112.2.0, Culture=neutral, PublicKeyTok”

    1.首先看一下C:\Windows\assembly目录下是不是只有一个Oracle.DataAccess,我的版本是10,如果是只有一个,则往下看: 2.将完整的odp.net(目录下包含注册文件) ...

  2. HTML基本标签问题总结

    一.常见的内联元素和块元素 块级元素: div, form, (列表相关ul,dl,ol,li,) h1-6,p,table 内联元素: a, br, u,(b , em, strong, i,) i ...

  3. Gradle安装配置

    1.构建工具的简单介绍在代码世界中有三大构建工具,ant.Maven和Gradle. 现在的状况是maven和gradle并存,gradle使用的越来越广泛. Maven使用基于XML的配置,Grad ...

  4. iOS开发之swift与OC混编出现的坑,oc中不能对swift的代理进行调用,不能访问swift中的代理,swift中的回调方法

    1. Swift与oc混编译具体怎么实现,这儿我就不重复讲出了,网上有大把的人讲解. 2. 在swift与OC混编的编译环境下, oc类不能访问swift创建类中的代理? 解决方法如下: 在代理的头部 ...

  5. Windows安装IIS后,启动网站报错:不能在此路径中使用此配置节……

    在IIS里启动设置好的网站(ASP.net网站),浏览器报如下错误: 不能在此路径中使用此配置节.如果在父级别上锁定了该节,便会出现这种情况.锁定是默认设置的(overrideModeDefault= ...

  6. 牛客假日团队赛1 G.Superbull

    链接: https://ac.nowcoder.com/acm/contest/918/G 题意: Bessie and her friends are playing hoofball in the ...

  7. mysql事务锁表

    -- 查看被锁住的SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS; -- 等待锁定SELECT * FROM INFORMATION_SCHEMA.INNO ...

  8. chapter09

    import java.io.File import java.nio.file._ import scala.collection.mutable.ArrayBuffer/** * Created ...

  9. 【ElasticSearch+NetCore 第一篇】在Windows上安装部署ElasticSearch和ElasticSearch-head

    ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java开发的,并作为Apach ...

  10. JavaScript 获取 Url 上的参数(QueryString)值

    获取URL里面传的参数,在Js中不能像后台一样使用Request.QueryString来获取URL里面参数,下面介绍两种方式用来获取参数 方式一:使用split分隔来获取,这种方法考试了地址中包含了 ...