abstract
本篇論文是解決卷積網路平移不變性的問題,即便訓練出一個準確率很高的網路,但往往圖片稍微移動一下,圖片的預測就會差很多,如下圖所示,橫軸代表對角線往下移動的元素,縱軸代表該類別輸出的機率,由圖可以發現沒有經過blur pool網路的輸出特別的不穩定,但使用本篇論文所提出的blur pool解決方法後就穩定許多。
main method
下圖是作者用一維空間來解釋為什麼會有上述現象發生的原因,如下圖所示,訊號源為[0,0,1,1,0,0,1,1],經過s=2,k=2的max pool後訊號會變成[0 1 0 1],但經過一個小小的shift之後,訊號就會變成[1 1 1 1],造成上述現象產生的原因就是因為有stride的原因
下圖是作者提出的解決方法
- 首先對原訊號做dense max(k=2,s=1)的動作
[0 1 1 1 0 1 1 1 0] - 再來使用blur pool (k=3,s=2)
每層k的元素為[1 2 1]/4
因此訊號前面補齊周邊的1就變成了 1 0 1 1 1 0 1 1 1 0
做blur pool(shift 0)後就變成了 0.5 1 0.5 1 0.5 1
做blur pool(shift 1)後就變成了 0.75 0.75 0.75 0.75
這麼做的原因就會使得輸出變的平滑,有偏移與沒有偏移所產生的結果都會很相近,如同圖上灰色虛線所表示的
因此,套用到二維的圖片後也是相同的原理,前面先做一個dense max,後面再使用blur pool,作者提供了各種不同kernel size的卷積核,分別是
- k=2, [1,1]/2
- k=3, [1,2,1]/4
- k=4, [1,3,3,1]/8
- k=5, [1,4,6,4,1]/16
…