7類CNN小結


通過 1989 年 LeCun 處理網格狀拓撲數據(圖像和時間系列數據)的研究,CNN 首次受到關注。CNN 被視爲理解圖像內容的最好技術之一,並且在圖像識別、分割、檢測和檢索相關任務上表現出了當前最佳性能。CNN 的成功引起了學界外的注意。在產業界,如谷歌、微軟、AT&T、NEC 和 Facebook 這樣的公司都設立了研究團隊來探索 CNN 的新架構。目前,圖像處理競賽中的大多數領跑者都會採用基於深度 CNN 的模型。

自 2012 年以來,關於 CNN 架構的不同創新被提出來。這些創新可分爲參數優化、正則化、結構重組等。但是據觀察,CNN 網絡的性能提升應主要歸功於處理單元的重構和新模塊的設計。自 AlexNet 在 ImageNet 數據集上展現出了非凡的性能後,基於 CNN 的應用變得越來越普及。類似地,Zeiler 和 Fergus 介紹了特徵分層可視化的概念,這改變了用深度架構(如 VGG)在簡單的低空間分辨率中提取特徵的趨勢。如今,大多數新架構都是基於 VGG 引入的簡單原則和同質化拓撲構建的。

另一方面,谷歌團隊引入了一個非常著名的關於拆分、轉換和合並的概念,稱爲 Inception 模塊。初始塊第一次使用了層內分支的概念,允許在不同空間尺度上提取特徵。2015 年,爲了訓練深度 CNN,Resnet 引入的殘差連接概念變得很有名,並且,後來的大多數網絡像 Inception-ResNet,WideResNet,ResNext 等都在使用它。與此類似,一些像 WideResnet、Pyramidal Nets、Xception 這樣的架構都引入了多層轉換的概念,通過額外的基數和增加的寬度來實現。因此,研究的重點從參數優化和連接再次調整,轉向了網絡架構設計(層結構)。這引發了許多像通道提升、空間和通道利用、基於注意力的信息處理等新的架構概念。

自 1989 年至今,CNN 架構已經有了很多不同的改進。CNN 中的所有創新都是通過深度和空間相結合實現的。根據架構修改的類型,CNN 可以大致分爲 7 類:基於空間利用、深度、多路徑、寬度、通道提升、特徵圖利用和注意力的 CNN。深度 CNN 架構的分類如圖所示。

在這裏插入圖片描述

基於空間利用的 CNN

CNN 有大量參數,如處理單元數量(神經元)、層數、濾波器大小、步幅、學習率和激活函數等。由於 CNN 考慮輸入像素的鄰域(局部性),可以使用不同大小的濾波器來探索不同級別的相關性。因此,在 2000 年初,研究人員利用空間變換來提升性能,此外,還評估了不同大小的濾波器對網絡學習率的影響。不同大小的濾波器封裝不同級別的粒度;通常,較小的濾波器提取細粒度信息,而較大的濾波器提取粗粒度信息。這樣,通過調整濾波器大小,CNN 可以在粗粒度和細粒度的細節上都表現很好。

基於深度的 CNN

深度 CNN 架構基於這樣一種假設:隨着深度的增加,網絡可以通過大量非線性映射和改進的特徵表示更好地逼近目標函數。網絡深度在監督學習的成功中起了重要作用。理論研究已表明,深度網絡能夠以指數方式比淺層網絡更有效地表示特定的 20 個函數類型。

2001 年,Csáji 表示了通用近似定理,指出單個隱藏層足夠逼近任何函數,但這需要指數級的神經元,因而通常導致計算上行不通。在這方面,Bengio 和 elalleau 認爲更深的網絡有潛力在更少的成本下保持網絡的表現能力。2013 年,Bengio 等人通過 實證表明,對於複雜的任務,深度網絡在計算和統計上都更有效。在 2014-ILSVR 競賽中表現最佳的 Inception 和 VGG 則進一步說明,深度是調節網絡學習能力的重要維度。

一旦特徵被提取,只要其相對於其他位置的近似位置被保留,其提取位置就變得沒那麼重要了。池化或下采樣(如卷積)是一種有趣的局部操作。它總結了感受野附近的類似信息,並輸出了該局部區域內的主要反應。作爲卷積運算的輸出結果,特徵圖案可能會出現在圖像中的不同位置。

基於多路徑的 CNN

