何秋妍 鄧明華,2,3
1 (北京大學數學科學學院 北京 100871)
2 (北京大學統計科學中心 北京 100871)
3 (北京大學定量生物學中心 北京 100871)
(heqy@pku.edu.cn)
近年來,機器學習方法在現實中獲得了越來越多的應用,這些方法的成功是基于模型在大量有標簽數據上的訓練. 現如今,數據獲取手段更加多樣、方式更加快捷,但這些數據通常不具有研究人員所需要的標簽信息,例如相機、攝像頭等設備可以提供大量圖片,但無法直接提供圖片中的內容信息,圖片的準確標簽往往需借助人工手動標記. 簡單的圖片數據集標注可以通過眾包來人工完成,對參與標記的人員沒有較高的專業知識要求. 但實際應用中很多數據集,如醫療圖片數據,則需要對該領域較為了解的專業人員提供標簽信息. 在大數據時代,通過人工進行標注耗時長、成本高,難以滿足需求. 值得注意的是,許多待注釋的無標簽數據集與部分現有已標記數據集在類別上存在一定交集,因此每次單獨給無標簽數據集尋求人工等方式的注釋則顯得低效,且對已有信息利用率低. 因此,在假設已有標簽數據集的標簽集合與待標注數據集的標簽集合交集非空時,若將已有標簽數據集上的標簽內容自動遷移到待標記數據集上,則可以更高效地滿足數據使用者的需求. 而這一目標,則與機器學習的目的不謀而合.本文將圍繞解決前述問題的通用域適應(universal domain adaptation, UniDA)方法展開問題描述、方法分析、實驗對比、應用研究和前景探討.
傳統的機器學習方法在訓練數據上學習模型,以使得模型在測試數據上表現最好,即在某一目標函數衡量下損失最少. 但傳統的機器學習方法假設訓練樣本和測試樣本來自于同一分布. 而在實際應用中,數據集往往在不同時間、由不同方式收集起來,同分布的假設很難滿足. 為解決訓練數據和測試數據分布存在差異的問題,域適應(domain adaptation,DA)問題被提出并獲得了廣泛的關注.
簡言之,給定特征分布存在差異、標簽集合交集非空的2 域數據,域適應方法要在富有標簽的源域(source domain)上學習模型,并克服域間差異,將源域上的標簽信息遷移到標簽稀缺的目標域(target domain)上,使得模型在目標域上的預測盡可能準確.域適應本質上是一種特殊的遷移學習,二者之間的區別在于,遷移學習研究的問題中除了存在源域和目標域的差異,也可能存在源任務和目標任務的差異,而域適應中不同域上的任務相同[1-2].
在域適應問題中,不同的域有著不同的邊際分布,導致了域間差異(domain gap,domain shift 或 domain bias)的存在;此外,不同域的標簽空間往往也不同,即存在類別差異(category gap 或 category shift). 傳統的域適應假設源域和目標域的標簽空間相同,而僅考慮不同域上特征與標簽聯合分布的差異,這種情形又被稱為閉集域適應(closed set domain adaptation,CDA). 然而,給定目標域,找到與目標域有著相同標簽空間的源域在現實中很難實現. 為放寬關于源域和目標域標簽空間相同的約束,部分域適應(partial domain adaptation, PDA)[3-4]和開集域適應(open set domain adaptation, ODA)[5-6]被相繼提出. 部分域適應假設源域的標簽集合包含目標域的標簽集合,模型在目標域上進行預測時,需要避免目標域樣本被劃分到源域私有類中. 這種情形下,源域被視為包含眾多類別的更為一般的域,而目標域僅包含其中一些類別. 與此相對的開集域適應最早被Busto 等人[5]提出,其考慮源域和目標域標簽集合交集非空,且各自具有私有類的情形;現如今更為廣泛應用的開集域適應定義則是參照Saito 等人[6]的定義,考慮目標域標簽集合包含源域標簽集合的情形. 相較于部分域適應中目標域標簽均屬于已知的源域標簽,開集域適應中目標域存在相對于源域而言未知的類別,這就要求模型既要給屬于源域類別的樣本進行準確注釋,還要找出屬于目標域私有類的樣本. 雖然部分域適應和開集域適應均對閉集域適應進行了拓展,考慮了源域或目標域各自存在私有類的情形,但在實際應用中,關于源域和目標域標簽集合相對關系的先驗信息往往是缺乏的,因此,通用域適應[7]僅假設源域和目標域標簽集交集非空,而不對2 域標簽集合做更多約束,如圖1 所示. 作為更為一般的情形,通用域適應方法首先需要尋找源域和目標域的共有類. 在測試時,模型需要準確預測目標域中屬于共有類的樣本,并在目標域私有類存在的情況下準確判別出目標域私有類樣本.

Fig.1 Classification of domain adaptation by the relationship of label sets of source domain and target domain圖1 按源域和目標域標簽集合相對關系對域適應問題進行分類
記特征空間為 X,標簽空間為 Y,特征x和標簽y的聯合概率密度和分布函數分別記為p(x,y)和P(x,y),我們參照Farahani 等人[8]的定義,定義域(domain)為D={X,Y,p(x,y)}. 本文所考慮的通用域適應以分類為任務,即要利用源域特征數據和標簽,學習一個從特征空間到標簽空間的映射函數h:X →Y,使得其在目標域上的期望損失最小,這種映射函數又被稱為假設函數(hypothesis function).
具體地,記源域和目標域為 Ds和 Dt,其標簽集合為Ls和Lt,2 域特征與標簽的聯合分布函數分別為Ps(x,y)和Pt(x,y),衡量預測標簽與真實標簽差距的損失函數為?:X×Y →R. 通用域適應假設Ls∩Lt≠?,而Ps(x,y)與Pt(x,y)不一定相同,通常我們稱源域標簽為已知類,目標域私有類為未知類. 可得模型在目標域上的期望損失為
同時,模型的訓練需借助于源域標簽信息的監督,即假設函數需要使得源域上的預測誤差盡可能小:
由式(1)和式(2)可見,想要模型在目標域上取得好的預測效果,首先需要對目標域樣本進行初步判斷,盡可能準確判斷樣本是否屬于2 域共有類. 然后,在源域和目標域的共有類上對齊2 域的分布,以利用源域標簽對屬于共有類的目標域樣本進行準確預測. 當目標域私有類存在,且訓練中無法獲得具體標簽時,損失函數通常只衡量模型是否將目標域私有類樣本正確標記為未知類,由式(1)可見,全部將樣本劃分為未知類或無法判別出未知類都會導致模型泛化效果很差.
就問題框架而言,傳統的通用域適應一般假設僅有一個帶標簽的源域和一個未知標簽集合的目標域[7],在實際應用中,這一假設仍有一定局限性. 考慮到現實情形中數據隱私受到保護,且數據獲取受渠道和成本限制,良好標注的數據集在進行訓練時往往無法獲得,但用其訓練得到的模型相對易得,故USFDA[9]和 UMAD[10]將通用域適應推廣到無源域數據(source-free)的情形,即在目標域數據上訓練時,僅可獲得源域上預訓練得到的模型,而無法獲取源域數據.UB2DA[11]則進一步放寬限制,考慮僅可獲得源域模型接口的情形,又稱黑箱(black-box)情形,在此情形下,訓練模型時無法獲取源域模型的參數作為參考,僅可獲得源域模型在目標域數據上的預測結果,即僅有該預測結果包含源域信息,而這一結果又會受未知的域間偏差影響,因而存在噪聲,進一步增加了問題的難度.
從源域入手放寬通用域適應原設置,除了數據和模型的可及性,源域個數也可由1 個推廣至多個[12].因為各個源域與目標域的共有類并不一致,同時利用多個源域可以盡可能給目標域上更多類標記,所以多源域相對于單源域假設,在現實中更有實際意義. 此外,即使是同一個類別,包含該類的各源域所能提供的有效信息量也有差異,多源域同時訓練即為整合多方信息,可以增加預測結果的可靠性. 但多源域通用域適應相對于單源域情形,除了需要解決多個源域與目標域之間的偏差問題,還需注意不同源域之間也會存在域偏差和類別偏差. 因此相對于單源域問題,多源域設置下模型在學習特征表示時,需消除各源域之間以及各源域與目標域間的域間偏差,提取各源域和目標域公共類中樣本的特征來標記目標域樣本,并對無法注釋的目標域樣本標記為未知類.
除了從源域個數著眼,也可以從源域標簽入手.通用域適應問題一般假設獲得的源域標簽即為真實標簽,但即使是人工標注的數據集,也會受諸多因素影響因而存在誤差,因而源域的標簽極有可能是有噪聲的. 因而Yu 等人[13]考慮了源域標簽有一部分錯誤的情形,在此情形下,方法需在訓練過程中找出帶噪聲的源域標簽,以避免使用錯誤標簽訓練給模型帶來負面影響,因此方法不僅要有判斷目標域樣本是否屬于未知類的能力,還要有判斷源域樣本的標簽是否正確的能力.
從目標域入手考慮通用域適應問題,當目標域私有類存在,且缺乏關于目標域數據的任何標簽時,通用域適應方法只能判斷哪些樣本為目標域私有,并標記它們為未知類樣本,而無法給出具體的類別標注,有的甚至無法區分目標域不同的私有類以做好目標域內的聚類. 若在現實應用過程中,有條件通過外部查詢一小部分目標域樣本標簽,如何挑選樣本用以外部標記,使得獲得標簽的這些目標域樣本再次參與到模型的訓練中后,讓模型獲得最佳的預測表現,也值得進一步研究,而這一思想即為主動學習(active learning). ADCL[14]便將主動學習框架應用到通用域適應問題中,挑選預測最不確定且特征最為多樣的一部分樣本,在獲取外部注釋后,用這些標記好的數據參與訓練. 若目標域私有類存在,為使模型預測能力提升,我們希望被挑選的目標域樣本均為目標域私有,且類別盡可能包含所有私有類,使得這些樣本從外部獲取標簽后參與訓練,可以讓其余私有類樣本獲得準確的類別,而非籠統的未知類標記.從數據本身入手,一般通用域適應問題中的分類任務都潛在假設各類之間相互獨立,但在應用中并非如此. 相反,類別之間的相對關系有時也具有實際意義,例如通過人臉圖片判定年齡,此時標簽即為年齡,而年齡有著天然的遞增順序,若模型將20 歲的人臉預測成40 歲或預測成30 歲,雖然均為預測錯誤的情形,但體現的模型錯誤程度卻不一樣,預測成40 歲顯然比預測成30 歲更不合理. 因此,Chidlovskii等人[15]便考慮通用域適應在有序回歸(ordinal regression, OR)中的應用,即分類任務中各類不相互獨立,而是存在著序關系. 針對此類數據,Chidlovskii等人[15]假設輸入的高維數據實際位于一個低維流形上,在此流形上類別之間保持著序關系,而圖片之間的差異是與域偏移無關的單調函數. 由于有序回歸中,在低維流形上進行類別標記時一般會利用閾值進行逐步劃分以保證序關系,如果直接使用熵(entropy)進行優化容易導致2 域共有類和私有類劃分錯誤,進而導致特征錯誤對齊. 使用現有通用域適應方法把類別當作相互獨立處理,也容易使預測標簽相對順序出錯.
通用域適應方法通常假設存在一個低維特征空間,使得來自不同域的同類數據在此低維流形上聚成一簇,而不同類的數據相互疏遠. 各方法則需學習從原始特征空間到此低維流形的映射,以及從低維特征空間到標簽空間的映射,使得這2 個映射復合后在目標域上的表現最佳. 從網絡構架上看,為學習到源域和目標域共同類的特征表示,常用的框架有對抗生成網絡、自編碼結構;從分類器設置看,有多分類器設置,以及分類器包含目標域未知類的網絡構架;從隱空間特征表示的學習過程看,常見的策略有尋找相似樣本使得樣本局部聚類良好,也有尋找互近鄰減少域間差異、促進標簽遷移,還有利用對比學習(contrastive learning)加強相似樣本對和不相似樣本的區分,以及利用熵等統計量劃分樣本來區別對待,利用數據增廣(data augmentation)提高特征學習能力,利用數據混合模擬數據等. 由于通用域適應需同時解決消除域間偏差、劃分目標域樣本并標記等問題,所以各模型通常綜合采用多種策略,如表1和表2 所示,我們將在下文進行詳細分析.

