日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SPP pooling layer

發布時間:2025/4/16 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SPP pooling layer 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

參考:Spatial Pyramid Pooling in Deep Convolutional
Networks for Visual Recognition

SPP_net的提出

因為傳統的CNNs網絡只能接受固定size的images。實際上,卷積層可以輸入任意尺度的, 但這樣就會導致輸出的feature map 大小不同;而InnerProduct layer 的輸入必須是固定的。因此在CNNs后,InnerProduct 前加入SPP pooling layer ,使得無論輸入多大的images, 經過該層后輸出的feature vecture 大小都一樣。雖然提出來的動機是為了解決多尺度圖像的訓練問題,但是,設計的SPP pooling layer 設計了幾個不同的level,從而這個multi-level pooling 實際上進行了幾個多個尺度的抽象。

作者在應用到分類問題上時:

進行了兩種訓練,一種是用單尺度圖像訓練,一種是多尺度圖像進行訓練。雖然理論上,網絡可以輸入任意尺度的圖像,但是作者,為不同尺度的圖像設定了完全相同的網絡結構,并讓它們共享權重,每一個epoch僅使用一個尺度的圖像進行訓練,然后下一次epoch 再訓練另一個尺度的圖像。(但是,我怎么感覺實際上就是一個網絡呢,理解的還不透。。。)

作者就分類進行了如下四個方面的工作:

multi-view Testing:
在測試的時候,從原始圖像(256*xxx)的中間及四個corner 提取的圖像以及它們的水平flipping,進行10-view Testing,該結果能提高accuracy.
multi-size Training:
訓練網絡時,采用multi-size 圖像進行訓練,相對于single-size 的,能提高accuracy.
multi-level pooling:
訓練網絡時,仍采用single-size的圖像進行訓練,相比傳統網絡僅僅替換了Inner Product layer前得普通pooling layer 為SPP pooling layer, 發現multi-level pooling 能提高accuracy.
full-image representation:
采用full-image進行測試雖然沒有10-view的結果好,但是比crop sample上的測試結果好,而且,把full-image及其horizontal flipping 添加到multi-view testing 中,還能進一步提高效率。

簡單的進行了測試,把lenet網絡中的最后一個pooling替換成spp pooling layer(spp3表示3個level的pooling),看到效果還是有一點點提升的。
SPP層:
message SPPParameter {
enum PoolMethod {
MAX = 0;
AVE = 1;
STOCHASTIC = 2;
}
optional uint32 pyramid_height = 1;
optional PoolMethod pool = 2 [default = MAX]; // The pooling method
enum Engine {
DEFAULT = 0;
CAFFE = 1;
CUDNN = 2;
}
optional Engine engine = 6 [default = DEFAULT];
}

總結

以上是生活随笔為你收集整理的SPP pooling layer的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。