Pirmin Lemberger, Ivan Panico, A Primer on Domain Adaptation
Theory and Applications, 2019.
概
機器學習分爲訓練和測試倆步驟, 且往往假設訓練樣本的分佈和測試樣本的分佈是一致的, 但是這種情況在實際中並不一定成立. 作者就prior shift, covratie shift, concept shift, subspace mapping 四種情形給出相應的’解決方案".
主要內容
符號說明
x∈X⊂Rp: 數據
y∈Y={ω1,…,ωk}: 類別標籤
S={(x1,y1),…(xm,ym)}: 訓練樣本
h∈H:X→Y: 擬合函數/分類器
y^=h(x):預測
ℓ:Y×Y→R: 損失函數
R[h]:=E(x,y)∼p[ℓ(y,h(x)]: risk
R^[h]:=m1∑i=1m[ℓ(yi,h(xi)]: 經驗風險函數
pS: 訓練數據對應的分佈
pT: 目標數據對應的分佈
p^:近似的分佈
Prior shift
pS(x∣y)=pT(x∣y) 但
pS(y)=pT(y). (如, 訓練的時候,對每一類, 我們往往選擇相同數目的樣本以求保證類別的均衡).

假設根據訓練樣本
S和算法
A,我們得到了一個近似後驗分佈
p^S(y∣x), 且近似的先驗分佈
p^S(y=ωk)=mk/∣S∣, 並同樣假設
p^S(x∣y)=p^T(x∣y), 有
p^T(ωk∣x)=∑k′=1Kw^(ωk′)p^S(ωk′∣x)w^(ωk)p^S(ωk∣x),w^(ωk):=p^S(ωk)p^T(ωk).(9)
倘若我們知道
p^T(ωk),k=1,…,K, 那麼我們就直接可以利用(9)式來針對目標數據集了, 而這裏的真正的難點在於, 如果不知道, 應該怎麼辦.
假設, 我們的目標數據集的樣本數據爲
x1′,…,xm′, 則我們的目標是求出
p^T(ωk∣x′), 有
p^T(ωk)=i=1∑mp^T(ωk,xi′)=m1i=1∑mp^T(ωk∣xi′),(10)
其中在最後一個等號部分, 我們假設了
p(xi′)=m1, 這個假設並非空穴來風, 我們可以從EM算法角度去理解.
於是, 很自然地, 我們可以利用交替迭代求解
p^T(s)(ωk∣x′)=∑k′=1Kw^(ωk′)p^S(ωk′∣x′)w^(ωk)p^S(ωk∣x′),w^(ωk):=p^S(ωk)p^T(s)(ωk).p^T(s+1)(ωk)=m1i=1∑mp^T(s)(ωk∣xi′).(11)
注: 在實際中, 由於各種因素, 這麼做反而畫蛇添足, 起到反效果, 我們可以通過假設檢驗來判斷是否接受.


其趨向於
χ(K−1)2對於足夠多地樣本.
Covariate shift
pS(y∣x)=pT(y∣x), 但是
pS(x)=pT(x).
A covariate shift typically occurs when the cost or the difficulty of picking an observation with given features x strongly impacts the probability of selecting an observation (x, y) thus making it practically impossible to replicate the target feature distribution
pT(x) in the training set.

我們所希望最小化,
RT[h]:=EpT[ℓ(h(x)),y)]=EpS[w(x)ℓ(h(x)),y)].(14,15)
在實際中, 若我們有
w(x)=pT(x)/pS(x)或者其一個估計
w^(x), 我們最小化經驗風險
R^S,w[h]:=m1i=1∑mw(xi)ℓ(h(xi),yi).(16)
注: 以下情況不適合用(16):
-
pS(xi)=0 但是
pT(x)i=0;
-
pS,pT二者差距很大, 使得
w波動很大.
即
pS最好是選取範圍和
pT近似, 這些是根據下面的理論結果的到的:

