深度學習(二)神經網路中的卷積和反卷積原理

2022-01-22 10:06:23 字數 1263 閱讀 9719

深度學習教程目錄如下,還在繼續更新完善中

深度學習系列教程目錄

一.卷積

在深度學習的過程中,很多神經網路都會用到各種卷積核來進行操作,那麼我們就簡單講一下卷積的原理和實現過程。

那麼卷積在神經網路中的作用是什麼呢?一開始的傳統神經網路是沒有卷積層的,都是隱藏層加生全連線層的結構,這樣在中間得到的特徵都是線性的,不能提取到乙個區域性的特徵。而卷積神經網路的出現解決了這個問題,通過對乙個區域性區域進行卷積操作得到這個區域性區域的特徵值傳入下層大大提公升了神經網路提取特徵的能力,並且還減小了資料的大小。

那麼看看卷積的過程:

可以看到這是乙個3*3的卷積核在步長為1的方式遍歷這個矩陣,卷積核與其遍歷的覆蓋區域進行乙個點乘(其實是協相關)的運算得到乙個值存入後面的矩陣,這樣通過卷積核與資料矩陣的遍歷運算就可以直接提取(區域性感受野)一小塊區域的特徵,而不必像傳統神經網路一樣乙個值乙個值的提取。

卷積操作的計算方式如下: 

已知:則輸出大小為: 

同樣的上面這種具有縮放功能的卷積操作,如果這時候我們需要的是跟原來的資料一樣大小矩陣傳出要怎麼做呢?這就是padding的意義:

可以看到上圖輸入和輸出都是一樣大小的矩陣,因為我們在其外圍加了乙個大小為1 的padding,這樣就可以滿足輸入輸出都是一樣的。同理想要擴大或者縮小只要對外圍padding引數根據上面的公式進行調節即可。

二.反卷積

既然有卷積過程那麼肯定也有反卷積的過程對不對。不然怎麼進行卷積神經網路的反向傳導呢?嘿嘿

反卷積通常用於將低維特徵對映成高維輸入,與卷積操作的作用相反。還是看圖比較舒服是吧:

上圖就是將卷積後的區域,反卷積後變成原來的矩陣,其實看推導看原理肯定是很煩很枯燥的,這裡就不細說推導和原理了,那都是(線性代數)裡的知識了,我們這裡就講講怎麼反卷積回去。

其實說來一句話就好了。-------對於反卷積過程,採用卷積過程轉置後的濾波器(引數一樣,只不過把引數矩陣水平和垂直方向翻轉了一下)

好了今天得深度學習筆記就到這裡了,飛機我得去拿快遞了嘿嘿。

最後我這是一列的學習筆記,有興趣入門深度學習的可以看看在下後面的深度學習系列的筆記。

參考部落格:

反卷積神經網路

反卷積指的是,通過測量輸出和已知輸入重構未知輸入的過程。在神經網路中,反卷積過程不具備學習的能力。可以理解為下圖 反卷積神經網路的應用場景 我們可以利用反卷積神經網路進行通道均衡 影象恢復 語音識別 學 無損探傷等未知輸入heels過程辨識方面的問題。反卷積的原理 反卷積,可以理解為卷積操作的逆操作...

深度學習 卷積神經網路

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

深度學習 卷積神經網路

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