Dynamic Filter Networks

Dynamic Filter Networkshtml

2019-06-10 11:29:19git

Paper:http://papers.nips.cc/paper/6578-dynamic-filter-networks.pdf github

Code (Lasagne):https://github.com/dbbert/dfn 網絡

 

1. Background and Motivation:框架

標準卷積神經網絡中,都是採用訓練以後學習到的 filters,而本文則提出了一種新的學習框架,稱爲:Dynamic Filter Network,該網絡中的 filter 是根據輸入動態生成的。 這種框架更加靈活,強大,並無提增長模型的參數個數。普遍的 filtering operation 均可以採用這種框架,包括:local spatial transformations, selective blurring 或者 adaptive feature extraction. 此外,也能夠用於循環網絡框架中(如 Recurrent architecture)。學習

 

該模型包含兩個部分:spa

1). filter-generating network, 能夠基於給定的輸入,動態的生成 sample-specific filter network。該參數並不是是固定的,像正則化模型參數;3d

2). dynamic filtering layer, 而後將這些 filters 應用到輸入上。orm

這兩個模塊都是可微分的。做者還基於此提出了一種 dynamic local filtering layer,不可是 sample-specific,並且是 position-specific 的。這些 filters 從不一樣 position 以及 不一樣 samples 都是可變化的,容許咱們在在輸入上進行更多操做。該框架能夠學習 spatial 和 photometric changes,由於像素不是簡單的進行放置的,filters 可能在全部的近鄰上進行操做。htm

 

2. Dynamic Filter Networks 

 

如上圖所示,本文所提出的網絡的結構,主要包含兩個模塊:一個是 filter 產生模塊,另外一個是 dynamic filter layer。這兩個模塊都是可微分的,模塊的輸入能夠是相同的,也能夠是不一樣的,具體跟所涉及的任務相關。爲了清晰起見,做者這裏解釋了 model parameters 和 dynamically generated parameters 的區別:model parameters 表示預先進行初始化的 layer parameters,僅僅在 training 階段進行更新;而 dynamic generated parameters 是 sample-specific 的,而且能夠快速的進行產生,而不須要進行初始化。本文所涉及的 filter-generating network 輸出的是 dynamically generated parameters,可是該網絡自己的參數是屬於 model parameters。

 

2.1 Filter-Generating Network

濾波產生網絡的輸入是 $I_A$, 其輸出 filter $F_{\theta}$,該濾波器能夠用於輸入 $I_B$ 上來產生一個輸出 G,濾波器的大小決定了感覺野的大小,其選擇依賴於具體應用。感覺野的大小還能夠經過堆疊多層動態濾波模塊來實現增長。

 

2.2 Dynamic Filtering Layer :

該模塊將輸入的圖像或者特徵 $I_B$ 做爲輸入,而後輸出濾波以後的結果 G。

Dynamic convolutional layers: 就前文講的,此處的卷積操做用的卷積核是動態生成的,而不是預訓練產生的。其公式化表達以下:

 

這些 filter 是 sample-specific 的,而且是基於 filter-generating network 的輸入的。動態卷積層以下圖所示:

Dynamic local filtering layer

做爲上述 dynamic convolution layer 的一種拓展,dynamic local filtering layer 提供了一種更有意思的結果。在該 layer 中,filter operation 再也不是 translation invariant。不一樣的濾波器用於輸入 $I_B$ 的不一樣位置,這一點與傳統的局部鏈接 layer 相似:對於輸入 $I_B$ 的每個位置 (i, j),一個特定的 local filter $F_{\theta}^{(i, j)}$ 是被用於 $I_B(i, j)$ 位置中心區域的:

 

用於這種 layer 的 filters 再也不是 sample-specific,而是 position-specific。注意到,上述講的 dynamic convolution 是 local dynamic filtering 的特例,其中 local filters 是在整個圖像區域共享的。以下圖所示,

當輸入 $I_A$ 和 $I_B$ 都是圖像的時候,一個很天然的方法是用卷積網絡來實現 filter-generating network。也就是說,所產生的 position-specific filters 是依賴於 $I_A$ 區域中的 local image regions 的。

 

  

==

相關文章
相關標籤/搜索