怎樣理解「全連線」和「區域性連線」

2021-09-24 20:55:37 字數 2401 閱讀 2839

卷積層的全連線

在 cifar-10 訓練集中,所有的大小都只有32x32

x332x32x3

32x32x

3,即32像 素寬, 32畫素高, rge:(紅、 綠、藍) 3 色通道。 對於計算機而言,每張都是乙個32×32

×332×32×3

32×32×

3的數值矩陣。

按照全連線的前饋神經網路的處理模式,在輸入層就得有 32x32x3 ( 3072 )個對應的神經元,到了第乙個隱含層,由於是全連線,所以每乙個神經元都會有3072個權值連線。

於是,在整體上,在不考慮偏置引數的情況下,在 same padding (等大填充)模式下,隱含層的神經元個數也為32x32

×332x32×3

32x32×

3,那麼輸入層到隱含層之間就會有(32×

32×3)

×(32×

32×3)

=9437184

( 32×32×3) ×( 32×32×3 ) =9437184

(32×32

×3)×

(32×

32×3

)=94

3718

4個連線。 這個數字對於計算機而言,似乎是可以接受的,但顯然, 全連線模式很難適用於更大的以及更深的網路拓撲。

假設我們分析的是高畫質,輸入的是 1000×1000x3 的彩色,那麼對於前饋全連線的神經網路來說,輸入層到隱含層的引數權值就達到(3×

103×

103)

×(3×

103×

103)

=9×1

012( 3×10^3×10^3)×( 3×10^3×10^3 )=9×10^

(3×103

×103

)×(3

×103

×103

)=9×

1012

個之多。

這還是在只有乙個隱含層的情況下,可想而知,如果網路中具有多個隱含層,那全連線就會產生組合**問題。

海量級別的引數訓練是極其耗時的。 而事實上,這樣的全連線模式也是極其浪費的。 因為有些神經元(比如色彩神經元)對其他神經元(比如輪廓神經元)的影響是微乎其微的,強拉到一起相互影響,就如同你真的用「蝴蝶效應」來**天氣變化問題一樣,實際上並沒有太大意義。 更何況,調節的引數量過大,也很容易產生過度擬合問題。 因此,如果能有效減少神經網路的引數個數,對提高網路訓練效率和泛化能力,都是大有神益的。

卷積層的區域性連線

區域性連線( local connectivity )也稱為區域性感知或稀疏連線。 讓我們再次以cifar-10影象集為輸入資料,來**一下區域性連線的工作原理。

在卷積神經網路中,具體到每層神經元網路,它可以分別在長( width )、 寬( height )和深度( depth )等三個維度上分布神經元。 請注意,這裡的「深度」並不是整個卷積網路的深度(層數),而是在單層網路中神經元分布的三個維度。 因此, width×height×depth 就是單層神經元的總個數。

通過前面的介紹可知,每一幅 cifar-10 影象都是 32x32x3 的.rgb 圖(分別代表長、 寬和 高,此處的高度就是色彩通道數)。 也就是說,在設計輸入層時,共有 32×32×3=3072 個神經元。

對於隱含層的某個神經元,如果還按全連線前饋網路中的設計模式,它不得不和前一層的所有神經元( 3072 )都保持連線,也就是說,每個隱含層的神經元需要有 3072 個權值。 如果隱含層的神經元也比較多,那整個權值總數是巨大的。

但現在不同了。 通過區域性連線,對於卷積神經網路而言,隱含層的某個神經元僅僅需要與前層部分區域相連線。 這個區域性連線區域有乙個特另的名稱叫「感知域 的大小(比如 5×5×3 ),如圖所示。

對於隱含層的某乙個神經元,它的前向連線個數由全連線的32×32

×332 × 32 × 3

32×32×

3個減少到稀疏連線的5×5×3個。 連線的數量要比原來的稀疏很多。 因此,區域性連線也被稱為「稀疏連線( sparse connectivity )」。

其實一直很困惑,一張代表的畫素矩陣和乙個卷積核進行卷積,卷積核是在畫素矩陣上以此滑過的,那這樣的話,再回憶一下cs231課程裡的,那個用於貓分類的rgb彩色,那張把紅綠藍三個通道的畫素值拉成了乙個(×

1\times1

×1)的向量,那既然這樣的話,這個卷積核還怎麼滑動呢?難道也把卷積核拉成了乙個(×

1\times1

×1)的向量?

我是這樣想的,所有的資料在計算機的儲存,都是按照記憶體位址,有規律的排列的,所以,如果卷積的話,它實際上也會是像我們描述的那樣,卷積核會在表示**的畫素矩陣上以此滑過!

全連線層的理解

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

sql 內連線 左連線 右連線 全連線 看例子理解

看概念不好理解 直接上例子吧!例子 a表 id name b表 id job parent id 1 張3 1 23 1 2 李四 2 34 2 3 王武 3 34 4 a.id同parent id 存在關係 1 內連線 select a.b.from a inner join b on a.id ...

對於全連線層的理解

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