Table 1 Strategies and Unknown Classes Detection Ways Used in Adversarial UniDA Methods表1 對抗類通用域適應方法使用的策略及未知類判別方法

Table 2 Strategies and Unknown Classes Detection Ways Used in Non-Adversarial UniDA Methods表2 非對抗類通用域適應方法使用的策略和未知類判別方法
3.2.1 基于對抗生成
通用域適應中的對抗生成方法,把輸入數據從高維空間投影到低維特征空間的映射當作生成器,又稱特征提取器,與二元分類器即域判別器進行對抗,其目標是學習域不變特征,以使得域判別器無法區分共有類樣本來自源域還是目標域. 在此過程中,模型還會利用源域標簽監督特征提取器和分類器的訓練. 理想情況下,當訓練完成時,特征提取器學習到的域不變特征應為源域和目標域共有類樣本的公共特征,但由于通用域適應問題下缺少關于各域類別的先驗信息,故利用對抗生成思想學習隱層表示時,還需判斷各域樣本是否屬于2 域共有類. 由于在訓練中直接判斷并選取可能屬于共有類的2 域樣本參與對抗生成學習,在預測錯誤時容易因共有類樣本被誤判為私有類造成信息丟失,故早期對抗生成類方法估計各樣本屬于2 域共有類的可能性,并依此定義權重以用于對抗生成的判別損失中,使得各域屬于共有類樣本的權重高于同域中域私有類樣本權重的期望,而具體的權重定義則因模型而異,如表3和表4 所示.

Table 3 Adversarial Loss of Adversarial UniDA Methods表3 對抗類通用域適應方法的對抗損失

Table 4 Weights in Adversarial Loss and Unknown Classes Detection Ways of Adversarial UniDA Methods表4 對抗類通用域適應方法對抗損失中的權重及未知類判別方法 ①
此類方法通用的框架如圖2 所示,主要由特征提取器G、域判別器D和維數為源域類別數的分類器C組成. 訓練中,一般用源域標簽通過交叉熵損失進行網絡的監督訓練( LC),各方法除此之外還會配有自己的優化損失函數(Lother),對抗部分體現在判別損失( LD)上,特征提取器G想讓域判別器D的判別誤差盡可能大,而域判別器D則與之相反:

