1. 程式人生 > >對於DAN方法的解讀-Learning Transferable Features with Deep Adaptation Networks

對於DAN方法的解讀-Learning Transferable Features with Deep Adaptation Networks

上週彙報了該篇經典文章,現在回顧並且記錄一下自己對DAN方法的理解

深度適配網路-DAN《利用深度適應網路學習可遷移特徵》

下面分為五個部分來講解:

一.研究背景 二.本論文所解決的問題 三.DAN方法 四.實驗部分 五.結合自己的論文

一.研究背景

 精簡的說,研究表明:深度神經網路可以學習可遷移特徵,這些特徵用於域適應時在新的任務上表現出很好的泛化能力。然而由於深度特徵隨著網路層數的增加由一般到特殊轉變,特徵的可遷移能力在網路高層急劇下降,極大地增加了域之間的差異性 神經網路通常在前面幾層都學習到的是通用的特徵(general feature),隨著網路的加深,後面的網路更偏重於學習特定的特徵(
specific feature)。 其中有兩篇經典論文可以作為背景來介紹。 第一篇是《how transferable are features in deep neural networks?》
該論文可以說是遷移學習非常有里程碑意義的一篇了,其中畫出的這個圖很能說明問題。我們基礎的神經網路可以單獨看作B,在此基礎上,把網路A進行遷移,其中n代表了遷移,比如BnB+就是把B的前n層遷移到B,+表示微調,意味著更加符合後面網路的形狀。我們可以重點來看AnB和AnB+兩者,當單純的把A網路遷移到B上時,可觀察到,隨著網路層數的增加,前三層變化不大,從第四層開始精確度下降,這也說明了對於AlexNet模型來說,前三層學習到的是通用特徵,後面學習到的是specific feature。
第二篇是《Deepdomainconfusion: maximizing for domain invariance  該論文提出了一種DDC方法,針對於預訓練的AlexNet8層)網路,在第7層(也就是feature層,softmax的上一層)加入了MMD距離來減小sourcetarget之間的差異。這個方法簡稱為DDC

二.本論文所解決的問題

DAN解決的是遷移學習和機器學習中經典的domain adaptation問題,只不過是以深度網路為載體來進行適配遷移。主要應用在分類和迴歸問題上。 域適應方法一般要求源域的資料是有標籤的,目標域上的資料是無標籤的,即實現目標域能夠和源域相似的分類。 域適應強調的是解決有來自兩個相關域但分佈不同的資料問題。比如汽車影象問題。
域差異是不同域之間適應預測模型的主要障礙。

.本文提出的方法:DAN

DAN是在DDC的基礎上發展起來的,它很好地解決了DDC的兩個問題: 一、DDC只適配了一層網路,可能還是不夠,因為之前的工作中已經明確指出不同層都是可以遷移的。所以DAN就多適配幾 二、DDC是用了單一核的MMD,單一固定的核可能不是最優的核。DAN用了多核的MMDMK-MMD),效果比DDC更好。 DAN主要思想:通過明確地減少域差異來增強深度學習神經網路的具體任務層的特徵遷移性。 域差異可以通過使用平均嵌入匹配的最佳多核選擇方法來被進一步減小。) 為了實現這一目標,所有具體任務層的隱藏表示被嵌入到ReproducingkernelHilbertspace,在希爾伯特空間中不同的域分佈的平均嵌入可以被明確分配。由於平均嵌入對核心的選擇非常敏感,所以設計最優多核心選擇過程,這可以進一步減少域差異。 創新點一:多層適配 DAN也基於AlexNet網路,適配最後三層(6~8層)。為什麼是這三層?在前面的圖中可以看出,網路的遷移能力在這三層開始就會特別地task-specific,所以要著重適配這三層。至於別的網路(比如GoogLeNetVGG)等是不是這三層那就不知道了,那得一層一層地計算相似度。DAN只關注使用AlexNet   結合自己的實驗時,需要考慮適配哪幾層 創新點二:MK-MMD(Multi-kernel MMD) 傳統學習方法有一個假設:training sampletest sample都是從同一個分佈抽樣得到,即訓練集和測試集是獨立同分布的,這個假設使得離線的學習方法得以執行。在遷移學習環境下training sampletest sample分別取樣自分佈pq,兩個樣本不同但相關,現在我們要通過測試樣本改善模型效能。求解這個問題的思路比較多,這裡只列一個目前流行的思路: 利用深度神經網路的特徵變換能力,來做特徵空間的transformation,直到變換後的特徵分佈相匹配,這個過程可以是source domain一直變換直到匹配target domain,也可以是source domaintarget domain一起變換直到匹配(例如下圖 (還有其他方法,KLd)

【對該圖的理解:源域和目標域的資料都放在一起,通過AlexNet來訓練,前三層frozen,第四層第五層fine-tuning,當到後面幾層時,source data和target data分開,然後通過MK-MMD方法來計算兩個域的距離,並且通過損失函式來進行優化,最後當損失函式優化到設定的閾值時,就可進行最終的分類】

概率分佈pq之間的MK-MMDdkpq)被定義為pq的平均嵌入之間的RKHS距離。對於兩個概率分佈,它們的MK-MMD距離平方就是


這個多個核一起定義的kernel就是:


MMD的書面表達是source samplextarget sampley經過函式fχ→R隨機投影后,期望值的差值上確界 對於核,原來我們的k就是一個固定的核函式,現在我們把它用m個不同kernel進行加權,權重就是β_μ

總的方法(DAN)

的優化目標由兩部分組成:損失函式和分佈距離。損失函式用來度量預測值和真實值的差異。分佈距離就是我們上面提到的MK-MMD距離。於是,DAN的優化目標就

公式裡面的字母具體含義都在論文裡,可以翻閱檢視一下。

其中,λ可以控制MMD的限制程度。如下圖,該損失函式不僅能使模型對訓練集進行很好地分類能讓訓練集和測試集的分佈儘可能地相近


圖 演算法對兩個資料集的處理結果

損失函式的兩部分就是幹了這樣的一件事情,一個優化帶有標籤的source域的分類結果,另一個通過MK-MMD來讓Target域儘可能的和source域適配,減少域差異。

四.實驗部分:

 用的都是標準的資料集,可以直接看論文結果即可。 Office-31這個資料集是一個用於域適應的標準資料集31個類別的4652張圖片組成。這些圖片收集於三個不同的域 Amazon(A) Webcam(W) DSLR(D)
對於這些實驗我們可以進行以下的總結: 1)基於深度學習的方法比傳統的淺層遷移方法效果提升地非常大 2)在以上方法裡,半監督式學習LapCNN相對於CNN並沒有提高,說明域差異問題不能通過半監督學習來解決。 3DAN7DAN8都優於DDC,說明多核的MMD比單核的MMD在減輕域差異問題上表現的更好。 4DAN_SK效果比DDC更好,說明深度神經網路對分佈適應能力更強,即有多個全連線層,他們具有不同抽象級別的隱藏特徵,每層都能提取出獨特的隱藏特徵,這可以增強深度學習的效率。

五.結合自己的論文:

就不細講啦,這也是我自己接下來要思考並且努力發論文的方向!