深度網絡的訓練頗具挑戰性,這也是近來很多深度網絡研究的主題。深度 CNN 爲複雜任務提供了高效的計算和統計。但是,更深的網絡可能會遭遇性能下降或梯度消失/爆炸的問題,而這通常是由增加深度而非過擬合造成的。梯度消失問題不僅會導致更高的測試誤差,還會導致更高的訓練誤差。

爲了訓練更深的網絡,多路徑或跨層連接的概念被提出。多路徑或捷徑連接可以通過跳過一些中間層,系統地將一層連接到另一層,以使特定的信息流跨過層。跨層連接將網絡劃分爲幾塊。這些路徑也嘗試通過使較低層訪問梯度來解決梯度消失問題。爲此,使用了不同類型的捷徑連接,如零填充、基於投影、dropout 和 1x1 連接等。

激活函數是一種決策函數,有助於學習複雜的模式。選擇適當的激活函數可以加速學習過程。

基於寬度的多連接 CNN

2012 至 2015 年,網絡架構的重點是深度的力量,以及多通道監管連接在網絡正則化中的重要性。然而,網絡的寬度和深度一樣重要。通過在一層之內並行使用多處理單元,多層感知機獲得了在感知機上映射覆雜函數的優勢。這表明寬度和深度一樣是定義學習原則的一個重要參數。

Lu 等人和 Hanin & Sellke 最近表明,帶有線性整流激活函數的神經網絡要足夠寬才能隨着深度增加保持通用的近似特性。並且,如果網絡的最大寬度不大於輸入維度,緊緻集上的連續函數類無法被任意深度的網絡很好地近似。因此,多層堆疊(增加層)可能不會增加神經網絡的表徵能力。與深度架構相關的一個重要問題是,有些層或處理單元可能無法學習有用的特徵。爲了解決這一問題,研究的重點從深度和較窄的架構轉移到了較淺和較寬的架構上。

基於特徵圖(通道特徵圖)開發的 CNN

CNN 因其分層學習和自動特徵提取能力而聞名於 MV 任務中。特徵選擇在決定分類、分割和檢測模塊的性能上起着重要作用。傳統特徵提取技術中分類模塊的性能要受限於特徵的單一性。相較於傳統技術,CNN 使用多階段特徵提取,根據分配的輸入來提取不同類型的特徵(CNN 中稱之爲特徵圖)。但是,一些特徵圖有很少或者幾乎沒有目標鑑別作用。巨大的特徵集有噪聲效應,會導致網絡過擬合。這表明,除了網絡工程外,特定類別特徵圖的選取對改進網絡的泛化性能至關重要。在這一部分,特徵圖和通道會交替使用,因爲很多研究者已經用通道這個詞代替了特徵圖。

基於通道(輸入通道)利用的 CNN

圖像表徵在決定圖像處理算法的性能方面起着重要作用。圖像的良好表徵可以定義來自緊湊代碼的圖像的突出特徵。在不同的研究中,不同類型的傳統濾波器被用來提取單一類型圖像的不同級別信息。這些不同的表徵被用作模型的輸入,以提高性能。CNN 是一個很好的特徵學習器,它能根據問題自動提取鑑別特徵。但是,CNN 的學習依賴於輸入表徵。如果輸入中缺乏多樣性和類別定義信息,CNN 作爲鑑別器的性能就會受到影響。爲此,輔助學習器的概念被引入到 CNN 中來提升網絡的輸入表徵。

基於注意力的 CNN

不同的抽象級別在定義神經網絡的鑑別能力方面有着重要的作用。除此之外,選擇與上下文相關的特徵對於圖像定位和識別也很重要。在人類的視覺系統中,這種現象叫做注意力。人類在一次又一次的匆匆一瞥中觀察場景並注意與上下文相關的部分。在這個過程中,人類不僅注意選擇的區域,而且推理出關於那個位置的物體的不同解釋。因此,它有助於人類以更好的方式來抓取視覺結構。類似的解釋能力被添加到像 RNN 和 LSTM 這樣的神經網絡中。上述網絡利用注意力模塊來生成序列數據,並且根據新樣本在先前迭代中的出現來對其加權。不同的研究者把注意力概念加入到 CNN 中來改進表徵和克服數據的計算限制問題。注意力概念有助於讓 CNN 變得更加智能,使其在雜亂的背景和複雜的場景中也能識別物體。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章