Fig.2 The general network structure, adversarial idea and inference method of adversarial methods圖2 對抗類方法的一般網絡架構、對抗思想與預測方法
其中式(3)中的Lcrs為交叉熵損失,式(4)中的ws(x)和wt(x)分別為源域和目標域樣本在域判別損失中的權重. 式(5)的優化可借助于Ganin 等人[31]提出的梯度翻轉層(gradient reversal layer, GRL). 通常劃分目標域未知類可以借助權重wt(x),例如式(6)中將權重與自定義閾值相比較,或利用自定義的其他統計量.
UAN[7]最早提出通用域適應問題并將對抗生成思想運用其中,除了用于對抗學習的域判別器,UAN[7]還使用了一個非對抗的域判別器來估計樣本屬于2 域共有類的概率,該概率與分類器預測結果的熵一起構成了樣本在判別損失中的權重,并以此權重與給定閾值比較,判別目標域樣本是否屬于私有類.Uni3DA[23]在劃分共有類和目標域私有類時采用了和UAN[7]一樣的網絡架構與權重定義,但Uni3DA[23]為使得樣本遠離類邊界,對高置信度的樣本,極大化其權重與給定閾值的差異,使得屬于共有類樣本的權重相對于給定閾值更大,反之則更小.CMU[16]則分析了熵、一致性(consistency)及置信度(confidence)3 種衡量預測結果不確定性的指標各自的利弊,并用該3 種指標重新定義了衡量樣本預測結果可靠程度的統計量,從而得到各樣本在域判別器損失中的權重,使得屬于共有類的樣本獲得較高的權重,而當權重低于給定閾值時,樣本類別被視為未知.I-UAN[17]則基于樣本屬于不同類別概率的差異,定義了PMV(pseudo-margin vector),并在此向量的基礎上估計源域各類是2 域共有類的可能性.I-UAN[17]還定義了TPMR(target pseudo-margin register)以在訓練中存儲和更新PMV,然后用TPMR 定義源域各類樣本和目標域各樣本在對抗損失中的權重,仍是當權重低于給定閾值時判定樣本為目標域私有.UMAN[12]隨后將I-UAN[17]推廣到多源域情形,使用一個包含所有源域類別的分類器來定義PMV 和TPMR,因源域各樣本的權重僅依賴于其所屬類的權重,故UMAN[12]不會因源域個數的增加而復雜化. 相較于I-UAN[17],UMAN[12]用pseudo-margin 和TPMR 重新定義了目標域樣本的權重,并用pseudo-margin 代替權重作為判定未知類的依據.
DCN[18]為解決部分方法重視2 域類別差異而忽視域間差異,以及源域私有類和公共類區分不佳的問題,除了利用對抗生成結構,還定義虛擬樣本及對比模塊(contrastive module)、使用CDD (contrastive domain discrepancy)[32],以進一步減少域間差異. 在DCN[18]中,域判別器的輸出、分類結果和熵被用于衡量目標域樣本的“遷移性”(transferability),遷移性越高則表示其越有可能屬于共有類,而高于指定閾值的偽標簽則進一步被用于監督訓練以及域判別器的優化中.
Zhang 等人[19]在定義對抗訓練的權重時,除了考慮域判別器的預測誤差,還從拓撲角度考慮樣本與其類中心的距離,不依據權重作為判別未知類的直接指標,而是用其劃分目標域樣本以訓練一個二元分類器識別例外點(outlier),即識別未知類樣本. 為減少訓練帶來的信息損失,Zhang 等人[19]還構建了重構網絡,與特征提取器形成自編碼結構(autoencoder),保證特征提取器學習到足夠的特征信息. ADCL[14]則使用域判別器結果和預測概率向量最大分量來定義樣本權重,權重除了應用于對抗損失中,還作為訓練中劃分未知類樣本的依據. 此外,ADCL[14]還利用目標域類中心和隱空間梯度范數(gradient embeddings)挑選不確定性和多樣性高的目標域樣本尋求外部標記,并利用外部獲得的標簽訓練目標域類中心,給目標域可能屬于未知類的樣本具體的注釋.
針對有序數據時,Chidlovskii 等人[15]除了利用對抗生成網絡結構將2 域數據投影到一個低維特征空間并學習域不變(domain-invariant)特征,還提出了順序模型,估計樣本屬于共有類和私有類的概率,并以此作為域判別器損失中的權重. 不同于傳統通用域適應中的分類問題,為解決序關系存在時的標簽預測,Chidlovskii 等人[15]借鑒Niu 等人[33]的做法,將順序回歸轉換為多個二元分類問題,并用Coral (consistent rank logits)方法[34]確保預測一致性.
如在使用全樣本進行對抗生成時不定義權重,則需在學習特征時進一步地約束,使模型盡可能區分目標域里屬于共有類和私有類的樣本,以避免受到2 域類別差異的影響;或在對抗生成前直接對樣本進行篩選,讓可能屬于2 域共有類的樣本參與對抗生成訓練. Lifshitz 等人[20]在域判別器的對抗損失中不單獨定義權重,而是用域判別器的輸出與分類器的最大預測概率得到自定義指標(score),并設置上下2 個動態閾值篩選樣本. 隨著訓練的進行,Lifshitz等人[20]篩選高置信度樣本并用其偽標簽進行自監督訓練以利用目標域信息,同時找出可能屬于未知類的樣本來降低其預測置信度. 與Lifshitz 等人[20]直接篩選樣本不同,HFDN[21]認為源域和目標域數據在同一隱空間的特征差異是由域間差異和類別差異同時引起的,因而選擇對特征空間進行分層解耦. HFDN[21]首先將樣本在隱空間的特征表示分解成與域有關(domain-relevant)的特征和與類別有關(class-relevant)的特征,再將與域有關的特征進一步分解成域特有(domain-specific)特征和類別偏移(category-shift)特征,然后用對抗生成網絡對齊域特有的特征,以避免受到2 域類別差異的影響. 因此,HFDN[21]未在對抗生成中單獨定義權重,但在學習類別有關的特征時,通過域判別器作用于類別偏移特征來估計樣本屬于2域共有類的概率,并依此使得模型在特征學習時更關注共有類樣本,從而令學習到的類別有關特征主要為2 域共有類特征,而與域有關的特征則被進一步分解. 與HFDN[21]進行解耦避免對抗生成時錯誤對齊不同,GATE[22]通過尋找2 域間的互近鄰對(mutual nearest neighbors, MNN)和利用隨機游走拓展的互近鄰對(rwMNN),認為跨域的互近鄰對更有可能屬于2 域共有類,因而在近鄰對上進行對抗學習,對齊2域共有類特征分布. 在近鄰對的基礎上,GATE[22]還借助于對比學習使得從拓撲上看,樣本聚類更好. 不同于單獨定義指標識別未知類,GATE[22]使用manifold mixup[35]混合源域樣本來模擬未知數據訓練分類器,讓分類器直接估計樣本屬于未知類的概率.
3.2.2 基于自編碼結構
自編碼器通過特征提取器在將數據從高維空間投影到低維特征空間后,再使用重構網絡將其重新映射到原高維空間,希望在經過降維即編碼過程(encoder)和重構即解碼過程(decoder)后樣本的特征表示盡可能不變,如圖3 所示. 這一做法可以在無標簽監督的情況下,盡可能地使特征提取網絡學習到數據的關鍵特征. Zhang 等人[19]使用自編碼結構參與訓練,以完善特征的學習,避免神經網絡隨著訓練進行發生信息遺忘的問題. HFDN[21]則是在分解域有關特征時添加重構網絡,確保域有關特征分解成域特有特征和類別偏移特征后可以由二者重構出來,使得特征空間的解耦成立.

Fig.3 The network structure of autoencoder圖3 自編碼網絡結構
除了直接對數據使用自編碼結構,也可以利用變分自編碼(variational autoencoder,VAE)估計分布的參數,實現對數據的特征學習與重構.USFDA[9]為使模型在目標域上適應時可以識別未知類,通過對源域原始圖片數據(也稱正樣本)進行隨機抽取和拼接得到負樣本,使得模型具有預測未知類的能力. 模型在源域上進行預訓練時,假設源域各類數據在低維特征空間服從高斯分布,并從該先驗分布隨機抽樣,利用變分自編碼結構進行重構,使得最終學習到的特征提取器偏向于正樣本,避免測試時所有樣本被預測成未知類別.
3.2.3 基于隱空間特征學習
當不借助特定網絡結構減少域間差異時,通用域適應模型需利用多種策略使得目標域可以良好聚類,即特征空間中源域和目標域同類樣本相互混合,異類樣本彼此分離. 常見的方法有對比學習以極小化類內(intra-class)差異、極大化類間(inter-class)差異;基于自訓練(self-training)思想,通過在類中心或指定樣本范圍內尋找近鄰,確保相似樣本在特征空間中相近;尋找互近鄰對以尋找2 域共有類. 在判定目標域私有類時,依據源域已知類與目標域私有類在統計上的差異,不同模型通常定義不同統計量作為判別指標,例如預測結果的熵,或增加分類器輸出維度,使其直接估計樣本屬于未知類的概率.
在對使用這些策略的通用域適應方法進行梳理和分析之前,我們先簡要地介紹一下對比學習的主要思想,如圖4 所示. 對隱空間中任一樣本zi,記與其構成正樣本對的樣本集合為Pos(zi),與之構成負樣本對的樣本集合為Neg(zi). 正樣本對中的2 個樣本應屬于相同的類別或為同一樣本不同的增廣形式,負樣本對中的2 個樣本應屬異類或為不同樣本的增廣形式. 圖片的增廣一般指旋轉、裁剪等一系列不改變原始數據類別的變換,在對比學習中用以加強類別特征的學習.

Fig.4 The idea diagram of contrastive learning圖4 對比學習概念圖
對比學習的損失一般可以寫成:
其中 τ為溫度參數(temperature parameter),sim(zi,uj)一般使用cosine 相似度,即為 L2范數.wij為非負權重,可設為1.由于qij關于負樣本對的相似度遞減,而關于正樣本的相似度遞增,極小化對比學習損失可以極大化負樣本對的特征差異以及正樣本對的特征相似性,如圖4 所示. 隨著后文分析,我們可以看到各個模型如何使用對比學習思想,下面我們開始梳理各方法對策略的使用.
USFDA[9]在源域上預訓練模型時模擬了負樣本,即不屬于源域已知類的樣本,并定義了負樣本對應的標簽,構建了維度為源域類別數與負樣本類別數之和的分類器,并依此得到樣本屬于源域各類以及各負樣本類別的概率,基于這2 種概率的熵,USFDA[9]在訓練中對目標域樣本進行私有類和共有類的劃分.與對抗類方法相似的是,USFDA[9]利用分類器預測最大概率,定義了樣本與源域類別的相似度指標(source similarity metric, SSM),并以此作為權重用于樣本的預測概率與熵的優化損失中.
DANCE[24]認為已有方法過度側重于對齊源域和目標域的特征分布,而忽略了目標域自身的數據特征,故DANCE[24]首先通過鄰域聚類,讓目標域樣本尋找與其最相似的源域類中心或目標域內最近鄰,來保證目標域聚類良好,如圖5 所示. 其次,DANCE[24]假設屬于未知類的目標域樣本通過源域分類器得到的預測結果不確定性較高,而熵是表征預測不確定性的統計量,故DANCE[24]利用熵進行樣本劃分,認為在訓練過程中熵高于指定閾值一定范圍的樣本更有可能是未知類樣本,反之,則更有可能是2 域共有類樣本,因此在樣本劃分后,DANCE[24]進一步增加高于給定閾值的樣本的熵,降低低于閾值的樣本的熵,并以熵作為最終劃分未知類的依據. 圖6 使用ResNet50 網絡作為特征提取器,輸出維度為源域類別數的單層線性網絡作為分類器,在OfficeHome[36]數據集上,參照DANCE[24]在2 域均有私有類時訓練數據的劃分,以Art 數據集為源域,以Real World 數據集為目標域,利用源域標簽和交叉熵損失訓練20次(整個數據集參與1 遍訓練作為1 次),得到的目標域未知類樣本和已知類樣本熵的直方圖,以及DANCE[24]所采用的熵劃分與訓練法的示意圖.

