複製鏈接
請複製以下鏈接發送給好友

卷積核

鎖定
卷積核就是圖像處理時,給定輸入圖像,輸入圖像中一個小區域中像素加權平均後成為輸出圖像中的每個對應像素,其中權值由一個函數定義,這個函數稱為卷積核。
中文名
卷積核
外文名
convolution kernel
又    稱
濾波器

卷積核卷積核的意義

卷積核其實在圖像處理中並不是新事物,Sobel 算子等一系列濾波算子,一直都在被用於邊緣檢測等工作中,只是以前被稱為 Filter。做圖像處理的同學應該有印象。
卷積核具有的一個屬性就是局部性。即它只關注局部特徵,局部的程度取決於卷積核的大小。比如用 Sobel 算子進行邊緣檢測,本質就是比較圖像鄰近像素的相似性。
也可以從另外一個角度理解卷積核的意義。學過信號處理的同學應該記得,時域卷積對應頻域相乘。所以原圖像與卷積核的卷積,其實是對頻域信息進行選擇。比如,圖像中的邊緣和輪廓屬於是高頻信息,圖像中某區域強度的綜合考量屬於低頻信息。在傳統圖像處理裏,這是指導設計卷積核的一個重要方面。

卷積核CNN中的卷積核

CNN 中的卷積核跟傳統的卷積核本質沒有什麼不同。仍然以圖像為例,卷積核依次與輸入不同位置的圖像塊做卷積,得到輸出,如圖一。
圖一 CNN中的卷積核 圖一 CNN中的卷積核
同時,CNN 有一些它獨特的地方,比如各種定義:
  1. CNN 可以看作是 DNN 的一種簡化形式,即這裏卷積核中的每一個權值就可以看成是 DNN 中的 ,且與 DNN 一樣,會多一個參數偏置。
  2. 一個卷積核在與 Input 不同區域做卷積時,它的參數是固定不變的。放在 DNN 的框架中理解,就是對同一層 Layer 中的神經元而言,它們的 和 是相同的,只是所連接的節點在改變。因此在 CNN 裏,這叫做 共享權值偏置。
  3. 在 CNN 中,卷積核可能是高維的。假如輸入是 維的,那麼一般 卷積核就會選擇為 維,也就是與輸入的 Depth 一致。
  4. 最重要的一點,在 CNN 中,卷積核的權值不需要提前設計,而是跟 DNN 一樣利用 GD 來優化,我們只需要初始化。
  5. 如上面所説,其實卷積核卷積後得到的會是原圖的某些特徵(如邊緣信息),所以在 CNN 中,卷積核卷積得到的 Layer 稱作特徵圖。
  6. 一般 CNN 中兩層之間會含有多個卷積核,目的是學習出 Input 的不同特徵,對應得到多個特徵圖。又由於卷積核中的參數是通過 GD 優化得到而非我們設定的,於是初始化就顯得格外重要了。 [1] 
參考資料
  • 1.    孫志軍, 薛磊, 許陽明,等. 深度學習研究綜述[J]. 計算機應用研究, 2012, 29(8):2806-2810.