池化層全連線層理解

2021-09-18 06:05:36 字數 1393 閱讀 4934

關於卷積層我們先來看什麼叫卷積操作: 下圖較大網格表示一幅,有顏色填充的網格表示乙個卷積核,卷積核的大小為3*3。假設我們做步長為1的卷積操作,表示卷積核每次向右移動乙個畫素(當移動到邊界時回到最左端並向下移動乙個單位)。卷積核每個單元內有權重,下圖的卷積核內有9個權重。在卷積核移動的過程中將上的畫素和卷積核的對應權重相乘,最後將所有乘積相加得到乙個輸出。下圖乙個8x6的經過卷積後形成乙個6*4的圖

卷積層的作用----區域性感知

:使用區域性感知的原因是一般人們認為中距離相近的部分相關性較大,而距離比較遠的部分相關性較小。在卷積操作中步長的設定就對應著距離的遠近。但是步長的設定並無定值需要使用者嘗試。

引數共享

在介紹引數共享前我們應該知道卷積核的權重是經過學習得到的,並且在卷積過程中卷積核的權重是不會改變的,這就是引數共享的思想。這說明我們通過乙個卷積核的操作提取了原圖的不同位置的同樣特徵。簡單來說就是在一幅中的不同位置的相同目標,它們的特徵是基本相同的。其過程如下圖:

多核卷積

如權值共享的部分所說我們用乙個卷積核操作只能得到一部分特徵可能獲取不到全部特徵,這麼一來我們就引入了多核卷積。用每個卷積核來學習不同的特徵(每個卷積核學習到不同的權重)來提取原圖特徵。

全連線層(fully connected layers,fc)在整個卷積神經網路中起到「分類器」的作用,目前由於全連線層引數冗餘(僅全連線層引數就可佔整個網路引數80%左右)

注1: 有關卷積操作「實現」全連線層,有必要多囉嗦幾句。

以vgg-16為例,對224x224x3的輸入,最後一層卷積可得輸出為7x7x512,如後層是一層含4096個神經元的fc,則可用卷積核為7x7x512x4096的全域性卷積來實現這一全連線運算過程,其中該卷積核引數如下:

「filter size = 7, padding = 0, stride = 1, d_in = 512, d_out = 4096」

經過此卷積操作後可得輸出為1x1x4096。

如需再次疊加乙個2048的fc,則可設定引數為「filter size = 1, padding = 0, stride = 1, d_in = 4096, d_out = 2048」的卷積層操作。

上圖的經過三個卷積核的卷積操作得到三個特徵圖。需要注意的是,在多核卷積的過程中每個卷積核的大小應該是相同的。

全連線層後面加bn層 池化層和全連線層應用

實際的卷積網路很少僅通過卷積層來構建。它們通常還有其他型別的層。最簡單的是全連線層。這是一種普通的卷積網路層,其中前一層的所有輸出被連線到下一層上的所有節點。通常,這些層位於網路末端。您會在卷積網路中看到的另一種重要的層是池化層。池化層具有多種形式,但最常用的是最大池化,其中輸入矩陣被拆分為相同大小...

全連線層的理解

全連線層的每乙個結點都與上一層的所有結點相連,用來把前邊提取到的特徵綜合起來。由於其全相連的特性,一般全連線層的引數也是最多的。下圖中連線最密集的2個地方就是全連線層,這很明顯的可以看出全連線層的引數的確很多。在前向計算過程,也就是乙個線性的加權求和的過程,全連線層的每乙個輸出都可以看成前一層的每乙...

對於全連線層的理解

全連線層的每乙個結點都與上一層的所有結點相連,用來把前邊提取到的特徵綜合起來。由於其全相連的特性,一般全連線層的引數也是最多的。下圖中連線最密集的2個地方就是全連線層,這很明顯的可以看出全連線層的引數的確很多。在前向計算過程,也就是乙個線性的加權求和的過程,全連線層的每乙個輸出都可以看成前一層的每乙...