Fig.5 Neighborhood clustering: Find the most similar sample or centroid to approach圖5 尋找最相似樣本或類中心來靠近的鄰域聚類

Fig.6 Separating target domain samples by entropy for training圖6 依據熵劃分目標域樣本以訓練
Cho[25]與Zhu 等人[26]均對DANCE[24]做出了改進. Cho[25]在DANCE[24]基礎上對目標域數據使用了對比學習策略,讓同一樣本不同形式增廣得到的特征表示相似,而不同樣本則盡可能被區分開來. Zhu等人[26]則通過不同程度的數據增廣保證預測結果的一致性. 此外,為了改善DANCE[24]鄰域搜尋范圍過大的問題,Zhu 等人[26]依據熵將目標域樣本劃分為屬于共有類、屬于未知類和不確定3 種,并對每種樣本設定鄰域搜尋范圍,使得鄰域搜索更自適應,同時減少了計算復雜度. Yu 等人[13]認為不同網絡有不同的學習角度和能力,所以不同的網絡對標簽錯誤的源域樣本和屬于未知類的樣本往往給出不同的預測結果,因此Yu 等人[13]基于無監督域適應問題中2 分類器訓練框架[37],除參照DANCE[24]利用預測熵劃分可能屬于未知類和共有類的樣本的思想,還同時利用不同分類器預測差異劃分目標域樣本并篩選標簽可靠的源域樣本. 預測時,Yu 等人[13]僅使用熵作為判定指標,認為熵過高的樣本預測不確定性仍較高,應屬于未知類. 由前所述,通用域適應方法需要劃分出目標域中屬于源域類別和不屬于源域類別的樣本,并賦予屬于源域類別的樣本以標簽,故UB2DA[11]把通用域適應任務分解為in-class discrimination 和outclass detection,其借鑒DANCE[24]用熵劃分樣本、判斷未知類,并用熵進行自訓練. 在此基礎上,UB2DA[11]假設樣本預測結果在其鄰域間應保持一致性,故定義可學習的目標域類中心來發掘域內樣本的預測狀況. 此外,UB2DA[11]還使用知識蒸餾(knowledge distillation),基于源域預訓練模型在目標域上的預測結果,在目標域上優化特征網絡.
在進行聚類或分類任務時,實現標簽的轉移離不開這一假設:同類樣本具有相似的特征表示并在某低維流形上距離相近,而異類樣本則特征相異且距離較遠. 因此,挖掘樣本在隱空間的局部信息、尋找互近鄰對,往往有助于模型糾正學習錯誤,由前述可見,這一思想已為多數域適應方法所采用. 但由于域偏差的存在,2 個不同域的同類樣本,被同一映射投影到共同的特征空間后,其距離也可能大于同域中異類樣本的距離. 因此,學習特征表示和消除域間差異需同時進行. 但在訓練伊始,如何在特征空間中尋求“突破口”以拉近不同域同類樣本的距離,并仍保持模型區分不同類的能力,則極具挑戰. 此外,雖然從樣本角度進行共有類的對齊更為細致,但數據集體量較大時,若在全數據集范圍內為每個目標域樣本搜尋最相似的樣本,如DANCE[24],則會使運行內存和時間顯著增加. 故有方法轉而使用類中心,如UB2DA[11],但在流形上簡單使用均值表示類中心也存在著表示不準確的問題,為此,DCC[27]嘗試在訓練中確定目標域類別個數并優化類中心. 其首先用均值定義源域類中心,并用k-均值聚類獲取目標域類中心初值,通過在類中心間跨域尋找互近鄰來尋找2域共有類,再定義domain consensus score,利用樣本層面的一致性信息判斷目標域個數. 在識別屬于共有類樣本后,DCC 也引入CDD (contrastive domain discrepancy)[32]來對齊共有類樣本,使得聚類更緊湊,并添加正則項優化目標域類中心表示. 在預測時,DCC 直接使用目標域上類中心給樣本賦予標簽,不僅可以劃分出共有類樣本,還可以區分目標域不同的私有類.MATHS[28]則從樣本角度出發消除域間差異,其通過在源域和目標域間以及各域域內構建樣本間鄰接矩陣進行對比學習,拉近相似的樣本對和分離不相似的樣本對,如圖7 所示. 在預訓練后,初步消除域間差異,將通用域適應問題轉為分布外檢測(out-ofdistribution detection,OOD)問題,然后用高斯分布擬合最大預測概率的分布,并用Hartigan’s dip test 檢驗[38]是否存在未知類. 隨后,MATHS[28]分別構建源域類中心和目標域私有類類中心(若判斷私有類存在),使樣本靠近與其相似的類中心,以增強聚類效果. 最后在統計檢測結果顯著認為目標域私有類存在時,用最大預測概率和3- σ原則設定閾值標記未知類.

Fig.7 Find MNN to reduce domain bias and transfer labels圖7 尋找互近鄰消除域間差異進行標記
由于多數通用域適應方法依賴自行設定的閾值區分未知類,但在對目標域數據沒有先驗信息的情況下,人工設定閾值容易受主觀因素影響,準確性低.故近年來許多方法致力于利用分類器或類中心直接估計樣本屬于未知類的概率. 前述GATE[22]定義了Ks+1維的分類器,用Ks+1維表示屬于未知類概率,其中Ks為源域類別個數.OVANet[29]則除定義一個Ks維分類器外,針對每個源域類別,定義了一個二元分類器以估計樣本屬于該類和不屬于該類的概率. 推斷時則依據分類器預測的類別,查詢二元分類器判斷樣本屬于該類的概率,若概率低于0.5 則被視為不屬于該類,即應為未知類.OVANet[29]在訓練中注意區分各類和其最相似的異類,通過是否接受屬于該類的二元判斷解決閾值主觀難以設置的問題.UMAD[10]則定義2 個分類器,利用2 個分類器預測結果的一致性定義劃分指標iscore,并用mixup[39]進行樣本混合,把混合樣本的平均iscore 作為閾值. 對得到的可能屬于共有類的樣本,UMAD[10]定義局部互信息使得目標域中屬于共有類樣本與源域中對應類樣本更為相似,減少域偏差.
除從統計角度檢驗未知類存在,也可以從構建統計模型入手估計樣本預測的不確定性以區分未知類.TNT[30]引入EDL(evidential deep learning)[40]構建multinomial-Dirichlet 分層模型,估計樣本屬于各類的概率及預測的不確定性,并由模型定義total evidence score 作為判定未知類的統計量,利用3- σ原則確定閾值. 與GATE[22]和MATHS[28]類似,TNT[30]也通過在域間和域內尋找互近鄰對并應用對比學習的方式,從樣本層面對齊2 域特征分布,使聚類更為緊湊.
1)數據集. 我們選取在域適應領域廣泛使用的3個圖片數據集OfficeHome[36], VisDA[41],Office[42]對提供源代碼的典型方法進行對比. 其中Office[42]包含3個數據子集(amazon,dslr,webcam),OfficeHome[36]包含4 個數據子集(Art,Clipart,Product,Real World),我們用數據集首字母作為簡寫,例如以P2R 表示源域為Product,目標域為Real World 的實驗. 此外,我們把VisDA[41]中包含虛擬圖片的train 數據集作為源域,包含真實圖片的validation 數據集作為目標域.
我們參照OVANet[29],將數據集的標簽集合劃分成2 域共有部分(Ls∩Lt),源域私有部分(Ls-Lt)和目標域私有部分(Lt-Ls)并在實驗結果表中以Ls∩Lt/Ls-Lt/Lt-Ls形式展現. 簡記Ls=Lt為CDA 情形,Lt?Ls為PDA 情形,Ls?Lt為ODA 情形,Ls∩Lt≠?,Ls-Lt≠?,Lt-Ls≠?為 OPDA(open partial domain adaptation)情形.
2)評價指標. 對于CDA 和PDA 情形,我們采用各類準確度的均值(average accuracy)進行衡量. 對于目標域存在未知類的ODA 和OPDA 情形,為同時衡量共有類預測平均準確度以及未知類劃分準確度,我們參照CMU[16],使用共有類平均準確度(acccom)和未知類劃分準確度(accun)的調和平均(H-score):
其中
表示共有類各類準確度均值,kcom為共有類個數.
3)對比方法. 目前提供源代碼的方法有UAN[7]、CMU[16]、I-UAN[17]、UMAN[12]、Uni3DA[23]、USFDA[9]、DANCE[24]、DCC[27]、OVANet[29]、文獻[13]和UB2DA[11]. 因為大多數方法都可解決傳統單源域情形下的通用域適應問題,故本文主要針對單源域且源域數據訓練時可獲得的問題設置開展實驗. UMAN[12]作為IUAN[17]優化后針對多源域情形的方法,不參與單源域的比較. 而Uni3DA[23]應用于3 維點云數據,故不參與圖片數據上的比較. 雖然Yu 等人[13]針對源域標簽有噪聲情形進行建模,但該方法也可應用于源域標簽無噪聲情形,我們用clean 表示無噪聲情形. 對于各類方法,我們采用原作者提供的參數進行實驗,實驗過程中發現UAN[7],CMU[16],I-UAN[17]使用原參數結果較差,調整參數后獲得相對更好的結果,故默認匯報的是使用新參數后的結果. 為避免使用目標域標簽信息以選取最好結果,各方法均匯報訓練結束后的測試結果. 具體結果參見表5~17.

