董瑩瑩 鄧萬宇 劉光達
(西安郵電大學計算機院 西安 710061)
遷移學習是機器學習的前沿研究方向之一。其目標是將某個領域或任務上學習到的知識或模式應用到不同的但相關的領域或問題當中。主要思想是從源域及目標域相關的輔助領域中學習標簽數據或知識結構,以改進或實現目標領域或任務的學習效果。遷移學習試圖實現人通過類比進行學習的能力,例如學習走路的技能可以用來學習跑步、學習識別轎車的經驗可以用來識別卡車等。在自然語言處理[1]、計算機視覺[2~6]、醫療健康與生物信息[7]等領域,目標任務的標簽數據稀缺,域適應[2~3,5,8]等問題十分突出,遷移學習具有很強的現實需求。
其中無監督域適應[2,9~15]是特別具有挑戰性的。例如,歧視性訓練的一般做法通常不適用。沒有標簽,甚至不清楚如何定義目標域上的正確區分損失。同樣,執行模型選擇也很困難。因此,為了啟用域自適應,我們需要確定域是如何關聯的。一個被廣泛研究的范式是假設有一個域不變特征空間,在這個空間中,源域和目標域具有相同(或類似)的邊緣分布,且標簽的后驗分布在域間也是相同的。因此,在標記源上訓練的分類器很可能在目標上表現良好。
但現有方法僅限于通過一系列的數據變換[2,9,16~17]比較分布情況來判斷分布相似性。同時,這些方法中,所有的樣本都會被使用以計算出所有的差異,但這也會導致學習效率低下,甚至會造成一些誤差,造成這些誤差的原因,可能是目標域中存在離群點。
針對上述問題,本文提出一種基于score樣本選擇的同構域適應遷移學習算法,來解決這一不同數據分布之間的分類問題。圖1給出了算法示意圖。基本思想是:盡管源域數據和目標域數據或多或少會有些不同,但是源域數據中應該還是會存在一部分樣本能夠用來訓練一個有效的目標域分類模型。于是,本文的目標就是從源域數據中找出那些與目標域數據分布相似的樣本,然后利用這些樣本訓練分類器。我們方法的關鍵思想:不是所有樣本都能夠實現域適應。特別地,僅有特定的樣本通過一系列數據變換后能夠橋接源域和目標域。我們的目的就是定義和選擇這些樣本以實現域適應。因此,我們在樣本層次上研究其微觀分布相似性,選取最理想情況下的樣本子集作為橋梁實現源域到目標域的域適應,從而能更加有效地實現了知識的遷移學習。
帶標記樣本是源域數據集中的一些數據點,對于這些樣本子集的分布進行計算,可以發現這些子集的分布非常接近目標域樣本集的分布。我們方法的關鍵就是利用這些標記樣本作為連接源域和目標域的橋梁。
如何定義這些樣本?針對此問題,將源域中的帶標簽數據表示為,其中不帶標簽的目標域數據別表示源域緣分布。一般來說,P和Q并不相等。同時,定義N個二進制向量d∈{0.1}作為指示器,每個指示器對應源域中的每個樣本點。我們的目標是選擇足夠多可能的源域樣本使得選擇出的源域標記樣本分布和目標域的樣本分布盡可能的相似。其中,1表示樣本被選擇,0表示樣本不被選擇,具體表示為

其中⊙表示元素相乘,而基于域適應的樣本選擇的主要目標是使得:

即經過這樣的訓練模型Xs的樣本分布能夠接近目標域的分布。并有約束‖‖d0≤B,其中,B表示選擇的樣本數目,而‖‖d0≤B是一個0范數約束條件,使得最終解為稀疏。
對于非線性問題,可以對樣本進行核映射x←?(x),在接下來的計算中,經過映射后的數據被定義為x。
為了確定兩個域的分布是否相似,我們利用非參數兩樣本測試進行判斷。特別地,我們使用非線性特征映射函數?(?)將x映射到核空間中,并比較樣本均值之間的不同。同時,我們通過確定二進制向量d使得分布的不同最小。

由此,優化目標函數可表示為如下的一般化形式:

顯然,通過計算分布最小距離,可以確定二值向量d是0還是1,并獲得標記樣本。
通常情況下,研究人員是使用標準的線性約束的二次規劃算法解決優化問題。由于其在約束求解過程計算代價較高,它是解決大規模問題不切實際,因此我們需要解決的一個簡單的方法。上述公式的目標函數可以寫成如下。