(17)有
1−δ的可信度.
w^
顯然, 解決(16)的關鍵在於
w^:=p^T(x)/p^S(x), 有很多的概率密度估計方法(如核密度估計(KDE)), 但是在實際應用中, 這種估計可能會導致不可控的差的結果.
一個策略是直接估計
w^, 而非分別估計
p^T,p^S:
- 期望均方誤差
EpS[(w^−pT/pS)2](怎麼玩?);
- KL散度
KL(pT∥w^pS)(怎麼玩?);
- 最大平均差異(maximum mean discrepancy, MMD).
KMM
選擇kernel
K(x,y), 相當於將
x映入一個希爾伯特空間(RKHS),
x→Φx, 其內積爲
⟨Φx,Φy⟩=K(x,y). 則MMD定義爲:
(MMD[α,β])2:=∥Ex∼α[Φx]−Ex∼β[Φx]∥2=∥Ex∼α[Φx]∥2−2⟨Ex∼α[Φx],Ex∼β[Φx]⟩+∥Ex∼β[Φx]∥2.
則令
α=w^p^S,β=p^T 則

(MMD[p^T,w^p^S])2=mS21(21w^TKw^−kTw^)+const,(21)
其中
w^:=(w^(x1),…,w^(xmS))T,
Kij:=2K(xi,xk),
ki:=mT2mS∑j=1mTK(xi,xj).
在實際中, 求解下面的優化問題
minws.t.21w^TKw^−kTw^w^(xi)∈[0,B],∣mS1∑i=1mSw^(xi)−1∣≤ϵ.
第一個條件爲了保證
p^S,p^T之間差距不大, 第二個條件是爲了保證概率的積分爲1的性質.
Concept shift
pS(y∣x)=pT(y∣x),
pS(x)=pT(x). 其往往是在時序系統下, 即分佈
p與時間有關.
- 週期性地利用新數據重新訓練模型;
- 保留部分舊數據, 結合新數據訓練;
- 加入權重;
- 引入有效的迭代機制;
- 檢測偏移, 並作出反應.

Subspace mapping
訓練數據爲
x, 而目標數據爲
x′=T(x), 且
pT(T(x),y)=pS(x,y),且
T是未知的.
我們現在的目標是找到一個有關
Wasserstein distance
以離散情形爲例, 介紹,
α:=i=1∑mαiδzi,
其中
δz表示狄拉克函數.
Tα:=i=1∑mαiδT(zi),
則, 自然地, 我們希望
argT,Tα=βminEz∼α[c(z,T(z))],
其中
c(⋅,⋅)是我們給定的一個損失函數, 這類問題被稱爲 Monge 問題.

但是呢, 這種方式找
T非常困難, 於是有了一種概率替代方案,
γ:=i,j∑γijδzi,zj′(30)
爲以離散概率分佈, 則
E(z,z′)∼γ[c(z,z′)]:=i,j∑γi,jc(zi,zj),(33)
Lc(α,β):=γ∈U(α,β)minE(z,z′)∼γ[c(z,z′)](34)
衡量了從分佈
α變換到分佈
β的難易程度, 其中
U(α,β):={γ:j=1∑sγij=αi,i=1∑rγij=βj},
注意這實際上是一個事實, 因爲
α,β是其聯合分佈
γ的邊緣分佈.
而Wasserstein distance實際上就是
Wp(α,β):=[Ldp(α,β)]1/p,c(z,z′)=[d(z,z′)]p,p≥1.(35)
d爲一距離.
應用於 subspace mapping
策略一:
α=p^
p
^
T
(
x
′
)
\alpha=\hat{p}_S(\mathbf{x}), \beta=\hat{p}_T(\mathbf{x}')
α=p^S(x),β=p^T(x′), 通過(34)可以找到一個
γ, 再利用
γ把訓練數據
S映射到
p^T分佈上, 再利用新的訓練數據重新訓練模型. (? 如何利用
γ變換呢?)
注:爲了防止
(xi,yi),(xj,yj),yi=yj<