子空间不一致度量(SDM)、测地线流核(GFK)及域排名(ROD)
1.子空间不一致度量Subspace Disagreement Measure(SDM)
大多数迁移学习方法都涉及到降维:现有 D D D维数据需要降维,降低到 d d d维,这里的 d d d怎么选择?子空间不一致度量可以反映出两个域在多少维的子空间下能够保持最大一致性。计算方法如下:
首先计算源域 S \mathcal{S} S和目标域 T \mathcal{T} T的 P C A PCA PCA子空间,记为 P C A S PCA_\mathcal{S} PCAS和 P C A T PCA_\mathcal{T} PCAT。并将源域和目标域合并,计算其 P C A PCA PCA子空间 P C A S + T PCA_\mathcal{S+T} PCAS+T。直观地说,如果源域和目标域相似,那么上述的三个子空间在格拉斯曼空间上都不应该相距太远。SDM依据这一概念,根据主角度定义如下:
D ( d ) = 0.5 [ sin α d + sin β d ] \mathcal{D}(d)=0.5\left[\sin \alpha_{d}+\sin \beta_{d}\right] D(d)=0.5[sinαd+sinβd]
其中 α d \alpha_{d} αd表示 P C A S PCA_\mathcal{S} PCAS和 P C A S + T PCA_\mathcal{S+T} PCAS+T之间的主角(取维度为 d d d时), β d \beta_{d} βd表示 P C A T PCA_\mathcal{T} PCAT和 P C A S + T PCA_\mathcal{S+T} PCAS+T之间的主角。 sin α d \sin \alpha_{d} sinαd或 sin β d \sin \beta_{d} sinβd称为最小相关距离,这两个值很小时表明 P C A S PCA_\mathcal{S} PCAS和 P C A T PCA_\mathcal{T} PCAT对齐程度高(在 d d d维),两个正弦值取最大时表明两个子空间正交(即 sin α d = sin β d = 1 \sin \alpha_{d}=\sin \beta_{d}=1 sinαd=sinβd=1),在这种情况下,域适应将变得很困难,因为一个子空间上的方差无法迁移到另一个子空间。 D ( d ) \mathcal{D}(d) D(d)表示两个主角的总度量。为了确定最佳维度 d d d,采用贪婪策略:应取尽可能高的 d d d(以保持源域中的方差以构建良好的分类器),但不应高到两个子空间开始具有正交方向,即 d ∗ = min { d ∣ D ( d ) = 1 } d^*=\min \{d \mid \mathcal{D}(d)=1\} d∗=min{d∣D(d)=1}。
2.测地线流核Geodesic Flow Kernel(GFK)
-
子空间不一致度量Subspace Disagreement Measure
通过上述的子空间不一致度量,确定嵌入域子空间的最优维度 d d d。
-
构造测地线流Construct geodestic flow
首先设 P S , P T ∈ R D × d \boldsymbol{P}_{\mathcal{S}}, \boldsymbol{P}_{\mathcal{T}} \in \mathbb{R}^{\mathrm{D} \times \mathrm{d}} PS,PT∈RD×d表示源域和目标域子空间的基(即上一步骤中的 P C A PCA PCA嵌入域子空间,在所有的方向上两两正交),令 R S ∈ R D × ( D − d ) \boldsymbol{R}_{\mathcal{S}} \in \mathbb{R}^{\mathrm{D} \times (\mathrm{D}-\mathrm{d})} RS∈RD×(D−d)表示 P S \boldsymbol{P}_{\mathcal{S}} PS的正交补集,即 R S T P S = 0 \boldsymbol{R}_{\mathcal{S}}^{\mathrm{T}} \boldsymbol{P}_{\mathcal{S}}=0 RSTPS=0。使用黎曼流形的正则欧几里得度量,将测地流参数化为 Φ : t ∈ [ 0 , 1 ] → Φ ( t ) ∈ G ( d , D ) \boldsymbol{\Phi}: t \in[0,1] \rightarrow \boldsymbol{\Phi}(t) \in G(\mathrm{~d}, \mathrm{D}) Φ:t∈[0,1]→Φ(t)∈G( d,D),其中 Φ ( 0 ) = P S \boldsymbol{\Phi}(0)=\boldsymbol{P}_{\mathcal{S}} Φ(0)=PS and Φ ( 1 ) = P T \boldsymbol{\Phi}(1)=\boldsymbol{P}_{\mathcal{T}} Φ(1)=PT(在假设的流形空间中,源域和目标域通过映射函数 Φ ( ⋅ ) \boldsymbol{\Phi}(\cdot) Φ(⋅)分别映射到0和1上)。此外,对0和1之间的其他点 t t t,有如下关系。
Φ ( t ) = P S U 1 Γ ( t ) − R S U 2 Σ ( t ) \boldsymbol{\Phi}(t)=\boldsymbol{P}_{\mathcal{S}} \boldsymbol{U}_1 \boldsymbol{\Gamma}(t)-\boldsymbol{R}_{\mathcal{S}} \boldsymbol{U}_2 \boldsymbol{\Sigma}(t) Φ(t)=PSU1Γ(t)−RSU2Σ(t)
其中 U 1 ∈ R d × d \boldsymbol{U}_1 \in \mathbb{R}^{\mathrm{d} \times \mathrm{d}} U1∈Rd×d 和 U 2 ∈ R ( D − d ) × d \boldsymbol{U}_2 \in \mathbb{R}^{(\mathrm{D}-\mathrm{d}) \times \mathrm{d}} U2∈R(D−d)×d是正交矩阵,它们由下面这一对SVD(奇异值分解)得到。
P S T P T = U 1 Γ V T , R S T P T = − U 2 Σ V T \boldsymbol{P}_{\mathcal{S}}^{\mathrm{T}} \boldsymbol{P}_{\mathcal{T}}=\boldsymbol{U}_1 \boldsymbol{\Gamma} \boldsymbol{V}^{\mathrm{T}}, \quad \boldsymbol{R}_{\mathcal{S}}^{\mathrm{T}} \boldsymbol{P}_{\mathcal{T}}=-\boldsymbol{U}_2 \boldsymbol{\Sigma} \boldsymbol{V}^{\mathrm{T}} PSTPT=U1ΓVT,RSTPT=−U2ΣVT
其中 Γ \boldsymbol{\Gamma} Γ和 Σ \boldsymbol{\Sigma} Σ是 d × d \mathrm{d} \times \mathrm{d} d×d 维的对角矩阵,对角元素为 cos θ i \cos \theta_i cosθi和 sin θ i \sin \theta_i sinθi( i = 1 , 2 , … , d i=1,2, \ldots, \mathrm{d} i=1,2,…,d), θ i \theta_i θi记作源域和目标域子空间的主角,且 0 ≤ θ 1 ≤ θ 2 ≤ ⋯ ≤ θ d ≤ π / 2 0 \leq \theta_1 \leq \theta_2 \leq \cdots \leq \theta_{\mathrm{d}} \leq \pi / 2 0≤θ1≤θ2≤⋯≤θd≤π/2,它们测量子空间的重叠程度。另外,对角阵 Γ ( t ) \boldsymbol{\Gamma}(t) Γ(t)和 Σ ( t ) \boldsymbol{\Sigma}(t) Σ(t)的对角元素为 cos ( t θ i ) \cos \left(t \theta_i\right) cos(tθi) 和 sin ( t θ i ) \sin \left(t \theta_i\right) sin(tθi)。 -
计算测地线流核Compute geodesic flow kernel
测地流将源域到目标域的平滑路径参数化,若考虑关于 t ∈ ( 0 , 1 ) t \in (0,1) t∈(0,1)的子空间 Φ ( t ) \boldsymbol{\Phi}(t) Φ(t),则计算 Φ ( t ) T x \boldsymbol{\Phi}(t)^\mathrm{T}x Φ(t)Tx即是将特征向量到该子空间的投影(若 x x x来自源域且 t t t接近于1,则投影更接近于目标域)。若用这些投影得到域不变特征来构造分类器,理论上说就能在目标域也表现良好。
GFK将原始特征和投影扩展到所有子空间,并强制进行相似性度量,该度量对任何倾向于源域或目标域或任何两者之间的子空间都是鲁棒的。对于两个原始的 D \mathrm{D} D维特征向量 x i x_i xi和 x j x_j xj,将其投影计算为 Φ ( t ) \boldsymbol{\Phi}(t) Φ(t)( t ∈ ( 0 , 1 ) t \in (0,1) t∈(0,1)),并将所有投影连接到无限维特征向量 z i ∞ \boldsymbol{z}_i^{\infty} zi∞和 z j ∞ \boldsymbol{z}_j^{\infty} zj∞,用它们的内积定义测地流核如下。
⟨ z i ∞ , z j ∞ ⟩ = ∫ 0 1 ( Φ ( t ) T x i ) T ( Φ ( t ) T x j ) d t = x i T G x j \left\langle\boldsymbol{z}_i^{\infty}, \boldsymbol{z}_j^{\infty}\right\rangle=\int_0^1\left(\boldsymbol{\Phi}(t)^{\mathrm{T}} \boldsymbol{x}_i\right)^{\mathrm{T}}\left(\boldsymbol{\Phi}(t)^{\mathrm{T}} \boldsymbol{x}_j\right) d t=\boldsymbol{x}_i^{\mathrm{T}} \boldsymbol{G} \boldsymbol{x}_j ⟨zi∞,zj∞⟩=∫01(Φ(t)Txi)T(Φ(t)Txj)dt=xiTGxj
其中, G ∈ R D × D G \in \mathbb{R}^{\mathrm{D} \times \mathrm{D}} G∈RD×D为半正定矩阵,这部分用到核技巧,内核函数在无限维特征之间诱导内积。矩阵 G G G可以从先前定义的矩阵以闭合形式计算如下。
G = [ P S U 1 R S U 2 ] [ Λ 1 Λ 2 Λ 2 Λ 3 ] [ U 1 T P S T U 2 T R S T ] \boldsymbol{G}=\left[\begin{array}{ll} \boldsymbol{P}_{\mathcal{S}} \boldsymbol{U}_1 & \boldsymbol{R}_{\mathcal{S}} \boldsymbol{U}_2 \end{array}\right]\left[\begin{array}{cc} \boldsymbol{\Lambda}_1 & \boldsymbol{\Lambda}_2 \\ \boldsymbol{\Lambda}_2 & \boldsymbol{\Lambda}_3 \end{array}\right]\left[\begin{array}{c} \boldsymbol{U}_1^{\mathrm{T}} \boldsymbol{P}_{\mathcal{S}}^{\mathrm{T}} \\ \boldsymbol{U}_2^{\mathrm{T}} \boldsymbol{R}_{\mathcal{S}}^{\mathrm{T}} \end{array}\right] G=[PSU1RSU2][Λ1Λ2Λ2Λ3][U1TPSTU2TRST]
其中对角矩阵 Λ 1 \Lambda_1 Λ1、 Λ 2 \Lambda_2 Λ2和 Λ 3 \Lambda_3 Λ3的对角元素如下。
λ 1 i = 1 + sin ( 2 θ i ) 2 θ i , λ 2 i = cos ( 2 θ i ) − 1 2 θ i , λ 3 i = 1 − sin ( 2 θ i ) 2 θ i \lambda_{1 i}=1+\frac{\sin \left(2 \theta_i\right)}{2 \theta_i}, \lambda_{2 i}=\frac{\cos \left(2 \theta_i\right)-1}{2 \theta_i}, \lambda_{3 i}=1-\frac{\sin \left(2 \theta_i\right)}{2 \theta_i} λ1i=1+2θisin(2θi),λ2i=2θicos(2θi)−1,λ3i=1−2θisin(2θi)
该方法的优势在于不需要人工确定任何参数。
3.域排名Rank of Domain(ROD)
- 面向问题:在未运行算法的前提下,如何确定哪一个数据集作为源域,能够在目标域上提供最佳性能?
- 计算ROD包括3个步骤:
- 利用SDM确定最优维数 d d d;
- 在每一个维度 i ≤ d ∗ i \leq \mathrm{d}^* i≤d∗,用两个一维高斯近似两个域的分布,然后计算它们之间的对称KL散度;
- 计算主角的KL散度加权平均值,即 R ( S , T ) = 1 d ∗ ∑ i d ∗ θ i [ K L ( S i ∥ T i ) + K L ( T i ∥ S i ) ] \mathcal{R}(\mathcal{S}, \mathcal{T})=\frac{1}{\mathrm{~d}^*} \sum_i^{\mathrm{d}^*} \theta_i\left[K L\left(\mathcal{S}_i \| \mathcal{T}_i\right)+K L\left(\mathcal{T}_i \| \mathcal{S}_i\right)\right] R(S,T)= d∗1∑id∗θi[KL(Si∥Ti)+KL(Ti∥Si)],其中 S i \mathcal{S}_i Si和 T i \mathcal{T}_i Ti是上述源域和目标域的分布,它们根据投影到主向量(与第 i i i个主角相关)上的数据估计得到。
- 结论: R ( S , T ) \mathcal{R}(\mathcal{S}, \mathcal{T}) R(S,T)更小的一对域,更容易适应。因为这两个域在几何上排列良好(小主角),分布相似(小KL散度)。
4.参考鸣谢
- Gong B, Shi Y, Sha F, et al. Geodesic flow kernel for unsupervised domain adaptation[C]//2012 IEEE conference on computer vision and pattern recognition. IEEE, 2012: 2066-2073.
- Gong B, Shi Y, Sha F, et al. Supplementary Material Geodesic Flow Kernel for Unsupervised Domain Adaptation[J].
- 《小王爱迁移》系列之五:测地线流式核方法(GFK)https://zhuanlan.zhihu.com/p/27782708
5.注
- 才疏学浅,欢迎批评、指导和交流;
- 看完觉得还行记得点个赞哦~