理解深度卷積網路

2021-08-11 14:21:01 字數 1353 閱讀 2091

1 如何分類貓和狗?

在kaggle的cat & dogs比賽中,提供一系列有貓和狗標記的影象。訓練集包含25000張關於狗和貓的,測試集包含12500。

影象有不同的解析度,貓和狗有不同的形狀,位置,顏色。可能坐著,可能開心或者傷心。貓可能睡覺狗可能在吠。

神經網路在分類時高效是其自動學習抽象的多層,其簡化每個類別的特徵。它們能識別具有極其豐富的模型,並對扭曲和地理轉變具有魯棒性

2- 全連線網路vs cnn

對於影象分類任務fc網路不是最優的

2.1 全連線網路

fc網路是每個神經元在鄰接層中每個神經元相連。

影象首先轉化到一維向量再輸入到網路中。例如256*256的彩色**,使用256*256*3=196608 大小的向量表示。向量中每個元素表示畫素值。輸出層大小為2,表示輸出類別。全連線層可以學習複雜的非線性模式,並很好的泛化假設我們設計乙個魯棒的結構其不會過擬合資料。

然而在處理時,全連線網路不是最好的選擇。

其中有兩個主要原因:

1 假設有1000個隱藏單元的隱藏層,連線輸入層那麼第乙個隱藏層196608 * 1000,雖然不是很大的書,但也不可能表現的很好基於神經網路需要更多層來增強魯棒性。假設只要一層就夠了,現在計算記憶體消耗,float值需要8bytes. 196698000個權重需要大約1572g。

2 損失了影象內在的空間結構。事實上,通過轉化影象到乙個長向量中,每個畫素值被網路處理。畫素值之間沒有假設空間關係。每個畫素點扮演同樣的角色。

為了消除這兩個侷限,使用cnn

2.2 卷積神經網路

cnn作為一種特殊的神經網路架構被設計去處理影象資料。一些因素吸引著人們:

1 能夠處理上百萬有標記樣本的資料集。

2 使用gpu實現,使得大模型在實踐中能執行

3 增強模型正則化例如dropout

cnn有自己的結構和屬性,不同於標準的fc網路。主要包含5個基本塊:a輸入層,b卷積層, c.relu層,d,pooling層,e. 全連線層

a 輸入層

在處理影象時認為它們是方形,每個神經元表示乙個畫素值。cnn保持影象大小,不壓縮它們到乙個向量中。

b 卷積層

首先解釋下在連線上卷積網路和全連線網路之間的不同。

全連線網路的連線是密集的,這意味著每個神經元在給定層中連線到鄰接層中所有神經元。當多維度資料點從一層flow到下一層中,每個神經元的啟用值是由在之前層中所有神經元的權重決定的。

然而在cnn中不是全連線的。這意味著在隱藏層中每個神經元不是和前一層的所有神經元相連。只是連線一部分。

明天繼續。。。。

深度學習 卷積理解

一.深度卷積神經網路學習筆記 一 假設輸入影象尺寸為w,卷積核尺寸為f,步幅 stride 為s 卷積核移動的步幅 padding使用p 用於填充輸入影象的邊界,一般填充0 那麼經過該卷積層後輸出的影象尺寸為 w f 2p s 1。2.它寫出為什麼會用padding?卷積核大小該如何確定?strid...

深度學習 卷積神經網路

一 卷積神經網路基礎 二 lenet 三 常見的一些卷積神經網路 卷積層的超引數 填充和步幅。步幅 stride 每次卷積核在輸入陣列上滑動的行數與列數。多輸入與輸出通道 將3維陣列除寬高外的一維稱為通道維。1 1卷積層 包含1 1的卷積核的卷積層。1 1卷積核在不改變輸入高寬的情況下調整通道數。如...

深度學習 卷積神經網路

卷積神經網路 convolutional neural networks,cnn 是一類包含卷積計算且具有深度結構的前饋神經網路 feedforward neural networks 是深度學習 deep learning 的代表演算法之一。卷積神經網路具有表徵學習 representation ...