理解卷積神經網路的利器:9篇重要的深度學習論文(下)

阿里云云棲社群發表於2018-03-22

摘要: 為了更好地幫助你理解卷積神經網路,在這裡,我總結了計算機視覺和卷積神經網路領域內許多新的重要進步及有關論文。

繼“理解卷積神經網路的利器:9篇重要的深度學習論文(上)”文章,本文繼續介紹過去五年內發表的一些重要論文,並探討其重要性。論文1—5涉及通用網路架構的發展,論文6—9則是其他網路架構的論文。點選原文即可檢視更詳細的內容。

5.Microsoft ResNet(2015)

現在,將一個深度卷積神經網路的層數增加一倍,再增加幾層,也仍然不可能達到2015年微軟亞洲研究院提出的ResNet架構的深度。ResNet是一種新的包含152層的網路架構,它使用一個特殊的結構記錄分類、檢測和定位。除了在層數方面進行創新外,ResNet還贏得了2015年ImageNet大規模視覺識別挑戰賽的冠軍,誤差率低達3.6%(在現有的技術水平上,誤差率通常在5-10%)

殘差塊

殘差塊的原理是,輸入x通過卷積-殘差函式-卷積系列,得到輸出F(x),然後將該結果加到原始輸入x中,用H(x)= F(x)+ x表示。在傳統的卷積神經網路中,H(x)=F(x)。因此,我們不只計算從x到F(x)變換,而是要計算H(x)= F(x)+ x。下圖中的最小模組正在計算一個“增量”或對原始輸入x做輕微改變以獲得輕微改變後的表示。作者認為,“優化殘差對映比優化原始未引用的對映要容易。”


殘差塊可能比較有效的另一個原因是,在反向傳播的後向傳遞期間,由於加法運算可以作用於梯度,梯度將會更容易地通過殘差塊。

主要論點

1.“極端深度” - Yann LeCun。

2.包含152層

3.有趣的是,僅在經過前兩層之後,將陣列從224*224壓縮到56x56。

4.在普通網路中,單純的增加層數會導致更高的訓練和測試誤差(詳細請看論文)。

5.該模型嘗試構建了一個1202層的網路,可能是由於過擬合,測試精度較低。

重要性

3.6%的誤差率!這一點足夠重要。ResNet模型是目前我們所擁有的最好的卷積神經網路架構,也是殘差學習理念的一個偉大創新。我相信即使在彼此之上堆疊更多層,效能也不會再有大幅度的提升了,但肯定會有像過去兩年那樣有創意的新架構。

6.基於區域的卷積神經網路:R-CNN(2013年);Fast R-CNN(2015年); Faster R-CNN(2015年)

有些人可能會說,R-CNN的出現比以前任何與新網路架構有關的論文都更具影響力。隨著第一篇論述R-CNN的論文被引用超過1600次,加州大學伯克利分校的Ross Girshick團隊創造出了計算機視覺領域最有影響力的進展之一:研究表明Fast R-CNNFaster R-CNN更適合物件檢測,且速度更快。

R-CNN架構的目標解決物件檢測問題。現在,我們想對給定的影象上所包含的所有物件繪製邊界框,可分為兩步:候選區域的選擇和分類。

作者指出,任何類不可知候選區域方法都應該適用。選擇性搜尋專門用於R-CNN,它能夠產生2000個不同的最有可能包含指定物件的區域,候選區域產生後,會被“轉換”為影象大小的區域,送入一個訓練好的卷積神經網路(在這種情況下為AlexNet),為每個區域提取特徵向量。然後,這組向量作為一組線性支援向量機的輸入,這些線性支援向量機對每個類進行訓練並輸出一個分類。向量也被送入邊界框迴歸器以便獲得最準確的位置座標。最後,使用非極大值抑制來抑制彼此具有明顯重疊的邊界框。

Fast R-CNN

對原始模型進行改進原因有三:模型訓練需要經歷多個步驟(ConvNets→支援向量機→邊界框迴歸器);計算成本很高,執行速度很慢(R-CNN處理一張影象需要53秒)。為了提高執行速度,Fast R-CNN共享了不同候選區域之間卷積層的計算,交換了候選區域的生成順序,同時執行卷積神經網路。在這個模型中,影象影象首先送入卷積網路,然後從卷積網路的最後一個特徵對映獲得候選區域的特徵,最後被送入全連線層、迴歸以及分類頭部。

Faster R-CNN

Faster R-CNN致力於將R-CNN和Fast R-CNN比較複雜的訓練步驟簡單化。作者在最後一個卷積層後插入候選區域生成網路,該網路能夠檢視最後的卷積特徵對映併產生候選區域。後面使用與R-CNN相同的方法:感興趣區域池化、全連線層、分類和迴歸頭。

重要性

除了能夠準確識別影象中的特定物件,Faster R-CNN也能夠對該物件進行準確定位,這是一個質的飛躍。現在,Faster R-CNN已經成為物件檢測程式的一個標準。

7.生成敵對網路(2014)

據Yann LeCun稱,該網路可能是下一重大進展。在介紹這篇文章之前,我們先看一個對抗的例子:將一個經過擾動的影象經過卷積神經網路(已經在ImageNet資料集上訓練且執行良好),以使預測誤差最大化。因此,預測出來的物件類別有所改變,而該影象看起來與沒有經過擾動的影象相同。從某種意義上來說,對抗就是用影象愚弄卷積網路。