Table 5 Average Accuracy of Each Method over OfficeHome and VisDA Under CDA表5 CDA 情形下各方法在OfficeHome 和VisDA 上的平均準確度 %

Table 6 Average Accuracy of Each Method over OfficeHome and VisDA Under PDA表6 PDA 情形下各方法在OfficeHome 和VisDA 上的平均準確度 %

Table 7 Average Accuracy of Each Method over Office Under CDA and PDA表7 CDA 和PDA 情形下各方法在Office 上的平均準確度 %

Table 8 Average Accuracy of Each Method over OfficeHome and VisDA Under ODA表8 ODA 情形下各方法在OfficeHome 和VisDA 上的平均準確度 %

Table 9 H - score of Each Method over OfficeHome and VisDA Under ODA表9 ODA 情形下各方法在OfficeHome 和VisDA 上的 H - score %

Table 10 Average Accuracy of Each Method over OfficeHome and VisDA Under OPDA表10 OPDA 情形下各方法在OfficeHome 和VisDA 上的平均準確度 %

Table 11 H - score of Each Method over OfficeHome and VisDA Under OPDA表11 OPDA 情形下各方法在OfficeHome 和VisDA 上的 H - score %

Table 12 Average Accuracy of Each Method over Office Under ODA and OPDA表12 ODA 和OPDA 情形下各方法在Office 上的平均準確度 %

表13 ODA 和OPDA 情形下各方法在Office 上的 H - score %Table 13 H - score of Each Method over Office Under ODA and OPDA

Table 14 Performance of Reference[13] Given Different Noise Settings Where Source is Art and Target is Clipart Under OPDA表14 源域為Art、目標域為Clipart 的OPDA 情形中文獻[13]在不同噪聲設置下的表現

Table 15 UMAN Performance Under OPDA Given Two Source Domains Where Target Domain is Art表15 目標域為Art 的雙源域OPDA 情形下UMAN 的表現

Table 16 UMAN Performance Under OPDA Given Two Source Domains Where Target Domain is Clipart表16 目標域為Clipart 的雙源域OPDA 下UMAN 的表現

