《Balanced Distribution Adaptation for Transfer Learning》学习
2017 IEEE International Conference on Data Mining
迁移学习通过利用源领域的知识对标签较少或没有标签的目标领域进行标注,取得了良好的效果。现有的方法往往寻求最小化域之间的分布差异,如边缘分布、条件分布或两者兼有。然而,现有算法往往对这两种距离一视同仁,导致实际应用中性能不佳。此外,现有的方法通常假设数据集是平衡的,这也限制了它们在不平衡任务上的性能,而不平衡任务在实际问题中很常见。
为了解决分布适应问题,本文提出了一种新的迁移学习方法——平衡分布适应(BDA),该方法可以自适应地利用边缘分布差异和条件分布差异的重要性,现有的几种迁移学习方法可以作为平衡分布适应的特例。
在此基础上,我们提出了一种新的加权均衡分布适应(W-BDA)算法来解决迁移学习中的类不平衡问题。W-BDA不仅考虑了域之间的分布适应性,而且自适应地改变了每个类别的权重。
**关键词:**迁移学习,领域适应,分布适应,类不平衡
现有的分布适应方法大多只适应边缘分布[5]或条件分布[6]或两者都适应。
然而,在现有的方法中,这两种分布通常被平等对待,而彼此的重要性并没有被利用。
因此,如何自适应地利用每个分布的重要性是一个关键问题。
如何处理迁移学习中类不平衡的情况是另一个重要挑战。
在本文中,我们提出了两种新的方法来解决上述两个问题。对于分配适应,我们提出均衡分配适应(BDA)。BDA不仅可以适应域间的边缘分布和条件分布,而且可以利用这两种分布的重要性,从而有效地调整它以适应特定的迁移学习任务。
我们还提出了一种新的加权均衡分布适应(W-BDA)算法来解决迁移学习中的类不平衡问题。所提出的W-BDA在进行分布适应时,可以自适应地改变各类别的权重。
综上所述,我们的贡献主要有三方面:
本文提出的BDA和W-BDA主要与基于特征的迁移学习方法有关。
提出了共同选择特征和保留结构特性的方法。
Long等人[2]提出了联合分布适应方法(joint distribution adaptive method, JDA)来匹配域之间的边缘分布和条件分布。
还有一些对JDA进行了扩展,增加了结构一致性[4]、域不变聚类[7]和目标选择[13]。
这些方法倾向于忽略两个不同分布之间的重要性,只是将它们加在一起。然而,当两个分布之间存在较大的差异时,这些方法无法评估每个分布的重要性,在大多数情况下可能不能很好地推广。
我们的工作能够调查每个分布的重要性。因此,它可以更一般化地用于具有复杂数据分布的迁移学习场景。
之前的样本重加权方法[14]只学习了特定样本的权重,而忽略了不同类别的权重平衡。
[15]开发了一种最紧密公共空间学习(CCSL)方法来适应跨域权重。CCSL是一个实例选择方法,而我们的是一个基于特性的方法。
在[16]中提出多集特征学习来学习判别特征。[3]提出了在目标域上构造源参考集合的加权最大均值差异,但它只适应源域的先验,而我们的方法可以同时适应源域和目标域的先验。
[17]解决了目标域有一些标签时的不平衡问题,而在我们的方法中,目标域没有标签。[18]根据他们的预测调整了不同样本的权重,而我们的工作重点是调整每个类的权重。
首先,我们介绍问题的定义。然后,我们提出了均衡分配适应(BDA)方法。最后介绍了加权BDA (W-BDA)方法。
给定有标记的源域 { x s i , y s i } i = 1 n \{\mathbf x_{s_i}, \mathbf y_{s_i}\}^n_{i=1} {xsi,ysi}i=1n,无标记的目标域 { x t j } j = 1 m \{\mathbf x_{t_j}\}^m_{j=1} {xtj}j=1m,假设特征空间 X s = X t X_s = X_t Xs=Xt,标签空间 Y s = Y t Y_s = Y_t Ys=Yt,但边际分布 P s ( x s ) ≠ P t ( x t ) P_s(\mathbf x_s) \ne P_t(\mathbf x_t) Ps(xs)=Pt(xt),条件分布 P s ( y s ∣ x s ) ≠ P s ( y t ∣ x t ) P_s(\mathbf y_s | \mathbf x_s) \ne P_s(\mathbf y_t | \mathbf x_t) Ps(ys∣xs)=Ps(yt∣xt)。迁移学习的目的是利用源域 D s D_s Ds学习 D t D_t Dt的标签 y t \mathbf y_t yt。
平衡分布适应通过自适应地最小化域之间的边际分布和条件分布差异来解决迁移学习问题,并处理阶级不平衡问题,即最小化:
迁移学习方法通常寻求适应域之间的边缘分布和条件分布,具体来说,这是指最小化距离:
D ( D s , D t ) ≈ D ( P ( x s ) , P ( x t ) ) + D ( P s ( y s ∣ x s ) , P s ( y t ∣ x t ) ) (1) D(D_s,D_t)\approx D(P(\mathbf x_s),P(\mathbf x_t))\\ +D(P_s(\mathbf y_s | \mathbf x_s),P_s(\mathbf y_t | \mathbf x_t))\tag{1} D(Ds,Dt)≈D(P(xs),P(xt))+D(Ps(ys∣xs),Ps(yt∣xt))(1)
具体来说,BDA利用一个平衡因子μ来利用分布的不同重要性:
D ( D s , D t ) ≈ ( 1 − μ ) D ( P ( x s ) , P ( x t ) ) + μ D ( P s ( y s ∣ x s ) , P s ( y t ∣ x t ) ) (2) D(D_s,D_t)\approx (1-\mu)D(P(\mathbf x_s),P(\mathbf x_t))\\ +\mu D(P_s(\mathbf y_s | \mathbf x_s),P_s(\mathbf y_t | \mathbf x_t))\tag{2} D(Ds,Dt)≈(1−μ)D(P(xs),P(xt))+μD(Ps(ys∣xs),Ps(yt∣xt))(2)
其中 μ ∈ [ 0 , 1 ] \mu\in[0,1] μ∈[0,1],当 μ → 0 \mu\rightarrow 0 μ→0时,表示数据集差异较大,边缘分布占主导地位;当 μ → 1 \mu\rightarrow 1 μ→1时,表明数据集是相似的,因此条件分布的适应性更重要。
为了计算出 P ( x t ∣ y t ) P (x_t|y_t) P(xt∣yt),我们利用训练在 D s D_s Ds上的基分类器对 D t D_t Dt进行预测,得到 D t D_t Dt的软标签。软标签可能不太可靠,所以我们反复改进它们。
为了计算公式(2)中的边际分布和条件分布差异,我们采用最大均值差异(MMD)[5]对两种分布差异进行经验估计。
从形式上讲,式(2)可以表示为
D ( D s , D t ) ≈ ( 1 − μ ) ∥ 1 n ∑ i = 1 n x s i − 1 m ∑ j = 1 m x t j ∥ H 2 + μ ∑ c = 1 C ∥ 1 n c ∑ x s i ∈ D s ( c ) x s i − 1 m c ∑ x t j ∈ D t ( c ) x t j ∥ H 2 (3) D(D_s,D_t)\approx (1-\mu)\left\|\frac{1}{n}\sum^n_{i=1}\mathbf x_{s_i}-\frac{1}{m}\sum^m_{j=1}\mathbf x_{t_j}\right\|^2_{\mathcal H} \\ +\mu\sum^C_{c=1}\left\|\frac{1}{n_c}\sum_{\mathbf x_{s_i}\in D^{(c)}_s}\mathbf x_{s_i}-\frac{1}{m_c}\sum_{\mathbf x_{t_j}\in D^{(c)}_t}\mathbf x_{t_j}\right\|^2_{\mathcal H}\tag{3} D(Ds,Dt)≈(1−μ)∥ ∥n1i=1∑nxsi−m1j=1∑mxtj∥ ∥H2+μc=1∑C∥ ∥nc1xsi∈Ds(c)∑xsi−mc1xtj∈Dt(c)∑xtj∥ ∥H2(3)
式中, H \mathcal H H表示再生核希尔伯特空间(RKHS), c ∈ { 1 , 2 , ⋅ ⋅ ⋅ , c } c\in\{1,2,···,c\} c∈{1,2,⋅⋅⋅,c}是不同的类标签, n , m n, m n,m表示源/目标域中的样本数量, D s ( c ) D^{(c)}_s Ds(c)和 D t ( c ) D^{(c)}_ t Dt(c)分别表示源和目标域中属于 c c c类的样本。 n c = ∣ D s ( c ) ∣ , m c = ∣ D t ( c ) ∣ n_c = |D^{(c)}_s |, m_c = |D^{(c)}_ t | nc=∣Ds(c)∣,mc=∣Dt(c)∣,分别表示属于 D s ( c ) 和 D t ( c ) D^{(c)}_s和D^{(c)}_ t Ds(c)和Dt(c)的样本数量。第一项为域之间的边际分布距离,第二项为条件分布距离。
进一步利用矩阵技巧和正则化,可以将式(2)形式化为:
min tr ( A ⊤ X ( ( 1 − μ ) M 0 + μ ∑ c = 1 C M c ) X ⊤ A ) + λ ∥ A ∥ F 2 s . t . A ⊤ X H X ⊤ A = I , 0 ≤ μ ≤ 1 (4) \min \operatorname{tr}\left(\mathbf{A}^{\top} \mathbf{X}\left((1-\mu) \mathbf{M}_{0}+\mu \sum_{c=1}^{C} \mathbf{M}_{c}\right) \mathbf{X}^{\top} \mathbf{A}\right)+\lambda\|\mathbf{A}\|_{F}^{2}\\ s.t. \mathbf{A}^{\top} \mathbf{X} \mathbf{H} \mathbf{X}^{\top} \mathbf{A}=\mathbf{I}, \quad 0 \leq \mu \leq 1\tag{4} mintr(A⊤X((1−μ)M0+μc=1∑CMc)X⊤A)+λ∥A∥F2s.t.A⊤XHX⊤A=I,0≤μ≤1(4)
式(4)中有两项:具有平衡因子的边际分布和条件分布的适应项(项1)和正则化项(项2)。 λ \lambda λ是正则化参数 ∥ ⋅ ∥ F 2 \|\cdot\|^2_F ∥⋅∥F2 Frobenius规范。
式(4)涉及到两个约束:第一个约束确保转换后的数据 ( A T X ) (\mathbf A^T\mathbf X) (ATX)应该保持原始数据的内部属性。第二个约束表示平衡因子 μ \mu μ的范围。
更具体地说,式(4)中, X \mathbf X X表示由 x s \mathbf x_s xs和 x t \mathbf x_t xt组成的输入数据矩阵, A \mathbf A A表示变换矩阵, I ∈ R ( n + m ) × ( n + m ) \mathbf I\in\mathbb R^{(n+m)×(n+m)} I∈R(n+m)×(n+m)为单位矩阵, H \mathbf H H为中心矩阵,即 H = I − ( 1 n ) 1 \mathbf H = \mathbf I−(\frac{1}{n})\mathbf 1 H=I−(n1)1。与工作[2]类似, M 0 \mathbf M_0 M0和 M c \mathbf M_c Mc是MMD矩阵,可以通过以下方式构建:
( M 0 ) i j = { 1 n 2 , x i , x j ∈ D s 1 m 2 , x i , x j ∈ D t − 1 m n , otherwise (5) \left(\mathbf{M}_{0}\right)_{i j}= \begin{cases}\frac{1}{n^{2}}, & \mathbf{x}_{i}, \mathbf{x}_{j} \in \mathcal{D}_{s} \\ \frac{1}{m^{2}}, & \mathbf{x}_{i}, \mathbf{x}_{j} \in \mathcal{D}_{t} \\ -\frac{1}{mn}, & \text { otherwise }\end{cases}\tag{5} (M0)ij=⎩ ⎨ ⎧n21,m21,−mn1,xi,xj∈Dsxi,xj∈Dt otherwise (5)
( M c ) i j = { 1 n c 2 , x i , x j ∈ D s ( c ) 1 m c 2 , x i , x j ∈ D t ( c ) − 1 m c n c , { x i ∈ D s ( c ) , x j ∈ D t ( c ) x i ∈ D t ( c ) , x j ∈ D s ( c ) 0 , otherwise (6) \left(\mathbf{M}_{c}\right)_{i j}= \begin{cases}\frac{1}{n_{c}^{2}}, & \mathbf{x}_{i}, \mathbf{x}_{j} \in \mathcal{D}_{s}^{(c)} \\ \frac{1}{m_{c}^{2}}, & \mathbf{x}_{i}, \mathbf{x}_{j} \in \mathcal{D}_{t}^{(c)} \\ -\frac{1}{m_{c} n_{c}}, & \begin{cases}\mathbf{x}_{i} \in \mathcal{D}_{s}^{(c)}, \mathbf{x}_{j} \in \mathcal{D}_{t}^{(c)} \\ \mathbf{x}_{i} \in \mathcal{D}_{t}^{(c)}, \mathbf{x}_{j} \in \mathcal{D}_{s}^{(c)}\end{cases} \\ 0, & \text { otherwise }\end{cases}\tag{6} (Mc)ij=⎩ ⎨ ⎧nc21,mc21,−mcnc1,0,xi,xj∈Ds(c)xi,xj∈Dt(c){xi∈Ds(c),xj∈Dt(c)xi∈Dt(c),xj∈Ds(c) otherwise (6)
学习算法:记 Φ = ( ϕ 1 , ϕ 2 , ⋅ ⋅ ⋅ , ϕ d ) \Phi = (\phi_1, \phi_2,···,\phi_d) Φ=(ϕ1,ϕ2,⋅⋅⋅,ϕd)为拉格朗日乘子,则式(4)的拉格朗日函数为
L = tr ( A ⊤ X ( ( 1 − μ ) M 0 + μ ∑ c = 1 C M c ) X ⊤ A ) + λ ∥ A ∥ F 2 + tr ( ( I − A ⊤ X H X ⊤ A ) Φ ) (7) L=\operatorname{tr}\left(\mathbf{A}^{\top} \mathbf{X}\left((1-\mu) \mathbf{M}_{0}+\mu \sum_{c=1}^{C} \mathbf{M}_{c}\right) \mathbf{X}^{\top} \mathbf{A}\right)\\ +\lambda\|\mathbf{A}\|_{F}^{2}+\operatorname{tr}((\mathbf I-\mathbf{A}^{\top} \mathbf{X} \mathbf{H} \mathbf{X}^{\top} \mathbf{A})\Phi)\tag{7} L=tr(A⊤X((1−μ)M0+μc=1∑CMc)X⊤A)+λ∥A∥F2+tr((I−A⊤XHX⊤A)Φ)(7)
∂ L / ∂ A = 0 \partial L/\partial A = 0 ∂L/∂A=0,优化可以导出为广义特征分解问题
( X ( ( 1 − μ ) M 0 + μ ∑ c = 1 C M c ) X ⊤ + λ I ) A = A ⊤ X H X ⊤ A Φ (8) \left( \mathbf{X}\left((1-\mu) \mathbf{M}_{0}+\mu \sum_{c=1}^{C} \mathbf{M}_{c}\right) \mathbf{X}^{\top}+\lambda\mathbf I \right)\mathbf{A}=\mathbf{A}^{\top} \mathbf{X} \mathbf{H} \mathbf{X}^{\top} \mathbf{A}\Phi\tag{8} (X((1−μ)M0+μc=1∑CMc)X⊤+λI)A=A⊤XHX⊤AΦ(8)
最后,通过求解式(8),求出最优变换矩阵 A \mathbf A A的d最小特征向量。
估计 μ \mu μ:目前,我们通过在实验中搜索 μ \mu μ的值来评价 μ \mu μ的性能。对于实际应用,我们建议通过交叉验证得到最佳 μ \mu μ。
在本节中,我们提出了一个更稳健的类不平衡问题的条件分布近似:
∥ P ( y s ∣ x s ) − P ( y t ∣ x t ) ∥ H 2 = ∥ P ( y s ) P ( x s ) P ( x s ∣ y s ) − P ( y t ) P ( x t ) P ( x t ∣ y t ) ∥ H 2 = ∥ α s P ( x s ∣ y s ) − α t P ( x t ∣ y t ) ∥ H 2 (9) \begin{aligned} &\left\|P\left(y_{s} \mid \mathbf{x}_{s}\right)-P\left(y_{t} \mid \mathbf{x}_{t}\right)\right\|_{\mathcal{H}}^{2} \\ =&\left\|\frac{P\left(y_{s}\right)}{P\left(\mathbf{x}_{s}\right)} P\left(\mathbf{x}_{s} \mid y_{s}\right)-\frac{P\left(y_{t}\right)}{P\left(\mathbf{x}_{t}\right)} P\left(\mathbf{x}_{t} \mid y_{t}\right)\right\|_{\mathcal{H}}^{2} \\ =&\left\|\alpha_{s} P\left(\mathbf{x}_{s} \mid y_{s}\right)-\alpha_{t} P\left(\mathbf{x}_{t} \mid y_{t}\right)\right\|_{\mathcal{H}}^{2} \end{aligned}\tag{9} ==∥P(ys∣xs)−P(yt∣xt)∥H2∥ ∥P(xs)P(ys)P(xs∣ys)−P(xt)P(yt)P(xt∣yt)∥ ∥H2∥αsP(xs∣ys)−αtP(xt∣yt)∥H2(9)
在技术上,我们利用两个域的类先验来近似 α s \alpha_s αs和 α t \alpha_t αt。
由于BDA完全能够适应 P ( x s ) P (\mathbf x_s) P(xs)和 P ( x t ) P (\mathbf x_t) P(xt),我们在这一步不估计它们,并假设它们是不变的。
然后,我们为每个类构造一个权值矩阵 W c \mathbf W_c Wc:
( W c ) i j = { P ( y s ( c ) ) n c 2 , x i , x j ∈ D s ( c ) P ( y t ( c ) ) m c 2 , x i , x j ∈ D t ( c ) − P ( y s ( c ) ) P ( y t ( c ) ) m c n c , { x i ∈ D s ( c ) , x j ∈ D t ( c ) x i ∈ D t ( c ) , x j ∈ D s ( c ) 0 , otherwise (10) \left(\mathbf{W}_{c}\right)_{i j}= \begin{cases}\frac{P\left(y_{s}^{(c)}\right)}{n_{c}^{2}}, & \mathbf{x}_{i}, \mathbf{x}_{j} \in \mathcal{D}_{s}^{(c)} \\ \frac{P\left(y_{t}^{(c)}\right)}{m_{c}^{2}}, & \mathbf{x}_{i}, \mathbf{x}_{j} \in \mathcal{D}_{t}^{(c)} \\ -\frac{\sqrt{P\left(y_{s}^{(c)}\right) P\left(y_{t}^{(c)}\right)}}{m_{c} n_{c}}, & \left\{\begin{array}{l} \mathbf{x}_{i} \in \mathcal{D}_{s}^{(c)}, \mathbf{x}_{j} \in \mathcal{D}_{t}^{(c)} \\ \mathbf{x}_{i} \in \mathcal{D}_{t}^{(c)}, \mathbf{x}_{j} \in \mathcal{D}_{s}^{(c)} \end{array}\right. \\ 0, & \text { otherwise }\end{cases}\tag{10} (Wc)ij=⎩ ⎨ ⎧nc2P(ys(c)),mc2P(yt(c)),−mcncP(ys(c))P(yt(c)),0,xi,xj∈Ds(c)xi,xj∈Dt(c){xi∈Ds(c),xj∈Dt(c)xi∈Dt(c),xj∈Ds(c) otherwise (10)
其中 P ( y s ( c ) ) P\left(y^{(c)}_s\right) P(ys(c))和 P ( y t ( c ) ) P\left(y^{(c)}_t\right) P(yt(c))分别表示源域和目标域上c类的先验类。
将Eq.(10)嵌入到BDA中,得到W-BDA的轨迹优化问题:
min tr ( A ⊤ X ( ( 1 − μ ) M 0 + μ ∑ c = 1 C W c ) X ⊤ A ) + λ ∥ A ∥ F 2 s . t . A ⊤ X H X ⊤ A = I , 0 ≤ μ ≤ 1 (11) \min \operatorname{tr}\left(\mathbf{A}^{\top} \mathbf{X}\left((1-\mu) \mathbf{M}_{0}+\mu \sum_{c=1}^{C} \mathbf{W}_{c}\right) \mathbf{X}^{\top} \mathbf{A}\right)+\lambda\|\mathbf{A}\|_{F}^{2}\\ s.t. \mathbf{A}^{\top} \mathbf{X} \mathbf{H} \mathbf{X}^{\top} \mathbf{A}=\mathbf{I}, \quad 0 \leq \mu \leq 1\tag{11} mintr(A⊤X((1−μ)M0+μc=1∑CWc)X⊤A)+λ∥A∥F2s.t.A⊤XHX⊤A=I,0≤μ≤1(11)
**注:**BDA的式(5)与W-BDA的式(10)在精神上非常相似。它们的不同之处在于:
**核化:**当应用于非线性问题时,我们可以使用一个核映射 ψ : x ↦ ψ ( x ) \psi: \mathbf x \mapsto\psi(\mathbf x) ψ:x↦ψ(x)和一个核矩阵 K = ψ ( x ) T ψ ( x ) \mathbf K = \psi(\mathbf x)^T\psi(\mathbf x) K=ψ(x)Tψ(x)。核矩阵 K ∈ R ( n + m ) × ( n + m ) \mathbf K \in\mathbb R^{(n+m)×(n+m)} K∈R(n+m)×(n+m)可以用线性核或RBF核构造。
综上所述,算法1详细介绍了BDA和W-BDA方法。
我们采用了5个广泛使用的数据集:USPS + MNIST, COIL20和Office + Caltech。表1显示了数据集的详细信息。
我们选择了六种最先进的比较方法:
在这些方法中,1NN和PCA是传统的学习方法,而GFK、TCA、JDA和TSL是最先进的迁移学习方法。
采用PCA、TCA、JDA、TSL和BDA进行降维,再采用1NN进行降维。
对于GFK,在得到测地线流核后,应用1NN。对于BDA和W-BDA, μ \mu μ在 { 0 , 0.1 , ⋅ ⋅ ⋅ , 0.9 , 1.0 } \{0,0.1,···,0.9,1.0\} {0,0.1,⋅⋅⋅,0.9,1.0}中搜索。
由于BDA在较宽的参数值范围内都能达到稳定的性能,因此在对比研究中,
我们设 d = 100 d = 100 d=100;
对于MNIST + USPS / Office + Caltech数据集 λ = 0.1 \lambda = 0.1 λ=0.1对于COIL20数据集 λ = 0.01 \lambda = 0.01 λ=0.01。
对于基于核的方法,我们使用线性核。
JDA和TCA的迭代次数设为 T = 10 T = 10 T=10。
我们在16个跨领域学习任务上测试了BDA和其他比较方法的性能。结果如表2所示,基于表2,我们可以得出如下观察结果。
通过与TCA和JDA两种分布适应方法的比较,进一步验证了BDA的有效性。具体地说,我们通过Eq.(4)计算MMD距离来研究它们的性能。
图1(a)和图1(b)分别表示了TCA、JDA和BDA随迭代次数增加的MMD距离和精度。根据结果,我们可以观察到:
我们评估了平衡因子 μ \mu μ的有效性。我们在一些任务上运行 μ ∈ { 0 , 0.1 , ⋅ ⋅ ⋅ , 1.0 } \mu\in\{0,0.1,···,1.0\} μ∈{0,0.1,⋅⋅⋅,1.0}的BDA,并与最佳基线方法进行性能比较。结果如图2所示。
这表明在跨域学习问题中, μ \mu μ对于平衡边缘分布和条件分布是非常重要的。因此,BDA更有能力取得良好的业绩。
我们选择一些类分布高度不平衡的任务,比较W-BDA与BDA和JDA的性能。表格III展示了6个任务的分类精度。注意,为了进行比较,任务1 ~ 4上的类相当不平衡,而任务5 ~ 6上的类相当平衡。
此外,BDA和W-BDA还有两个参数:特征维数 d d d和正则化参数 λ \lambda λ。由于页面限制,它们的敏感性评估被省略。在实际实验中,BDA和W-BDA对这两个参数的鲁棒性较好
平衡域间的概率分布和类分布是迁移学习中的两个重要问题。
本文提出均衡分布适应(BDA),自适应地权衡边缘分布适应和条件分布适应的重要性。
因此,它可以显著提高迁移学习的性能。此外,我们考虑通过提出加权BDA (W-BDA)来解决迁移学习的类不平衡问题。
在5个图像数据集上的广泛实验表明,我们的方法优于几种最先进的方法。
在未来,我们将继续在这两个方面进行探索:通过制定更多的策略来利用分布和处理类失衡问题。
Balanced Distribution Adaptation for Transfer Learning