令

這樣目標函數重寫為

這樣,可以定義第j個樣本的域適應得分為

將公式帶入,目標函數重寫為

這樣問題轉化為線性整數規劃并有 ‖‖d1≤B作為約束條件。同時,這個問題的全局最優解的獲得不需要利用一些現有的求解算法。僅僅利用score作歸類即可,這里B相當于d的和,即選擇樣本的數目。
基于選擇特征的相關算法,例如SVM,LIBLIN?EAR,ELM都可以在源域數據中被使用去建立模型,并將目標域數據作為測試集。假設SVM能夠獲得最終的判別模型w,接下來就可以放入目標域數據x,這樣預測函數可以寫成:

具體算法流程如下:

2)對域適應得分進行降序排序,并選擇前B個樣本同時將對應的d賦值0或1;

需要注意的是,如果用閾值代替選擇樣本數目B,那么樣本選擇二值分類器就可以直接用域適應得分是否大于或小于閾值作為判斷條件。
為了驗證本文所提方法的有效性,本節將在不同類型數據集上對其進行性能評估,所采用的數據集主要包括 Amazon[18],Dslr[3]Caltech[19]Web?cam實驗中將Score與相關的方法進行了性能比較,用于比較的方法有 TCA[16],GFS[2],GFK[9]和SCL[17],以目標域測試集分類精度作為評價指標,具體描述為

我們選用四種圖像數據集:CALTECH、AMA?ZON、WEBCAM和DSLR。每個數據集都被處理為一個單獨域。AMAZON數據集中的圖像來自網絡,DSLR和WEBCAM中的數據來自同一SLR數碼照相機的不同像素的照片。針對這四個數據集選取其中的10類。每個數據集的每一類圖片數目分別是 15(DSLR),30(WEBCAM),100(AMAZON 和CALRECH)。由于DSLR數據集中各類樣本數目太少,DSLR不能作為源域數據集。我們的實驗只有9種可能的遷移數據集。
我們按照之前研究所提供的方法進行特征提取。通過對Amazon的一個子集圖像進行k-均值計算并量化為800個類作為提取的SURF特征。同時,這些提取出的特征是標準化的,即每個維度在每個域內都是零均值和單位標準偏差,并且公開可用。
1)不同算法分類精度比較。
表1列出了各算法在9個數據集上的分類精度,其中,No Adaptation是直接利用未經處理的源域數據訓練分類器。可以看出,score算法的分類效果較為理想,在9個數據集上,有6個數據集分類精度最高,另外3個分類精度也與最優值非常接近。對于A->D和W->A數據集,存在此誤差的原因是源域數據太少,經過樣本選擇之后不足以達到理想精度,而對于C->A數據集,則是由于兩個域非常相似,并且包含不同成像分辨率的同一個對象實例的圖像。因此,在攝像頭中的許多數據點被選定為標記樣本,使得在判別訓練中只剩下很少的模型選擇實例。解決這個問題留給今后的工作。

表1 各算法在不同數據集上的分類精度
2)樣本數的變化對不同算法分類精度的影響。
下面實驗主要研究源域訓練集樣本數變化算法分類精度的影響。通過對樣本選擇數目設定不同的閾值,實驗結果如圖1所示。
(1)隨著源域訓練樣本數量的增加,在樣本數少量增加的前提下分類精度呈上升趨勢,當樣本數目增加到一定程度時,分類精度最終趨于穩定。
(2)當源域樣本數目同目標域樣本數目相差過大時。隨著源域訓練樣本數量的變化,目標域的樣本分類精度變化不大,也就是說源域樣本對目標域樣本分類的精度影響較低。

圖2 源域樣本數目變化的目標域分類精度趨勢圖
已知的遷移學習應用到了文本分析,觀點分類,無線數據處理,自然語言處理等領域,處理的數據都是小規模的,不符合現實中大規模數據的特點;另外以往的遷移學習重點關注源域和目標域數據分布不同的情況,而假設數據特征空間和標簽空間是相同的,這個假設在實際應用中往往不能滿足。因此,結合實際應用中出現的異構遷移學習和大規模數據處理問題,研究高效的方法是未來值得進一步研究的工作,努力將遷移學習方法推向更加廣泛的實際應用領域。