Table 17 UMAN Performance Under OPDA Given Three Source Domains表17 3 源域OPDA 情形下UMAN 的表現
針對單源域的通用域適應問題的開源方法有UAN[7]、CMU[16]、I-UAN[17]、DANCE[24]、DCC[27]、OVANet[29]和文獻[13],其中UAN[7],CMU[16],I-UAN[17]均為典型的對抗生成類方法,而文獻[13]的方法為對齊源域和目標域,訓練過程中也存在將分類器當作判別器與特征提取器對抗的步驟,屬于借鑒了對抗思想. 而DANCE[24],DCC[27],OVANet[29]都未涉及對抗生成思想.
對于CDA 和PDA 情形,由表5~7 可見,在Office[42],>OfficeHome[36],VisDA[41]數據集上,對抗生成類方法表現普遍差于非對抗生成類方法. 值得注意的是,雖然文獻[13](無噪聲版本)既借鑒了DANCE[24]依據熵劃分樣本的方法,又參考了對抗的思想對齊2 域,但在源域標簽無噪聲時,未明顯優于DANCE[29],如表5和表6 所示.OfficeHome[36],VisDA[41]數據集上,對抗生成類方法表現普遍差于非對抗生成類方法. 值得注意的是,雖然文獻[13](無噪聲版本)既借鑒了DANCE[24]依據熵劃分樣本的方法,又參考了對抗的思想對齊2 域,但在源域標簽無噪聲時,未明顯優于DANCE[29],如表5和表6 所示.
在ODA 和OPDA 情形下,對抗類方法與非對抗類方法準確度差距減小,如表8~13 所示,但總體上對抗類方法準確度仍差于非對抗類方法. 但從H-score上看,如表8、表10 和表13 所示,非對抗類方法明顯優于對抗類方法,說明對抗類方法在目標域存在新類時判別能力較低. 而非對抗類方法中,DANCE[24]也存在著未知類判別準確度低的問題,使得其雖然在ODA 和OPDA 下擁有較高的平均準確度,但H-score卻明顯低于DCC[27]和OVANet[29]. 而文獻[13]也呈現了類似DANCE[24]的高準確度、低H-score的表現.
結合訓練過程看,對抗類方法在訓練初期,各類預測準確度通常極低,這是因為特征提取器還未較好地學習到數據的低維表示;隨著源域標簽信息在訓練中起到監督作用,特征提取器逐漸能夠學習到各類內在的特征,達到同類相聚、異類相斥的目標,預測準確度也隨之上升. 但此類方法中,特征提取器還需與域判別器對抗. 在CDA 和PDA 情形下,即Lt?Ls時,特征提取器為使域判別器區分不出2 域數據,會混淆不同類數據,尤其是當類別個數較多時,類邊界不清晰會導致各類預測準確度都較低. 而在未知類存在時,目標域上未知類樣本相對于已知類樣本應更能代表目標域自身特性,即更能被判別出所在域,若特征提取器在低維特征空間拉近了未知類樣本與源域已知類樣本的距離,則不用過多地混淆已知類樣本,也可以達到迷惑域判別器的目的,因此,即使此時預測準確度尚可,但未知類的判別準確度很低.
DANCE[24]依據熵劃分樣本,并在訓練中強化高置信度樣本的熵,即使得極有可能屬于未知類的樣本的熵更低,同時使大概率屬于已知類的樣本預測結果更確定、熵更小. 文獻[13]除了借鑒DANCE[24]、用熵劃分樣本的思想,還利用了2 個分類器預測的差異對目標域樣本進行劃分并區別訓練. 但有新類存在時,DANCE[24]與文獻[13]在訓練中均出現了初期未知類劃分準確度高、已知類準確度低,隨著訓練進行,未知類樣本判別準確度大幅度下降、已知類預測準確度有所上升,但H-score總體下降的問題. 這是由于在訓練伊始,特征提取器還未學到有效的特征信息,因此預測的不確定性高,導致具有較高熵的樣本多,在熵劃分的原則下,未知類樣本容易被判別出,而此時的已知類預測準確度就相對不高. 隨著源域標簽信息逐漸被網絡學習到,已知類樣本的預測不確定性會隨之下降. 但當訓練持續進行時,神經網絡會出現過于自信(over-confident)的情況,即以較高的概率將未知類樣本劃分到某一已知類,此時具有較低熵的未知類樣本在隨后的訓練中會被進一步強化為已知類樣本,而與之類似的未知類樣本也會隨之靠近已知類,導致未知類判別準確度下降.
相對于DANCE[24],DCC[27],OVANet[29]在未知類存在時,未知類劃分以及已知類預測的能力都較好. 但DCC[27]在訓練過程中需要多次聚類,CPU 占用率高.而OVANet[29]則不具備DCC[27]區分目標域不同的未知類的能力.
在與其他單源域方法進行對比時,文獻[13]使用的是源域標簽無噪聲的數據集,為考察不同噪聲類型、不同噪聲比例下文獻[13]的表現,我們考慮源域為OfficeHome[36]數據集中的Art 數據,目標域為Clipart 數據集的OPDA 情形. 并分別選擇了Yu 等人[13]提供的pairflip 和symmetric 共2 種噪聲類型,以及0.2 和0.5 這2 種噪聲比例(噪聲比例越高,源域真實標簽越少).
由表14 可知,相對于無噪聲情形,噪聲水平較低時,文獻[13]表現并沒有明顯差異,甚至源域標簽噪聲的存在讓模型學習到各類特征信息的難度增加,進而使得模型不易以較高置信度把未知類劃分成已知類,因此區分未知類的準確度相對于無噪聲時更高. 而當噪聲水平持續上升至0.5 時,已知類預測的準確度相對于低噪聲水平(0.2 時)或無噪聲時都出現了大幅度下降. 這是因為源域標簽錯誤數量過高時,篩選源域樣本的難度增大,若錯誤的源域標簽被忽視而參與到模型學習的監督中,則直接導致預測錯誤. 此外,高噪聲情形下可被利用的具有真實標簽的源域樣本數目較少,使得模型學到的有效的已知類信息量低,因此預測準確度低.
UMAN 是Yin 等人[12]在I-UAN[17]的基礎上進行的改進,針對多源域通用域適應問題的方法. 我們選取OfficeHome[36]數據集,參照Yin 等人[12]在UMAN原文中的設置,考慮源域數目為2 和源域數目為3 時的表現. 其中源域數目為2 時,我們以Art 和Clipart數據集為目標域. 需注意的是,在Yin 等人[12]設置下,各域相對之間均有私有類和共有類.
由表15~17 可見,總體而言,3 源域情形下未知類劃分準確度和已知類預測平均準確度都略遜于雙源域情形. 這是因為隨著源域數目的增多,不同源域之間既有“共性”又有“個性”. 共性來自于2 域共有的類,而個性則來自于域私有類以及域內數據的特征分布,綜合各源域類別信息具有難度. 從源域上遷移已知類別特征還需克服目標域與不同源域的域間差異,當模型想要對齊目標域與源域整體的特征分布時,難度會顯著增大.
除了模型表現,作為對抗生成類方法,UMAN[12]本身就需要較多的訓練步數,而當源域數目增加時,訓練步數相較于單源域的I-UAN[17]更多,運行時間也更長,計算量更大.
為對比源域數據參與訓練的方法與無源域數據參與訓練的通用域適應方法,我們選擇UB2DA[11],除了考慮UB2DA[11]本身所針對的黑箱(black-box)情形,即僅可獲得源域模型接口的情況;我們還考慮了UB2DA[11]在僅可獲得源域模型參數(source-free)時的表現,在此情景下,除了可以使用源域模型在目標域數據上的預測結果,還可使用源域模型參數初始化特征提取器. 我們用UB2DA[11](SF)和UB2DA[11](BX)分別表示 source-free 和black-box 設置下的UB2-DA[11]方法.根據表5~13 結果發現,UB2DA[11](SF)和UB2DA[11](BX)在ODA 和OPDA 情形下都具有比CDA 和PDA更高的平均準確度. 這是因為CDA 和PDA 情形下Lt?Ls,而源域數據特征以及標簽信息在訓練時無法直接獲取,這就直接削弱了模型對各已知類特征的學習和劃分能力,尤其是在域間差異存在的情況下,將源域上共有類信息遷移到目標域上的各類就更具難度,容易導致預測準確度低.
但在未知類存在時,UB2DA[11](SF)和UB2DA[11](BX)并沒有表現出遠差于有源域數據參與訓練的方法. 這是因為在無法獲取源域數據時,UB2DA[11]會更注重挖掘目標域自身的數據特征,例如除了熵劃分外,還使用了類中心來強化類結構的學習. 所以當共有類占目標域類別總數比例相對于CDA 和PDA 情形并不高時,源域數據的缺失帶來的負面影響在一定程度上被削弱. 而利用目標域數據的特征,也有利于未知類的發掘.
從不同問題設置看,除UMAN[12]外,現有的通用域適應方法都是針對單源域問題. 在用UMAN[12]解決多源域問題時,使用者也需考慮耗時與計算資源. 若源域數據無法參與訓練,可考慮USFDA[9]和UB2DA[11].但需注意的是,USFDA[9]在訓練源模型前需要用源域數據生成并存儲負樣本,源域樣本量大時,會帶來極大的存儲負擔;此外,USFDA[9]在目標域數據上訓練時,還會使用到增廣圖片,也會增加存儲壓力. 負樣本或增廣圖片的生成都在訓練外預先設置好,這種非在線的方式也增加了方法使用上的復雜度. 相較之下,UB2DA[11]使用更便捷,且可用于僅可獲得源域模型接口的黑箱情形,應用范圍更廣.
從訓練過程看,對抗生成類方法(如UAN[7],CMU[16],I-UAN[17])或包含對抗思想的方法(如文獻[13])結果極大地依賴于參數選擇,且模型收斂所需訓練步數多,計算量高且耗時. 例如CMU[16]訓練中使用了多個分類器,以及對源域數據做了多種增廣,以計算其使用的3 個指標,相較于UAN[7]和I-UAN[17]存儲需求更大、運行時間更長. 基于隱空間特征學習的方法相對來說參數依賴度低,結果更魯棒,但是這類方法若在訓練時涉及到記錄歷史低維特征表示,用以計算樣本間相似度(如DANCE[24])或進行聚類操作(如DCC[27])等時,則會占據一定的存儲空間、減緩運行速度.
從結果看,傳統的對抗類方法(如UAN[7],CMU[16],I-UAN[17])沒有在已知類準確度和未知類劃分準確度上展現出明顯的優勢. 而模型的“過自信”問題也會使得預測準確度高的方法判別未知類能力差,極易影響依據熵進行樣本劃分的方法(如DANCE[24]和文獻[13]). 在新類存在時,DCC[27]和OVANet[29]總體而言比DANCE[24]和文獻[13]更穩健. 若選取已有通用域適應方法進行應用,除考慮準確度需求外,還需考慮數據量大小與可用計算資源,若數據量大或計算資源不足,則DCC[27]會更為費時.
利用特征提取器和域判別器對抗學習域不變特征,是消除域間特征差異最廣為應用的方法,但為了讓域判別器無法判斷樣本來自哪個域,特征提取器在學習過程中易使特征空間中各類邊界模糊,不同類樣本混合在一起,導致聚類效果差,如圖8 所示.實驗也顯示對抗類方法即使在未知類不存在時,相對于非對抗方法,預測準確度也更低;未知類存在時,判別能力也更弱,如表5~13 所示.

Fig.8 Ideal result and realistic problems of adversarial methods圖8 對抗學習的理想效果與現實問題
為保證聚類良好,即保證同類樣本距離相近、不同類的簇相距較遠,不少域適應方法尋找最相似的樣本,并使其在拓撲空間中靠得更近[24],或尋找互近鄰對[22,28],并用跨域樣本彼此相似的相對關系尋找公共類,其基本假設即為輸入的高維數據本質位于一個低維流形上,而在這低維流形上,同類數據具有相似的特征表示和相近的幾何距離. 但對域適應而言,涉及拓撲空間中的距離或相似性時均要考慮到不同域在特征上存在著域間差異,故用鄰域思維進行域間遷移和特征學習的前提是在源域和目標域中尋找高置信度樣本作為可靠的突破口,例如彼此鄰域內標簽或預測標簽均相同的源域和目標域樣本對,以其作為錨點,作為其他樣本預測的參考,在訓練中逐步“拉近”其他同類不同域樣本.
對目標域而言,對其樣本進行標注也可以視為聚類以及聚類簇與標簽的配對2 個任務,由此可見,目標域標簽標注準確的前提是其自身聚類良好,域內同類樣本在特征空間中形成同一個簇,類內距離大于類間距離. 如此,當簇內有樣本以較高置信度被源域樣本注釋后,同簇樣本則可獲得較為可靠的標簽,目標域的注釋過程也成了同一特征空間中目標域上各簇和源域各類的匹配過程. 為了提高目標域的聚類效果,現有通用域適應方法中常用的策略包括對比學習、類中心法和近鄰法. 利用對比學習提高特征提取器能力[22,25,28,30],旨在使得相似的樣本對距離更近、不相似的距離更遠. 或者利用類中心法,使得各樣本靠近對應簇的中心法,然后對齊各域類中心[11,27-28].若直接計算類中心,常用的方法為計算同一標簽或偽標簽樣本的均值,由于源域有標簽監督,即使用均值表示類中心也比較準確,而目標域上,在訓練初始預測準確度低時,使用均值計算類中心誤差較大,尤其是當未知類存在時,目標域的私有類樣本會與各共有類樣本混合在一起;若目標域中存在較為嚴重的類大小不均衡問題,依據預測偽標簽計算類中心容易導致各簇都由樣本量大的類別所主導,以致類中心不準確. 也有方法不直接計算類中心,而是提出優化目標,讓模型自行學習類中心[11,28],若學習的目標域類中心包含目標域共有類類中心法,則還涉及目標域共有類類中心的標記問題,模型還需防止部分應為不同類的類中心都對應到同一類,以及部分共有類在學習后缺乏與之對應的類中心.
為樣本尋找其最相似的樣本或尋找一定范圍內的鄰居樣本,然后拉近與之相似的樣本、遠離與之不相似的樣本,這種策略是從樣本角度消除域差異,讓各樣本鄰域內聚類良好. 從樣本出發,可以避免使用類中心帶來的類中心表示不準確的問題,但因保存各樣本最新的特征表示,會占用較多的存儲空間,且若每次迭代都計算當前批次與全樣本的相似性,也會極大地增加計算量與時長,這在一定程度上降低了方法的效率.
如在計算類中心時所提到的,目標域上各類的大小即各類樣本數不盡相同,以VisDA 數據集[41]為例,參照OVANet[29]實驗中在源域和目標域均存在私有類時類別劃分,2 域共有類有6 類(標簽0~5),源域私有類有3 類(標簽6~8),目標域私有類有3 類(標簽9~11,也可都視為一類,標為9),各類樣本數如圖9所示. 圖9 中各域內各類樣本數相差較大,且目標域私有類樣本總數遠高于其他類. 但當某類樣本數顯著地高于其他類時,在特征學習過程中,該類樣本易與其他各類樣本混雜在一簇,且因數量占據優勢而使得預測時其他類樣本被預測成該類,這一現象在訓練初期或該類特征較難學習時表現得尤為明顯.為此,現有的方法往往使樣本被預測成已知類的概率盡可能趨近均勻分布[10]. 此外,因為通用域適應問題將目標域中所有不出現在源域中的類別都視為私有類,故目標域私有類常因包含多個類而樣本量遠高于目標域中其他類,且大量的私有類樣本會影響目標域內共有類樣本與源域內對應類的配對,導致模型把幾乎所有目標域樣本都預測成未知類. 故而模型不僅要避免目標域共有類樣本預測時都預測成某一已知類或某些已知類,還要防止所有樣本被劃分為未知類.

