大家好,我是架構君,一個會寫代碼吟詩的架構師。今天說一說卷積神經網絡圖解_卷積神經網絡分類,希望能夠幫助大家進步!!!
文章目錄 - 卷積層
- 卷積的優點——參數共享和稀疏連接配接
- 池化層——無需學習參數
- 卷積神經網絡案例
- 梯度下降
- 經典的神經網絡
- 殘差網絡
- 1x1卷積 (Network in Network and 1x1 Convolutions)
- Inception網絡
- 遷移學習
- 神經網絡應用
- 分類定位
- 目标點檢測
- 滑動視窗的卷積實作
- YOLO算法
- 交并比
- 非極大值抑制
- Anchor Boxes
- 卷積的優點——參數共享和稀疏連接配接
- 梯度下降
- 殘差網絡
- 1x1卷積 (Network in Network and 1x1 Convolutions)
- Inception網絡
- 遷移學習
- 分類定位
- 目标點檢測
- 滑動視窗的卷積實作
- YOLO算法
- 交并比
- 非極大值抑制
- Anchor Boxes
參考資料:https://blog.csdn.net/weixin_36815313/article/details/105728919
卷積層
卷積的優點——參數共享和稀疏連接配接
-
參數共享
特征檢測如垂直邊緣檢測如果适用于圖檔的某個區域,那麼它也可能适用于圖檔的其他區域。也就是說,如果你用一個3×3的過濾器檢測垂直邊緣,那麼圖檔的左上角區域,以及旁邊的各個區域(左邊矩陣中藍色方框标記的部分)都可以使用這個3×3的過濾器。
-
稀疏連接配接
輸出(右邊矩陣中紅色标記的元素 30)僅僅依賴于這9個特征(左邊矩陣紅色方框标記的區域),看上去隻有這9個輸入特征與輸出相連接配接,其它像素對輸出沒有任何影響。
池化層——無需學習參數
卷積神經網絡案例
梯度下降
經典的神經網絡
LeNet-5 ,AlexNet, VGG, ResNet, Inception
疑問: 請教下為什麼随着網絡的加深,圖像的高度和寬度都在以一定的規律不斷縮小,而通道數量在不斷增,要這麼設計呢?
殘差網絡
詳解殘差網絡: https://zhuanlan.zhihu.com/p/42706477
随着網絡層數的增加,網絡發生了退化(degradation)的現象:随着網絡層數的增多,訓練集loss逐漸下降,然後趨于飽和,當你再增加網絡深度的話,訓練集loss反而會增大。注意這并不是過拟合,因為在過拟合中訓練loss是一直減小的。當網絡退化時,淺層網絡能夠達到比深層網絡更好的訓練效果,這時如果我們把低層的特征傳到高層,那麼效果應該至少不比淺層的網絡效果差,或者說如果一個VGG-100網絡在第98層使用的是和VGG-16第14層一模一樣的特征,那麼VGG-100的效果應該會和VGG-16的效果相同。是以,我們可以在VGG-100的98層和14層之間添加一條直接映射(Identity Mapping)來達到此效果。從資訊論的角度講,由于DPI(資料處理不等式)的存在,在前向傳輸的過程中,随着層數的加深,Feature Map包含的圖像資訊會逐層減少,而ResNet的直接映射的加入,保證了深層的網絡一定比淺層包含更多的圖像資訊。基于這種使用直接映射來連接配接網絡不同層直接的思想,殘差網絡應運而生。
1x1卷積 (Network in Network and 1x1 Convolutions)
池化層壓縮它的高度和寬度,1x1卷積壓縮輸入層中通道的數量
Inception網絡
Inception網絡或Inception層的作用就是代替人工來确定卷積層中的過濾器類型,或者确定是否需要建立卷積層或池化層。隻要合理建構瓶頸層,你既可以顯著縮小表示層規模,又不會降低網絡性能,進而節省了計算。
遷移學習
- 下載下傳别人已經訓練好網絡結構的權重作為預訓練,轉換到感興趣的任務上
- 資料越多,需要當機的層數越少,能夠訓練的層數就越多。如果有一個更大的資料集,那麼不要單單訓練一個softmax單元,而是考慮訓練中等大小的網絡,包含最終網絡的後面幾層。
注: 通過使用其他人預訓練的權重,很可能得到很好的性能,即使隻有一個小的資料集。大多數深度學習架構有是否訓練參trainableParameter=0,不訓練這些權重freeze=1,允許設定是否訓練特定層的權重。在這個例子中,隻需要訓練softmax層的權重,把前面這些層的權重都當機。
神經網絡應用
分類定位
目标點檢測
滑動視窗的卷積實作
-
為什麼要将全連接配接層轉化成卷積層?有什麼好處?
解釋: 參數共享(滑動區域享有相同參數)、共享計算(相同區域的計算相同)
-
原理:不需要把輸入圖像分割成四個子集分别執行前向傳播,而是把它們作為一張圖檔輸入給卷積網絡進行計算,公共區域共享計算
解釋: 以綠色方塊為例,假設你剪切出這塊區域(編号1),傳遞給卷積網絡,第一層的激活值就是這塊區域(編号2),最大池化後的下一層的激活值是這塊區域(編号3),這塊區域對應着後面幾層輸出的右上角方塊(編号4,5,6)
- 缺點: 不能輸出最精準的邊界框
YOLO算法
将這個對象配置設定到其中點所在的格子,即使對象橫跨多個格子,也隻會被配置設定到9個格子其中之一。 b x b_x bx, b y b_y by, b h b_h bh, b w b_w bw機關是相對于格子尺寸的比例