SSD論文閱讀筆記
論文:SSD: Single Shot MultiBox Detector
Github : SSD
SSD類似YOLO,和YOLO同屬於目標檢測演算法中基於迴歸的演算法。
Abstract
作者提出了SSD模型,把輸出的bounding boxes看成一組不同尺度,不同大小的boxes。說白了,就是在不同尺度上的feature map上設定一系列不同大小的default boxes。實現了多尺度的檢測,這個思路有點類似於faster rcnn裡面的anchor boxes。不過anchor boxes實現多尺度的方法不是在不同的feature map上做迴歸,而是直接設定不同比例的boxes。SSD模型相比於rcnn系列模型,取消了region proposal的過程,即沒有畫素,特徵重取樣(對應於faster rcnn 的ROI Pooling)的過程,提升了執行速度,並且得益於多尺度的檢測,精度上並沒有損失,甚至在512x512大小的圖片上超過了faster rcnn。
Introduction
基於深度學習的目標檢測網路主要有兩大類,一類是以RCNN為代表的region proposals方法,該類方法速度較慢,最快的faster rcnn在GPU上也只有7FPS,另一類是以YOLO為代表的基於迴歸的演算法。YOLO雖然在速度上很快(45 FPS),但是精度很低。作者本文就是解決了速度與精度的矛盾問題,提升了模型的速度,同時避免了精度的損失,SSD和YOLO同屬一類基於迴歸的演算法。
SSD
1.預測過程
- 圖片統一被縮放到固定大小(300x300),然後送入base network(作者用的是VGG),之後再通過多次卷積,每次卷積具有一定的stride,使得每次卷積後的特徵圖變小。這樣就得到了一系列不同尺度的特徵圖。然後在這些不同尺度的特徵圖直接回歸出目標的位置和類別資訊。
- 所謂“直接回歸出”:以上述結構中Conv7(FC7)特徵圖為例,該特徵圖大小為19x19x1024,此時,對於該19x19大小的特徵圖中,用(c+4) x k個濾波器去卷積,每個濾波器的大小應該為1024 x kernel_size x kernel_size(這裡作者的kernel_size = 3)。那麼卷積之後輸出的就是19 x 19 x (c+4) x k 的張量。(c + 4) x k表示對於19 x 19特徵圖中的每一個畫素都預測k個框,每個框有c+4個評分,c表示物體的屬於哪一個類別,4表示框相對於default box(寬,高,中心位置座標)的偏移量
2.訓練過程
- 首先需要對每一個ground truth匹配相應的default box,一個ground truth可以匹配多個default box。如果ground truth和default box的重疊率大於一個閾值,則匹配為正樣本,否則為負樣本。
-
目標函式:偏置偏差損失+類別置信度損失
其實就是位置偏移量以及是目標的置信度兩項的和。具體計算公式參見論文,不贅述
- default boxes大小設定
根據相應的特徵圖的尺度,設定不同大小的default box,具體計算公式參見論文。作者用了6個default box - 其他trick
Hard negative mining: 只有那些有最高訓練損失(training loss)的負面樣本(negative example)子集才會在每次訓練迭代中被使用。SSD 的「正負」比一直保持在 1:3。
Data augmentation: 隨機裁剪
實驗結果
取得了速度上的提升,精度也還不錯。作者做的工作其實就是速度和精度的一個trade-off。主要創新之處在於:
- 多尺度的特徵圖上回歸出座標位置資訊,這是精度的保證
- 相比於YOLO,SSD利用卷積而不是全連線進行迴歸出位置資訊,這樣引數少了很多,這是速度的保證
- 利用default boxes進行粗定位,類似於anchor機制,相比於YOLO直接劃分cell進行迴歸一定程度上也可以保證其精度。
相關文章
- MapReduce 論文閱讀筆記筆記
- AutoEmbedding論文閱讀筆記筆記
- CornerNet-Lite論文閱讀筆記筆記
- [論文閱讀筆記] Structural Deep Network Embedding筆記Struct
- Visual Instruction Tuning論文閱讀筆記Struct筆記
- Pixel Aligned Language Models論文閱讀筆記筆記
- 【論文閱讀筆記】Transformer——《Attention Is All You Need》筆記ORM
- Reading Face, Read Health論文閱讀筆記筆記
- ACL2020論文閱讀筆記:BART筆記
- 兩篇知識表示方面的論文閱讀筆記筆記
- 論文閱讀:SiameseFC
- GeoChat論文閱讀
- 【論文閱讀筆記】多模態大語言模型必讀 —— LLaVA筆記模型
- [論文閱讀筆記] Adversarial Learning on Heterogeneous Information Networks筆記ORM
- 論文閱讀筆記:Fully Convolutional Networks for Semantic Segmentation筆記Segmentation
- 【論文閱讀筆記】An Improved Neural Baseline for Temporal Relation Extraction筆記
- 共識演算法論文閱讀筆記1-hotstuff演算法筆記
- Raft論文讀書筆記Raft筆記
- 9/12讀論文筆記筆記
- [論文閱讀筆記] Community aware random walk for network embedding筆記Unityrandom
- 論文閱讀筆記:A Two-Step Approach for Event Factuality Identification筆記APPIDE
- 如何閱讀科研論文
- 阿里DMR論文閱讀阿里
- 並行多工學習論文閱讀(五):論文閱讀總結並行
- [論文閱讀筆記] Adversarial Mutual Information Learning for Network Embedding筆記ORM
- 論文閱讀筆記:LINE: Large-scale Information Network Embedding筆記ORM
- 論文閱讀筆記(五):Hire-MLP Vision MLP via Hierarchical Rearrangement筆記
- 論文閱讀筆記(四):AS-MLP AN AXIAL SHIFTED MLP ARCHITECTUREFOR VISION筆記
- Q-REG論文閱讀
- [論文閱讀筆記] Unsupervised Attributed Network Embedding via Cross Fusion筆記ROS
- [論文閱讀筆記] Are Meta-Paths Necessary, Revisiting Heterogeneous Graph Embeddings筆記
- Image Super-Resolution Using DeepConvolutional Networks論文閱讀筆記筆記
- 閱讀筆記筆記
- 《張五常論文集》閱讀筆記(一)筆記
- 論文筆記筆記
- 「DNN for YouTube Recommendations」- 論文閱讀DNN
- 論文閱讀 狀態壓縮
- [論文閱讀] Hector MappingAPP