Fig.9 Sample numbers of each class when each domain contains its private classes using VisDA圖9 使用VisDA 時每種域均含私有類的各類樣本數
雖然類別不均衡(class imbalance)問題在源域和目標域中都有可能出現,但源域數據標簽已知,可在劃分批次(batch)時按照各類樣本多少進行抽樣使得各類樣本出現概率盡可能相同,避免類大小差異過大使得樣本數少的類在訓練中被忽視,而目標域數據在進行批次抽樣時則難以避免此類問題. 更重要的是,由于目標域上各類的真實大小未知,模型依賴于由源域標簽監督訓練的分類器給出的預測結果,但即使是2 域共有類,源域和目標域上共有類各類大小的相對情況也不一樣,源域上樣本較少的類在目標域中可能擁有較多的樣本,而當模型沒有從源域數據較好地學習到該類的獨特特征時,目標域上屬于此類的大量樣本都易被錯誤預測.
要實現標簽的遷移注釋,往往需要將源域和目標域樣本投影到同一特征空間,而在特征提取器這一映射的學習過程中,因為有源域標簽監督學習,故而模型在學習低維特征表示時易偏向于學習源域數據的主要特征,使得在同一特征空間,源域的各類樣本更有區分性而目標域樣本更易雜亂無章. 當模型的訓練策略需要先用源域數據進行預訓練時,預訓練后模型偏向源域數據的問題則會更為明顯.
而在預測時,通用域適應方法一般定義的分類器維度恰為源域類別個數,因為分類器的訓練依賴于源域數據的標簽,所以分類器容易對目標域私有類樣本做出“過于自信”(over-confident)的預測. 仍以VisDA[41]數據集為例,在源域和目標域均有私有類的情形下,按照圖9 中類別劃分,僅用源域標簽訓練特征提取器(ResNet50)和分類器(輸出維度為源域類別數的單層線性網絡),得到的預測概率的最大分量見圖10,從圖10 中可以看到許多目標域樣本,尤其是屬于未知類的樣本,被以較高的概率預測到了錯誤的標簽上. 這些被錯誤劃分到源域類別中的目標域私有類樣本,在后續訓練中難以被模型發現并予以糾正. 這也是使得DANCE[24]和文獻[13]的未知類判別準確度隨著訓練進行逐漸下降的原因.

Fig.10 Maximum probability predicted by the classifier trained only using source labels on VisDA圖10 以VisDA 為例僅用源域標簽訓練分類器得到的預測最大概率
提到預測,就不得不提目標域私有類的判斷和劃分. 大多數通用域適應方法依據某一假設或原則定義指標,再與自行設定的閾值比較,如對抗生成學習中的權重[7,14,16-17]、熵[11,24-26]等. 在這一過程中,由于對數據集缺乏先驗知識,閾值往往依據使用者的經驗在訓練前被確定,并在訓練中保持不變. 當模型應用到不同數據集上時,這種閾值選擇方法則容易帶來較大的誤差. 為了減少數據劃分的誤差,很多通用域適應方法在劃分樣本時還會設定帶寬(band width),如圖6 所示,使得指標與閾值差值在某一范圍內的樣本視為不確定樣本,從而與其他更確定的樣本區別對待,但帶寬與閾值一樣由人為設置,可能需要多次實驗才能在某一源域和目標域數據組合上找到表現較好的參數值,不利于方法應用到多種數據集上.為改變閾值在訓練中單一不變的情況,文獻[14,20]定義了動態閾值,使得目標域私有類樣本的篩選隨著訓練的進行由嚴格逐漸寬松. 但仍未改變閾值設定的另一大問題,即缺乏統計意義. 為此,MATHS[28]使用Hartigan’s dip test 檢驗是否可能存在未知類,TNT[30]則用貝葉斯模型刻畫樣本的不確定性,在設定閾值時,二者均應用3- σ原則,以較高置信度去劃分未知類樣本. 但是,依據3- σ依賴指標服從高斯分布或近高斯分布的假設,仍具有一定的局限性.
也有模型定義分類器時使得最后一維或后幾維表示目標域的私有類[9,27],希望分類器在訓練后直接給出樣本屬于未知類的概率估計. 但在訓練分類器時,源域數據中沒有目標域私有類樣本,而目標域中屬于私有類的樣本未知,所以往往需要借助于模擬的未知類樣本來訓練分類器,常見的策略即為圖片的拼接[9]或混合[28,38]. 但不論是拼接還是混合,得到的數據與真實的私有類數據往往相差很大,如圖11 所示,就圖片數據而言,目標域私有類樣本是指這些圖片中的物體與源域圖片中的物體類別不一致,拼接或混合后則難以得到描述具體內容的圖片,缺乏實際意義. 更重要的是,由于模擬樣本與私有類樣本可能并無相似性或無類別關系,目標域私有類樣本仍會因其與模擬的私有樣本不相似而被預測成已知類.此外,過分依賴模擬樣本訓練分類器,也容易使大部分目標域樣本被歸為私有類.

Fig.11 Demo of merging split images and mixing up images in raw feature space圖11 原特征空間中圖片的拼接與混合示例
由于類中心與分類器的權重都有表征類別的作用,故在預測時也有方法直接使用目標域上的類中心進行標記. 例如DCC[27],不僅可用目標域類中心標記目標域中已知類樣本,還能區分目標域中不同的私有類,揭示目標域私有類的結構. 但是,使用類中心給樣本做預測的前提是做好類中心的標記,即對目標域上共有類的類中心做好與源域類別的匹配,以及對私有類類中心做好其與源域共有類和其他私有類的區分. 如前所述,類中心在特征空間中表示的正確性也需注意,避免多類被預測成一類.
在訓練過程中,不論是依據熵[24]還是多分類器的差異[13]去識別可能屬于未知類的樣本,都存在一個問題,即目標域中屬于共有類但被預測錯誤的樣本,與目標域的私有類樣本,從分類器預測結果看,二者往往具有相似的統計特征,例如被預測屬于源域各類的概率的熵都較高. 以VisDA[41]數據集上源域和目標域均有私有類的情形(如圖9 所示),在利用源域標簽訓練特征提取器(ResNet50)和分類器(輸出維度為源域類別數的單層線性網絡)后,目標域私有樣本以及屬于共有類但被錯誤預測的樣本的熵如圖12 所示,可見預測錯誤的共有類樣本的熵總體也偏高. 若此時把熵高于指定閾值的樣本視為未知類樣本,則會使得大量共有類樣本被劃分錯誤.