這個對抗的例子著實讓很多研究人員感到驚訝,並且迅速成為了一個大家感興趣的話題。現在讓我們來談談生成對抗網路,它包含兩個模型:一個生成模型和一個判別模型。判別器用來確定給定的影象是否真的自資料集,還是人為建立的;生成器用來是建立影象,以便判別器得到訓練生成正確的輸出。這可以看作一個博弈遊戲,打個比方:生成模型就像“偽造者團隊,試圖製造和使用假幣”;而判別模型就像“警察,試圖檢測假幣”。生成器試圖欺騙判別器,而判別器努力不被欺騙。隨著模型的訓練,這兩種方法都會得到改進,直到“真幣與假幣無法區分”。

重要性

這看起來很簡單,但為什麼我們很看重這個網路?正如Yan Le Leun在Quora中所說的那樣,現在判別器已經意識到“資料的內在表示”,因為它已經被訓練的能夠了解資料集中真實影象與人工建立影象之間的差異。因此,可以像卷積神經網路那樣,將它用作特徵提取器。另外,你也可以建立很逼真的人造影象(連結)。

8.Generating Image Descriptions(2014)

將卷積神經網路與迴圈神經網路結合起來會發生什麼?Andrej Karpathy團隊研究了卷積神經網路與雙向迴圈神經網路的組合,並撰寫了一篇論文,用來生成影象不同區域的自然語言描述。基本上,影象經過該模型後輸出效果如下:

這真是令人難以置信!我們來看看這與普通的卷積神經網路有何區別。傳統的卷積神經網路上,訓練資料中的每個影象都有一個明確的標籤。論文中描述的模型已經訓練了樣例,該樣例具有與每個影象相關聯的文字。這種型別的標籤被稱為弱標籤,其中文字片段是指影象的未知部分。使用這些訓練資料,深層神經網路能夠“推斷出文字片段和他們所要描述的區域之間的潛在關係”(引自論文)。另一個神經網路將影象轉換成一個文字描述。讓我們分別看看這兩個部分:對齊模型和生成模型。

對齊模型

對齊模型的目標是能夠將視覺影象和文字描述對齊,該模型將影象和文字轉化為二者之間的相似性度量值。

首先將影象輸入R-CNN模型,檢測單個物件,該模型在ImageNet資料集上進行訓練,排名前19位(加上原始影象)的物件區域被嵌入到500維空間,現在在每個影象中,我們都有20個不同的500維向量(用v表示),用來描述影象的資訊。現在我們需要關於文字的資訊,將文字嵌入到同一個多維度空間中,這一步驟採用雙向遞迴神經網路完成。從更高層次來看,這是為了解釋給定文字中單詞的上下文資訊。由於影象和文字的資訊都在相同的空間中,因此我們可以計算內部表示,來輸出相似性度量。

生成模型

對齊模型的主要目的是建立一個資料集:包含影象區域和對應的文字。而生成模型將從該資料集中進行學習,生成給定影象的描述。該模型將影象送入一個卷積神經網路,由於全連線層的輸出成為另一個迴圈神經網路的輸入,softmax層則可以被忽略。對於那些不熟悉迴圈神經網路的人來說,該模型可以理解為產生句子中不同單詞的概率分佈(迴圈神經網路也需要像卷積神經網路一樣進行訓練)。

重要性

Generating Image Descriptions的創新之處在於:使用看似不同的迴圈神經網路和卷積神經網路模型建立了一個非常實用的應用程式,它以某種方式將計算機視覺和自然語言處理領域結合在一起。在處理跨越不同領域的任務時如何使計算機和模型變得更加智慧方面,它的新想法為我們開啟一扇新的大門。

9.空間變換網路(Spatial Transformer Network)(2015年)

最後,我們來介紹一篇同樣很重要的論文,該模型的主要亮點就是引入了一個變換模組,它以某種方式對輸入影象進行變換,以便後續網路層能夠更容易對影象進行分類。作者不再對卷積神經網路的主要架構進行修改,而是在影象輸入到特定的卷積層之前對影象進行變換。這個模組希望糾正姿態規範化(針對物件傾斜或縮放的場景)和空間注意力(在擁擠的影象中關注需要分類的物件)。對於傳統的卷積神經網路來說,如果希望模型能夠同時適用於不同尺度和旋轉的影象,那麼將需要大量的訓練樣例才能使模型進行正確的學習。這個變換模組是如何解決這個問題的呢?

處理空間不變性的傳統卷積神經網路模型中的實體是最大池化層,一旦我們知道原始輸入陣列(具有較高的啟用值)中的特定特徵,其確切位置就不如它相對於其他特徵的相對位置那麼重要。而這種新的空間變換器是動態的,它會針對每個輸入影象產生不同的變換,而並不會像傳統的最大池化那樣簡簡單和預定義。我們來看看這個變換模組是如何執行的。該模組包括:

1.定位網路,將輸入陣列轉化並輸出必須使用的空間變換引數。對於仿射變換來說,引數或θ可以是六維的。

2取樣網格,這是使用本地化網路中建立的仿射變換(θ)對常規網格進行變形的結果。

3.取樣器,將輸入特徵對映進行變形。

這個模組可以放在卷積神經網路的任何一個節點,基本上可以幫助網路學習如何對特徵對映進行變換,從而最大限度地減少訓練期間的成本函式。

重要性

這篇文章之所以能夠引起我的注意,其主要原因就是對卷積神經網路的改進不一定需要對網路的整體架構做巨大的改變,我們不需要再建立下一個ResNet或Inception架構。本文對輸入影象進行仿射變換這一思路,使模型更加適用於影象的平移、縮放和旋轉。

以上為譯文。

文章原標題《A Beginner's Guide to Understanding Convolutional Neural Networks》,
譯者:Mags,審校:袁虎。

原文連結


相關文章