1. 程式人生 > >基於更深卷積網路的大規模影象識別——閱讀筆記

基於更深卷積網路的大規模影象識別——閱讀筆記

這篇文章是根據之前有一篇翻譯的文獻而來,翻譯見前面的部落格: https://blog.csdn.net/D_____S/article/details/82825322

第一次讀外文文獻,理解起來非常困難,參考了網上的不少資料。

之後會學習如何復現此網路,復現過程將在接下來的部落格上更新。

 

一、VGG的意義

這篇論文之所以簡稱為 “VGG” 是因為出自牛津大學 Oxford Visual Group。

 

二、文章內容

摘要

本篇文章是以2014年的ImageNet挑戰賽上的模型為基礎,當時的模型分別在比賽上的定位和分類專案中取得了第一名和第二名的好成績。最後公佈了兩廣效能最好的模型 VGG-16 和 VGG-19 來給大家研究。

1、引言

卷積網路在大規模影象識別和分類上取得成功的原因:大型公共影象資料集;高效能運算機系統;大規模分散式叢集。

之前的技術:在AlexNet的原始框架上做一些改進。比如在第一個卷積上使用較小的卷積核以及較小的滑動步長。另一個方法則是在全圖以及多個尺寸上稠密的訓練測試網路。

本文的主要是增加網路深度,採用了3x3的卷積核。

圖取自網上

2、卷積配置

文章為了將關注點放在深度上,其他網路引數的配置都是固定的,通過增加捲積層的方法來增加網路深度。

2.1、構架

訓練輸入:固定尺寸 224x224的 RGB 影象。

預處理:每個畫素值減去訓練集上的RGB均值。

卷積核:一堆 3x3 的卷積核,步長為 1,使用填充來保持卷積後圖像空間解析度不變。

空間池化:為 2x2 的滑動視窗,步長為 2。

全連線層:特徵提取之後,是三個全連線層,前面兩個是 4096 通道,第三個是 1000通道,最後一個是 soft-max層,輸出概率。

隱藏層:所有隱藏層都用非線性修正ReLu。

2.2、詳細配置

表1中每列代表不同的網格,只有深度不同(層數計算不包含池化層)。第一層為64通道,每經過一次最大池化,通道數翻倍,直到數量達到512通道。

表2表示每種模型的引數數量,因為引數量主要集中在全連線層,所以儘管網路加深,但權重變化不大。

2.3、討論

兩個 3x3 的卷積核相當於一個 5x5 的卷積濾波器的感受野,三個 3x3 的卷積核相當於一個 7x7 的卷積核的感受野。

優點:三個卷積堆疊具有三個非線性的修正層,模型更具有辨別力;引數的數量更少,相當於將 7x7 的卷積核上加入了正則化,便於加快訓練。

圖取自網上

從下圖來看,在計算量這裡,為了突出小卷積核的優勢,拿同conv3x3、conv5x5、conv7x7、conv9x9和conv11x11,在224x224x3的RGB圖上(設定pad=1,stride=4,output_channel=96)做卷積,卷積層的引數規模和得到的feature map的大小如下:

圖取自網上

 

3、分類框架

3.1、訓練

除了多尺度訓練影象取樣方法不一樣以外,其他的訓練方法與AlexNet基本一致。

訓練採用 mini-batch 梯度下降法,batch size = 256;

採用動量優化演算法,momentum = 0.9;

採用L2 正則化方法:懲罰係數為0.00005;dropout比率為 0.5;

初始學習率為 0.001,當驗證集準確率不在提高時,學習率衰減為原來的 0.1 倍,總共下降 3 次;

總迭代次數為 370K(74epochs);

資料增強採用隨即裁剪,水平翻轉,RGB顏色變化;

設定訓練圖片大小的兩種方法;

定義 S 代表經過各向同性縮放的訓練圖片最小邊。

第一種方法:針對單尺寸影象訓練,S=256或384,輸入圖片從中隨即裁剪 224x224 大小的圖片,原則上 S 可以取任意不小於 224 的值。

第二種方法:針對多尺度影象訓練,每張影象單獨從 [Smin,Smax] 中隨機選取 S 來進行尺寸縮放,由於影象中目標物體尺寸不定,因此訓練中採用這種方法是有效的,可看作一種尺寸抖動的訓練集資料增強。

網路權重的初始化非常重,因為深度網路梯度的不穩定性,不合適的初始化會阻礙網路的學習。因此先選練淺層網路,再用訓練好的淺層網路去初始化深層網路。

3.2、測試

測試階段,對於已經訓練好的卷積網路和一張輸入影象,採用以下方法分類:

首先,影象的最小邊各向同性縮放到預定尺寸Q;

然後,將原先的全連線層改換成卷積層,在未裁剪的全影象上運用卷積網路,輸出是一個與輸入影象尺寸相關的分類得分圖,輸出通道數與類別數相同;

最後,對分類得分圖進行空間平均化,得到固定尺寸的分類得分向量。

測試階段採用全卷積網路,無需對輸入影象進行裁剪,相對於多重裁剪效率會更高。但多重裁剪評估和運用全卷積的密度評估是互補的,有助於效能提升。

 

4、分類實驗

4.1、單尺寸評估

表3展示單一測試尺寸上的卷積網路效能。

4.2、多尺寸評估

表4是多個測試尺寸上的卷積網路效能。

4.3、多重裁剪與密集網路評估

表5是多重裁剪與密集網路對比,並顯示了兩者融合的效果。

4.4、卷積模型的融合

這部分將不同模型融合,計算多個模型的 soft-max 分類概率的平均值來對它們的輸出進行組合,由於模型的互補性效能有所提高。

表6是多個卷積網路融合效果。

4.5、與當前最好演算法的比較

 

5、結論

網路深度有利於分類準確率的提升。