Fig.12 Entropy of target samples when only training with source data on VisDA圖12 以VisDA 為例僅用源域數據訓練后的目標樣本熵
因此,如何防止目標域中被預測成源域中其他類的共有類樣本被劃分為未知類,以及如何防止目標域私有類樣本以較高的置信度被歸為源域的某類,連同如何識別并糾正被錯誤預測的目標域樣本,都是通用域適應訓練中的難點.
由于缺乏目標域的標簽信息,通用域適應方法往往只能做到判定哪些目標域樣本類別不屬于源域,并統一將其標記為未知類. 但實際應用中,目標域的私有類常為多個類構成的整體,且不同的私有類之間可能存在著顯著的特征差異,因而在特征空間中,私有類樣本難以聚成一簇,若強行使所有目標域私有類樣本混雜在一起,有時反而會給特征映射的學習帶來負面影響. 正是因為目標域私有的各類不盡相同,部分私有類樣本因與其他私有類特征差異可能大于其與源域各類的特征差異,因而被誤判為屬于源域中的某類.
此外,目標域私有類個數未知,使得探索目標域各類之間的關系更為艱難. 因目標域私有類間潛在的特征差異性,若使用單一類中心表示目標域私有類則會非常不準確,現有的域適應做法通常在初步得到可能屬于私有類的樣本后,使用k-均值聚類,得到私有類類中心的初始值,然后使用指數平滑或梯度下降學習等方法更新私有類的類中心[9,11,28],通過各個類中心使得同在一個私有類的樣本距離相近,不同的私有類得以區分. 而在這一過程中,k-均值聚類中私有類個數的設置缺乏先驗信息,較難選擇,類別過少仍會導致不同私有類混雜在一起,過多則增加計算復雜度,同時也會使得聚類趨于平凡.DCC[27]定義指標consencus score 來輔助選擇目標域類別個數,但仍需在訓練中多次嘗試不同的聚類個數,存在運行時間長、計算量大的問題,因此如何兼具高效性與準確性去發掘目標域私有類的結構,并在有機會獲取部分標簽信息后使得模型能給目標域私有類以準確注釋,也是通用域適應方法需考慮的突破之處.
廣為提及的域適應方法大多以圖片分類為任務,但域適應的問題框架現在也更多地被應用到不同領域、不同任務之上. 在計算機視覺(computer vision,CV)領域,針對圖片數據,除了圖片分類,還有目標識別(object detection)[43-45]、圖片分割(image segmentation)[46-48]、圖片生成(image generation)[49]等問題[50]. 當數據由2 維變成3 維時,則有針對3 維點云(point cloud)數據的目標識別[51]和分割任務[52-53]. 當數據并非靜止的圖片,而是動態的視頻時,則有相應的視頻分析任務,包括動作識別(action recognition)[54-55]、動作分割(action segmentation)[56]、行人重識別(person reidentification)[57-58]、視頻描述(video captioning)[59]、視頻質量評價(video quality assessment)[60]等[50]. 在自然語言處理(natural language processing, NLP)中,可對圖片數據進行描述(image captioning)[61-62],也可對文本進行情感分析(sentiment analysis)[63]. 此外,域適應的思想還可以應用于時間序列數據[64],在語音識別(speech recognition)[65]、駕駛操縱預測(driving maneuver prediction)[66]和情緒識別(emotion recognition)[67]等方面均有應用[50]. 在醫療領域,存在著諸如核磁共振圖等醫療數據[46],也得到了域適應概念的應用[68-69],以進行疾病診斷等.
雖然傳統無監督域適應的問題框架已經推廣到了除圖片分類外的多種任務上,通用域適應方法的研究還主要集中于給圖片做標記,但也呈現了向其他領域推廣的趨勢. Chidlovskii 等人[15]針對標簽有序的數據進行標記,將通用域適應與有序回歸(ordinal regression, OR)結合. 文獻[19]則著眼于對工業機器的圖片數據集的應用,以解決工業界機器故障診斷(fault diagnostics)問題. Uni3DA[23]則針對3 維點云數據進行目標識別. 對于2 維圖片數據的分類任務,模型往往只需要考慮圖片的全局特征,而點云數據的局部特征卻具有明確的語義信息,不可忽略,且共有類和私有類樣本也許有相似或共同的局部特征,這就使得通用域適應問題應用到3 維點云數據上時,特征的學習和私有類的判別都更具難度.
除此之外,通用域適應問題與生物信息學中細胞類別注釋問題也有著互通之處. 傳統的細胞標記方法需要對數據集進行預處理、降維和聚類后,尋找標記基因(marker gene)并查閱文獻,給出細胞類別.這就要求使用者掌握一定的生物學知識,且過程耗時、低效,不適合處理大量數據集. 現在的細胞注釋方法更多尋求把良好標注的基因表達數據集作為參考集,自動對未知細胞類別的數據集進行預測. 由于未標記數據集細胞類型缺少先驗信息,且新數據集中往往易包含新的細胞類別,這些新細胞的發現又對下游分析具有重要意義,因而細胞注釋方法也朝著對參考集和待注釋集標簽關系不做要求且增強發現新類能力[70-73]的方向發展,這恰與通用域適應的問題假設類似. 而且目前的單細胞注釋方法除要求能發現新類外,也有假設參考集在待注釋集合上訓練時不可得、有多個參考集[74]等研究方向,其與sourcefree 通用域適應、多源域通用域適應假設相似.
但由于基因測序數據自身的特點,計算機領域的域適應方法不能簡單應用于細胞注釋問題. 首先,對基因測序數據而言,不同的數據集差異來源除了數據背后潛在的生物差異,還有實驗環境等技術因素帶來的干擾,因而跨數據集進行細胞注釋時需要識別并排除干擾因素,保留有用的生物信息. 其次,基因測序數據具有高維度、高稀疏性、高噪聲的特點,研究者往往還需要針對測序數據進行建模,如ZINB(zero-inflated negative binomial)模型[75],以降維和去噪. 此外,細胞的分化往往導致細胞內基因表達量隨時間連續變化,因此細胞注釋時還需保證能得到具有生物意義的細胞軌跡,這相比圖片數據的離散分類則更具難度. 簡言之,通用域適應方法對于缺少參考數據集和待注釋數據集標簽的先驗信息、想要能發現細胞新類的細胞注釋方法研究具有啟發意義,但因為生物數據的自身特點,以及對細胞注釋的生物意義具有要求,研究者需要從生物研究需求與數據特點出發進行建模.
通過前文對目前通用域適應研究方法問題框架的整理和分析,我們可以發現,目前通用域適應方法有逐步放寬假設以使問題更具實際意義、更換數據集來拓展通用域適應實際應用的趨勢,已有的問題設置包括:域適應時僅可獲得源域模型的source-free情形[9-10]、僅可獲得源域模型接口的black-box 情形[11]、多源域情形[12]、源域標簽帶噪聲情形[13]、標簽有序情形[15],但因為這些問題框架相對于通用域適應原假設更具難度,關于它們的研究方法還不夠豐富,值得進一步深入研究.
此外,ADCL[14]將主動學習框架與通用域適應問題結合,也給通用域適應的研究提供了新的思路. 在實際應用中,從主動學習(active learning)的角度思考,如果有機會獲得一小部分目標域樣本的標簽,模型應如何選取樣本去獲得外部注釋,以使得這些標簽參與訓練后最大程度地提升模型效果. 從半監督學習(semi-supervised learning)的角度思考,如果目標域數據集中有一小部分樣本具有標簽,又應如何利用這少數的標簽和源域標簽,學習數據特征并完成標簽遷移. 這些都可以進一步地研究.
當通用域適應問題考慮訓練時源域數據是否可獲得時,可以得到source-free 通用域適應,而與域適應問題緊密相關的領域泛化(domain generalization,DG)則考慮訓練時目標域數據不可獲得的情形. 領域泛化利用多個源域的數據進行特征學習,希望模型在未知的目標樣本上表現良好,這一目標具有極大的挑戰性. 但相對于域適應更為方便的是,每獲取一個目標數據集,領域泛化方法不需要重新訓練模型,實際應用中更有前景. 當然,注重普遍的泛化能力可能會導致領域泛化模型在某一目標數據集上的預測準確度,相對于同時利用源域和目標域數據進行訓練的域適應方法有所降低. 由于不利用目標域進行訓練,本質上領域泛化問題中對于源域和目標域標簽集的先驗信息是未知的,模型所泛化的數據集也很有可能含有私有類,因此,通用域適應的問題框架可以與領域泛化相結合,開展更具實際應用前景的研究.
最后,從前述應用分析可見,通用域適應相對于傳統域適應問題的應用范圍而言,應用場景還較為局限,還可以應用于目標識別、視頻描述等無監督域適應已經應用到的各類任務. 也可著眼于工業界、醫療、生物等領域的問題,用通用域適應的思路輔助解決對應領域的實際問題,例如機器故障診斷、自動駕駛預測、影像學圖片分析、疾病診斷、細胞類別注釋等.
通用域適應放寬了傳統無監督域適應中對于源域和目標域標簽集合相對包含關系的假設,使得域適應問題更加一般化. 本文對近年來通用域適應領域的各類模型,從問題設置和方法策略上分別進行了梳理,開展實驗分析了典型方法,并指出了通用域適應問題解決的難點與可改進之處. 然后對通用域適應目前應用的場景和與之相關的應用領域進行了梳理,同時對通用域適應未來的發展方向進行了分析. 總而言之,通用域適應相較于傳統域適應更具實際意義,也更具難度. 目前已經獲得了越來越多的關注,但還有較多方向與應用問題有待挖掘,在未來一定時間內仍極具研究前景.
作者貢獻聲明:何秋妍負責論文的撰寫與修改;鄧明華負責指導論文結構與內容.