Adversarial Discriminative Domain Adaptation阅读笔记(详细)
我的第一篇在線論文閱讀筆記-Adversarial Discriminative Domain Adaptation
- 快速導覽
- 為什么采用這種形式
- 對這篇文章的態度
- 數據集和完成的任務
- 名詞解釋
- 重點語句分析(部分單詞給出中文注釋)
- 符號標記和公式解讀
- 公式計算含義
快速導覽
為什么采用這種形式
某日下午(2021.10.16)想著,看一篇論文,我在原文里面寫注釋和筆記,然后每次看完以后我都得把標注過的論文傳到QQ或者微信里,這樣方便下一臺電腦接著看。這樣剛開始好像沒啥問題,可是時間長了,最新注釋版本的論文也不知道放到哪里去了,也不知道哪個版本是最新的,那么為什么不放在網絡的博客里面,這樣既可以分享一下,還可以方便存儲呢!
對這篇文章的態度
我會從我自己的角度,一個對遷移學習零基礎入門的角度,闡釋清楚這篇文章的整體結構和一些細節,包括專業術語、對比等等。
數據集和完成的任務
根據文章Introduction部分(第二頁左側倒數第七行),驗證模型的數據集是 MNIST, USPS, and SVHN digits datasets。后面還說了為了檢驗ADDA跨形態檢測能力,還用了NYUD dataset(RGB
and HHA encoded depth images as source and target domains respectively各自)
完成的任務有:在上述數據集上實現可視化的自適應結果,測試模型無監督下通過把目標分類器從RGB彩色圖像轉化為深度在減小更復雜的跨形態數據漂移帶來的影響的方面的潛力
名詞解釋
閱讀文獻時難免遇到自己不懂的專業術語。我是初學者入門,不認識的還是太多了些。也希望這樣能幫助和我一樣的人能快速入門,也希望有精力的各位大佬們能接力下去。
標題
我給這篇文章起的中文標題是“對抗性區分域自適應”,Domain Adaptation是遷移學習算法。
Abstract部分(第一頁):
| Domain Shift領域漂移 | 數據集不同,數據分布也不同,如豬尾巴(很短)和馬尾巴(很長),原因是因為樣本數據分布和待預測樣本的不一樣 | 第四行 |
| Database Bias數據集偏差 | 現有數據集總有某種/些因素被倚重,和domainshift一樣導致判斷失誤 | 第四行 |
| tied weights | 權重共享,直接拿訓練好的模型投入自己的使用,如拿白人的人臉識別模型去識別黑人的 | 第十二行 |
| GAN-based Loss | GAN的loss公式,核心是最大化判別器、最小化生成器的loss | 第十三行 |
| untied weight sharing | 無約束權重共享,遷移時權重可以改變 | 第十九行 |
| domain-adversarial methods | 域對抗方法,這應該不是某個特定的術語,是統稱的方法,思想類似GAN | 倒數五行 |
Introduction部分(第一、二頁)
對于換頁換側換段的地方,會寫出來,后面和它在同一頁同一側同一段的就不詳細說明了。
| maximum mean discrepancy | 最大平均差異,具體原理見MMD介紹,作為最后的Loss函數去優化 | 第二頁左側第四行 |
| correlation distances | 相關距離=1-相關系數 | 第五行 |
| depth observation | 觀察圖像深度,確定彩色圖像顏色數 | 第五行 |
Related work部分(第二頁右側)
| domain invariance | 域的不變性,是拓撲學中的概念,證明兩個拓撲空間同胚 | 第三段倒數第四行 |
| latent space | 隱空間,降維數據后學習其根本特征 | 第二頁最后一個詞 |
3.1 Source and target mappings
| LeNet model | 辨別手寫字符的神經網絡,有卷積和pooling運算從input中提取出feature map | 第二段第八行 |
| mapping consistency | 這里寫出來是為了防止和consistent mapping搞混,原文表達的意思就是源和目標要映射到同一個空間 | 第六段第三行 |
| partial alignment | 部分對準,個人理解,舉個例子說明:源圖是黑白點位數字,目標圖是彩色連續高清版,利用前者訓練出的數字識別模型去做后者的識別,“alignment"原意"對齊”,這里指的應該是做mapping后的結果,也就是找出兩類圖像的"數字骨架" | 第六段第三行 |
3.2 Adversarial losses
| fixed-point properties | 暫不知 | 第五頁公式7下面 |
| cross-entropy loss | 交叉熵損失函數,常用于分類問題,具體可參考:損失函數|交叉熵損失函數 | 第五頁公式8上面 |
4. Adversarial discriminative domain adaptation部分(第五頁左側下方)
| degenerate solution | 退化解,意思大致是可行的非唯一解 | 第五頁右側第二段第六行 |
| the inverted label GAN loss | 暫不知 | 第五頁公式9上方右側 |
5. Experiments(第六頁左側)
| ReLU activation function | 線性整流,神經網絡的激活函數 | 第六頁右側第一段最后 |
| Source Only | 沒有做適應之前的模型 | Tabel 2第一個 |
重點語句分析(部分單詞給出中文注釋)
我自己的英文水平不算很高,有些單詞還得加注中文,也許這也會給您省去查單詞的時間。重點語句基本包含了文章對于模型的介紹,對于速度此文相信是莫有裨益。
Abstract部分(第一頁)
1.對先前模型的批判(第9行):
Prior generative approaches show compelling引人入勝的 visualizations, but are not optimal on discriminative tasks and can be limited to smaller shifts. Prior discriminative approaches could handle larger domain shifts, but imposed tied weights 參數共享 on the model and did not exploit a GAN-based loss.
從這段話可以看出,文章中說的先前的模型有一下缺點:
(1)生成方法:可視化做得很好,但沒有很好地優化判別任務,很容易受到小規模(領域)漂移的限制
(2)判別方法:能處理大規模領域漂移任務,但在模型里只是使用了權重共享
2.提出的模型的總體思路(第13行靠后):
We first outline a novel全新的 generalized framework for adversarial adaptation對抗性自適應, which subsumes歸納 recent state-of-the-art先進的 approaches as special cases, and we use this generalized概括性的 view to better relate與…聯系起來 the prior approaches.
這段話寫進摘要里應該不奇怪,雖然看上是在自夸,不過在摘要里也算正常了。
后面基本上就是開始說這個模型的特點和夸了——特點是結合了判別模型(discriminative modeling)、無約束權重共享(untied weight sharing)和GAN Loss。優點是比競爭性的域對抗方法更簡單,在跨域字分析(各種奇怪的1、2、3、4)和跨形態物體分類比最前沿的無監督適應算法更有前景。
Introduction部分(第一、二頁)
1.對領域漂移問題的傳統解決方法和窘境:
The typical solution is to further fine-tune微調 these networks on task-specific datasets— however, it is often prohibitively difficult太過困難 and expensive to obtain enough labeled data to properly fine-tune the large number of parameters employed by deep multilayer networks.
參數既然不能直接拿來用,那當然是“微調”啦。可是這說著容易,想有足量的帶標記數據去做微調(那差不多是重新學一遍了)還是太過于困難(遷移學習目標之一是利用訓練好的模型去識別未標記的數據)。
2.介紹Adversarial adaptation的大概原理,和GAN類似:
Adversarial adaptation methods have become an increasingly popular incarnation化身 of this type of approach which seeks to minimize an approximate domain discrepancy差異 distance through an adversarial objective with respect to a domain discriminator關于域判別器的對抗目標(意思是最大化判別器的差異,這便是對抗性的含義).
3.介紹模型的總體流程:
ADDA first learns a discriminative representation using the labels in the source domain and then a separate不同的 encoding that maps the target data to the same space using an asymmetric mapping learned through a domain-adversarial loss.
用在源域的標簽學習一個判別模型,再用一個不同的編碼方式,它能夠利用非對稱映射通過域對抗損失優化來把目標數據映射到同樣的空間。(個人理解是想辦法把豬尾巴弄成馬尾巴)
這段話可以說是文章的主旨了,和第三頁的流程圖結合來看效果更佳:
下面是原文對上圖的說明:現有的對抗性適應方法是我們實現的框架的特例,根據特點不同,對上面深色方框中問題給出的選擇也不同。
那么對于ADDA,這個模型的選擇又是什么呢?從上面那段話應該是可以看出答案的!當然了,原文第四頁的表格更是直接把答案貼出來了。
從上表中顯而易見,ADDA在source和target的映射間選取的基模型是判別式的,采用無約束權值共享,對抗目標是GAN的loss
第四部分其中原句:
Specifically, we use a discriminative base model, unshared weights, and the standard GAN loss
Related work部分(第二、三頁)
對幾種GAN變種模型的比較后:
In this paper, we observe that modeling the image distributions is not strictly necessary to achieve domain adaptation, as long as the latent feature space is domain invariant
ADDA模型認為,要做到域適應,并不一定要對圖像分布建模,因為隱空間是有域不變形的。
后面開始講模型了,重點語句分析后面基本上沒什么內容,但也講了很多其他遷移學習模型的常見做法,還是值得一讀的。
3.2 Adversarial losses(第四頁右側、第五頁左側)
1.表明模型里,source和target的映射是獨立的,要學的只有MMMt
Note that, in this setting, we use independent mappings for source and target and learn only Mt adversarially.
4. Adversarial discriminative domain adaptation部分(第五頁左側下方)
1.根據原文介紹,這段在流程圖下面解釋的話說明了模型整體的訓練流程(sequential training procedure)
首先:使用含標簽的源圖像訓練編碼源的卷積神經網絡
然后:學習一個能使得判別器無法準確辨別域標簽的編碼目標的卷積神經網絡(打個比方:現在有個判斷動物是否有尾巴的模型,source是馬,target是豬,這個網絡就是希望把它們“尾巴”的共同特征找到,而不是把短尾當沒有)
測試中:目標圖像經目標編碼器映射到共享特征空間并被源分類器分類。虛線表明這是固定的網絡參數(意思是直接套用的)。
An overview of our proposed Adversarial Discriminative Domain Adaptation (ADDA) approach. We first pre-train a source encoder CNN using labeled source image examples. Next, we perform adversarial adaptation by learning a target encoder CNN such that 使得 a discriminator that sees encoded source and target examples cannot reliably 準確地 predict their domain label. During testing, target images are mapped with the target encoder to the shared feature space and classified by the source classifier. Dashed lines 虛線 indicate fixed network parameters.
其實類似的話在上文也提到過很多次,不過是拆分來說的,細節還在第四部分繼續說。
2.關于上述流程中第二部的幾個細節問題回答:
(1)為什么要無約束權值共享?這是一個靈活的學習模式,能學習到更多領域特征。
This is a more flexible learning paradigm 學習模式 as it allows more domain specific feature extraction to be learned
(2)為什么要保留一部分權值?有可能產生退化解。
The target domain has no label access, and thus without weight sharing a target model may quickly learn a degenerate solution 退化解
(3)怎么解決?把對source預訓練出的模型作為target表達空間初始版本再通過訓練去改進。
We use the pre-trained source model as an intitialization for the target representation space and fix the source model during adversarial training.
3.優化步驟:
We choose to optimize this objective in stages 分階段. We begin by optimizing Lcls\mathcal{L}_{\mathrm{cls}}Lcls? over MsM_sMs? and CCC by training, using the labeled source data, XsX_sXs? and YsY_sYs?. Because we have opted to leave MsM_sMs? fixed while learning MtM_tMt?, we can thus optimize LadvD\mathcal{L}_{\mathrm{adv_D}}LadvD?? and LadvM\mathcal{L}_{\mathrm{adv_M}}LadvM?? without revisiting the first objective term. A summary of this entire training process is provided in Figure 3.
5. Experiments(第六頁左側)
1.如何進行的實驗:
We use the simple modified LeNet architecture provided in the Caffe source code. When training with ADDA, our adversarial discriminator consists of 3 fully connected layers: two layers with 500 hidden units followed by the final discriminator output. Each of the 500-unit layers uses a ReLU activation function.
符號標記和公式解讀
首次出現位置的格式:(段落,行數)負數表示倒數第幾行
3.Generalized adversarial adaptation(第三頁)
| Xs | source images源圖像 | 1,3 |
| Ys | 源圖像的標簽 | 1,3 |
| ps(x,y) | source domain distribution源域分布 | 1,4 |
| Xt | target images目標圖像 | 1,5 |
| pt(x,y) | target domain distribution目標域分布 | 1,5 |
| Mt | target representation目標模型 | 1,7 |
| Ct | 目標圖像K分類器 | 1,7 |
| Ms | source representation mapping | 1,-3 |
| Cs | source classifier | 1,-2 |
| LLLadvD_DD? | 判別器的loss | 4,-2 |
| LLLadvM_MM? | adversarial mapping loss | 6,-1 |
公式位置表示(x,y):x=頁數,y=0時表示在左側,y=1時表示在右側
先搞明白含義,把文章算法步驟搞懂后再來具體看是怎么算的
| C=Cs=Ct | 源圖像和目標圖像的映射分布差距很小,可以直接把源圖像的分類器用到目標圖像上 | 3,2 |
| 優化源分類器的standrad supervised loss | 3,2 | |
| Domain Discriminator的loss,需要最大化保證它看不出來數據是來自source還是target | 3,2 | |
| 原文說明此為“Generic Formulation",意思就是總體實現的目標:最大化判別器的loss,最小化源和目標在映射之后的差異,最下面的意思是實現一個特定的映射結構 | 3,2 |
3.1 Source and target mappings
| Mls | source images的l層的參數 | 4,2 |
| {l1,l2,…,ln} | l=layer,第幾層的意思 | 4,3 |
| 整體的映射結構是每一層的映射結構組合在一起(原文用詞constraints) | 4,1 | |
| 每一層的映射結構可以表示為該層的源或目標圖像的計算參數 | 4,2 |
3.2 Adversarial losses
| adversarial mapping loss,判斷映射的優劣 | 5,1 | |
| 交叉熵損失的計算公式,D(Md(xd))表示分類器D把第d個樣本xd映射為某個類的概率,Md含義和取12\frac{1}{2}21?的原因是label只有1/0,默認正確率取個一半 | 5,1 | |
| ADDA模型的無約束優化公式(unconstrained optimization),具體計算含義見下面公式解讀部分 | 5,2 |
公式計算含義
總結
以上是生活随笔為你收集整理的Adversarial Discriminative Domain Adaptation阅读笔记(详细)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大学生如何应聘高薪IT职位
- 下一篇: IT职位名称