读DL论文心得之SPP
这篇论文是Kaiming He等发表在ECCV2014上面的Spatial pyramid pooling in deep convolutional networks for visual recognition。
本篇论文的代码也是开源的,还有一个很棒的slides。
Introduction
传统CNN中,直接对图像剪切和变形来达到需要的尺寸。虽然卷积的过程不要求固定尺寸,但全连接层需要固定尺寸,因为从卷积层到全连接层间的参数维数必须是固定的。这样或多或少会影响分类与检测的效果,于是本文就针对这一事实,提出一种解决方案:在卷积层和全连接层之间加一层SPP层,即spatial pyramid pooling,用于池化特征,生成固定长度的输出,送入全连接层。
这样的明显优点是速度非常快,准确率有提高(依然用了selective search来提取区域建议,因此整体检测速度并不是很快)。
SPP
流行的7层CNN由5个卷积层(有些带pooling层)、2个全连接层、1个softmax层组成。SPP是在卷积层后,用空间盒将卷积特征池化到一起,这张图中的256是conv5的滤波器数量,每个格子都是256维的。下面是详细的说明:
单一尺度的训练
在训练中,conv5有axa的输出,金字塔有nxn个盒(bins)。
窗口
步长
金字塔有l 级,输入到fc6的是这l 级输出连接起来。
eg. conv5是13x13的,有pool3x3、pool2x2、pool1x1这样3种size的盒,共有256个13x13的滤波器。
多个尺度的训练
假设有224x224和180x180两种尺度的输入图像(其中180x180是由224x224缩放所得)。conv5的特征分别为224x224->13x13,180x180->10x10。
相应的win和str都不同,但bin的数量是相同的都是(9+4+1)x256,后面连着全连接层。
detection
先在每张图上生成候选窗口,缩放图像,提取conv5特征,对每个候选窗口对应到conv5的特征用4层空间金字塔进行池化,生成12800-d(256x(1x1+2x2+3x3+6x6))特征表示,输入全连接层,再用这些特征对每个种类训练线性SVM分类器。即特征是从整张图上计算的,而池化是在候选窗口上执行的,可由下图看出SPP与RCNN的不同:
一种多尺度特征提取的改进方法
简而言之,这种方法是将图片缩放到多个尺度(eg.{480, 576, 688, 864, 1200}),得到6组特征映射(还有一组是原本的尺度),对于每个候选窗口,选择让它最接近224x224的尺度对应的特征映射来进行提取。
results
\ | SPP-net(1-scale) | SPP-net(5-scale) | R-CNN |
---|---|---|---|
mAP | 58.0 | 59.2 | 58.5 |
GPU time/img | 0.14s | 0.38s | 9s |
speed-up | 64x | 24x | - |
读DL论文心得之SPP相关推荐
- 沈向洋、华刚:读科研论文的三个层次、四个阶段与十个问题
来源:微软学术合作 本文约6000字,建议阅读8分钟. 阅读文章不仅是大家在科研道路上进步的必由之路,也能使我们的心智不断成长,认知模型和思维方式不断完善. 沈向洋博士:如何以正确方式打开一篇科研论文 ...
- 【转】沈向洋、华刚:读科研论文的三个层次、四个阶段与十个问题
转自知乎,微软亚洲研究院,文章<沈向洋.华刚:读科研论文的三个层次.四个阶段与十个问题> 作者:微软亚洲研究院 链接:https://zhuanlan.zhihu.com/p/163227 ...
- 【转】如何读学术论文
参考: 经验分享 | 高效读论文的"三遍法" [How to read a paper]如何读论文 怎样阅读论文(台湾彭明辉) 文章目录 1. 速读后的问题记录 1.1 5C 1. ...
- 《Densely Connected Convolutional Networks》论文心得
<Densely Connected Convolutional Networks>论文心得 作者及其所在团队在国内外相关领域所处水平: 黄高:美国康奈尔大学计算机系博士后主要研究领域为深 ...
- 【读点论文】Transformer in Transformer 细化图片结构,递归使用transformer。让图片去拟合自然语言处理的操作。
Transformer in Transformer Abstract Transformer是一种新的神经架构,它通过注意机制将输入数据编码为强大的特征.基本上,视觉transformer首先将输入 ...
- 读科研论文的三个层次、四个阶段与十个问题
沈向洋博士:如何以正确方式打开一篇科研论文? 好的研究员要有的特质: open-minded和批判性思考 努力工作 要不断更新知识面,阅读很多东西并交流分享 将科学查询和假设表现出来 读文章的几个阶段 ...
- 一分钟读懂论文:《关于临时裁员的七个事实》
2023年,或许是每个互联网人都最不愿有的经历:裁员. 斯德哥尔摩大学国际经济研究所 (IIES).奥地利经济研究所(WIFO).维也纳经济与商业大学.劳工研究所(IZA).CESifo(经济研究中心 ...
- AI大神李沐B站走红!连博导们都在追更,还亲自带你逐段读懂论文,网友:带B站研究生吧...
明敏 梦晨 发自 凹非寺 量子位 报道 | 公众号 QbitAI 什么样的B站Up主,让AI专业的导师们纷纷推荐给学生看,甚至导师自己也追更? 又是什么样的Up主,让网友直呼"简直是做慈善& ...
- 近期大热的AutoML领域,都有哪些值得读的论文?
在碎片化阅读充斥眼球的时代,越来越少的人会去关注每篇论文背后的探索和思考. 在这个栏目里,你会快速 get 每篇精选论文的亮点和痛点,时刻紧跟 AI 前沿成果. 点击本文底部的「阅读原文」即刻加入社区 ...
最新文章
- PHP函数stream_context_create()模拟POST/GET
- 数据结构 — B+ 树
- QT学习 之 计算器的实现
- Python Selenium 常用方法总结
- 网站移动版本开发踩坑实录二
- 什么是大端序和小端序,为什么要有字节序
- XCode6.0的iOS免证书真机测试方法(MAC及黑苹果均有效)
- 天下的母亲都是一样的
- 高等数学复习笔记(六)- 一元函数积分学的应用
- NET FRAME WORK 3.5下载地址
- SDIO接口(3)——SDIO总线接口
- <!DOCTYPE>解读
- java练手代码大全手机版_Java版打字练习游戏源码
- D - RGB Triplets(前缀和+思维)
- STM32——用固件库实现流水灯(源码+仿真图)
- kotlin data class 遇到的坑
- 深度学习之openvino预训练模型测试(车牌识别)
- [转载]华为老员工看华为(一):不断改进的海外市场
- mysql中的四种注释
- 十年前的AlexNet,今天的NeurIPS 2022时间检验奖
热门文章
- 饿了么高稳定、高性能、高可用、高容错API架构实践!
- 百度咋做长文本去重(一分钟系列)--转
- Java NIO——Selector机制源码分析---转
- Linux服务器集群系统(四)--转
- 转载--CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡
- 数学建模学习笔记——蒙特卡洛模拟
- 深度丨110亿美金还不够,阿里使用这种AI手段创造更多广告收入
- 简单有趣的 NLP 教程:手把手教你用 PyTorch 辨别自然语言(附代码)
- 布道微服务_05RPC远程服务调用的实现
- 高并发编程-线程生产者消费者的综合示例