1. 程式人生 > >卷積神經網路隨記

卷積神經網路隨記

基本原理

資料-->前向傳播得出損失-->反向傳播更新引數

卷積神經網路最核心的任務就是分類任務。
檢索任務或者說推薦,比如找出與某個花同類別的花,什麼東西和這個比較像,還有類似淘寶的衣服同款推薦。

Detection做的就是兩件事,第一件是找到框,我們需要知道什麼樣的東西是個物體。第二件事就是這個框裡面的物體究竟是什麼物體。分類和迴歸一起做。學術界也是非常關注這個Detection
Segmentation:把圖片中的每個物體給它裁剪出來。

Detection的應用比如無人駕駛汽車對周圍物體的檢查,推薦使用顯示卡處理這類任務。

特徵提取的操作。

姿勢識別,最重要的事就是關鍵點的定位。

識別細胞突變,字型識別,標誌識別,車牌識別。

計算機來對圖片進行描述 CNN+LSTM

融合影象風格

左邊是經典的神經網路,右邊是卷積神經網路。

卷積神經網路的組成

通過filter進行特徵提取。
經過CONV層之後得的東西,我們就叫特徵圖,即原始影象的概括性代表。

filter的深度一定和與他連線的前一層的深度是一樣的。各自filter提取出來的是它們各自的特徵圖。

將6個filter得到的6個特徵圖堆疊起來就是我們的輸出結果了。

在得到的特徵圖上再進行特徵提取得到下一層特徵圖。

對原始的特徵進行一步又一步的濃縮,原圖-->低層次的特徵-->中層次的特徵-->高層次的特徵。

求內積

引數

步長為2是我們得到了9個框。stride太小,得到的框就太多,stride太大 就會漏掉一些影象上的資訊,那stride多大合適呢?
2號畫素點相比1號畫素點被我們利用了2次,那麼2號畫素點相比1號畫素點對於特徵圖來說是不是貢獻了更多的資訊,如果要讓1號畫素點也貢獻多一點資訊,我們要怎麼做?可以利用padding引數,在原始的輸入矩陣外圍加上一層0

根據輸入大小計算輸出大小。

引數共享

像全連線層這種情況,需要訓練的權重非常多。卷積神經網路有個非常重要的特性就是權重的共享。

輸出層大小計算公式

Pooling Layer

對特徵圖進行一個濃縮又叫下采樣。兩種壓縮方式分別是:mean和max

經過末尾的全連線層得到一些最終的權重,這些權重即可以用來做分類也可以用來做迴歸。

卷積的前向傳播

X向量的維度 第一個數表示輸入資料batchd(我們的輸入資料是按批次輸入的)的第0個樣本編號,第二個數代表顏色通道,第三 第四個維度就是影象的高和寬。filter的深度必須是和它前一層的輸入深度一致。

卷積的反向傳播

池化的反向傳播

mean採用均攤的方式,max只保留原來的最大值 其他位置填0