从alexnet到resnet,初探深度学习算法玩摄影
編輯:葉琰
簡介
今天說的是初探,那就是說,目的是為了讓大家先有一個比較直觀的感受,主要集中在有監督算法上。
總體來說,就是指在底層特征的提取上,利用了從Alexnet開始,到最新的模型的方法,來替換掉早期的大量手動設計的特征。
主要從兩大內容上讓大家有一個直觀的感受
1.從簡單網絡到復雜網絡的升級,將分別舉一個alexnet,googlenet,resnet的代表性paper。
2.說說網絡結構的設計思路以及發展,以及主要使用的loss function。
?
下面的內容,如果有聽不太懂的地方,就回到之前的一系列文章,去對著讀。
1.1?Alexnet (2015年)
這篇文章研究的是一個二分類的問題。
是比較早期的應用,采用了一個雙通道的網絡,雖然不是直接的alexnet的網絡,但是基本上也沒有什么差異了,網絡結構如下。
從輸入上,也是典型的兩個子網絡的操作,分別輸入global view和local view。local view是多個random crop,可以學習到多個局部響應。
從上面的網絡結構和輸入你就可以想到,這基本上也就是拿來做做分類了。實際上也是如此,上文就是拿來做二分類,以及圖像風格的分類,特征直接抽取全連接層的特征。
1.2 GoogleNet【2】 (2017年)
這也是研究一個二分類的問題。
這篇文章,相對于上面的alexnet文章,更加直接,直接采用了googlenet v1的1/3部分,其中共3個inception module,前兩個用于提取local feature,最后一個用于提取global feature。
最后,直接concatenate local feature與global feature層,輸入softmax做分類。
也是直接粗暴的應用,不過通過觀察feature map的響應特點,他們總結高質量圖和低質量圖的規律,并認為前者會有更多的激活。
1.3 ResNet (2017年)
前面的兩個,都是研究分類問題。但是到后來,美學質量的問題,已經轉換為回歸問題之后,文【3】就利用上了最新的resnet,一股腦研究了分數的分布特性。
網絡結構本身,沒什么變化。就是幾個卷積+全連接層,但是因為為了適應不同的輸入尺度,消除由于resize,crop等造成的精度損失,采用了自適應的spp layer(adaptive spatial pyramid pooling ),同時添加了語義分類信息作為弱監督,也提出了huber loss,與通用的回歸問題loss,euclidnean loss做了比較。
取得了當下最好的結果,AVA上分類超過了80%,這也是當下state-of-out的水平了。
2.1 DMA-Net【4】(2015年)
前面說的有些網絡【2-3】,都是single column,也就是只有一個通道的輸入。
實際上,從網絡結構上來看,可以分為兩大類。即single column與multi column,下面就說這個multi column。
DMA是其中一個代表。它的網絡結構也很簡單,4個卷積層和3個全連接層,每次送進去多個隨機crop的圖。
隨后,通過各種pool的組合(min,max,median,averaging),將各個patch的cnn特征進行組合,輸出到softmax,隨機進行分類。
怎么組合這些patch?由于不是直接采用全組合,所以文章說貢獻了兩個network layer,即statistics layer,與sorting layer。Statistics layer,學習到的是與順序無關的,而sorting layer則是與順序有關的。
雖然上面看起來是multi column,但實際上是共享權重的,所以嚴格說來,不是真正的multi column網絡。
2.2 MNA-Net (2016年)
【5】是典型的mutli-column了。
總共有5個columns。由于采用了sppnet,所以可以接受任意大小的圖片輸入,通過改變kernel尺寸的大小,可以學習到多尺度的信息。
3.1 multi-task loss【6】(2016年)
這部分,主要是說說多任務的loss,在其中的應用。
由于美學的評價標準,跟圖像的主體是什么,以及圖像的攝影風格,是有很大的關系的,所以style loss,content loss的應用,在后來是很廣泛的。
【6】是直接使用alexnet,將輸出的1000的fc8,變成了2分類的美學layer,和29類的semantic layer,也就是直接融合了兩類loss,但是有個很大的隱患,loss的平衡也就是相對權重,是一個非常需要經驗的問題。
rapid【1】中就加入了style loss做正則,相對于【6】來說,訓練會更加容易。【7】更是猛,直接3分類。將任務拆解成3個,object,scene,texture。
Scene的輸入:wrapped global image,
Object:wrapped global image與檢測到的salient region。
Texture:16個隨機cropped patchs,當然了,訓練的細節,我們可以在課程中詳細講述。
?
?
重點說說AADB【8】的文章,他們的網絡訓練的時候是成對訓練的。核心思想是要整合語義級別的內容,與visual content屬性。學習到的是一個相對的分數。
學習分為3個階段:
利用euclidean loss,學習美學分數。
加入attribute,然后進行分類。
加入class content branch,繼續學習。
多階段的學習,是能夠收斂的保障。
?
就這么多,看完大家應該已經有個大致的印象了。
總結
以上是生活随笔為你收集整理的从alexnet到resnet,初探深度学习算法玩摄影的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 走向AI摄影终极之路 AVA数据集后时
- 下一篇: MNA-CNN: 如何在美学质量评估中储