本文解读的是迁移学习的第一篇理论性的文章:《Analysis of Representation for Domain Adaptation》。笔者水平有限,对于解读有错误或不合理的地方还请批评指正!
一般的机器学习都假设训练集和测试集来自同一分布,但实际上在大多数情况下,我们有带标签的源域数据集(目标域不带标签,或者很少部分带标签),希望能训练一个分类器在一个分布不同的目标域上也能取得很好的泛化能力,这就是domain adaptation领域自适应(以下简称DA)。在什么情况下我们能调整一个在源域上训练的分类器,使其能用在目标域上?从直觉上想,一个好的特征表示是关键因素。这篇文献从理论上形式化了这种直觉,给出了domain adaptation的泛化边界,用到了PAC计算学习理论。这篇文献关注的是目标域无标签的情况。
χ \chi χ:样本实例集合
Z \mathcal Z Z:特征空间
D \mathcal D D:在 χ \chi χ上的一个分布
f f f: χ → [ 0 , 1 ] \chi \to [0, 1] χ→[0,1], f ( x ) f(x) f(x)代表 x x x的标签是1的概率
R \mathcal R R:表示函数,将实例映射到特征 R : X → Z \mathcal R: \mathcal X \to \mathcal Z R:X→Z
D S {\mathcal D}_S DS:源域样本分布
D ~ S {\tilde{\mathcal D}}_S D~S:源域样本在特征空间 Z \mathcal Z Z上的感应(induced)分布
D T {\mathcal D}_T DT:目标域样本分布
D ~ T {\tilde{\mathcal D}}_T D~T:目标域样本在特征空间 Z \mathcal Z Z上的感应分布
h h h:预测函数,从特征空间 Z \mathcal Z Z到 [ 0 , 1 ] [0, 1] [0,1]
ϵ S ( h ) \epsilon_S(h) ϵS(h): h h h关于 D T \mathcal D_T DT的期望误差
s u p {\rm sup} sup:上确界
i n f {\rm inf} inf:下确界
一个学习问题被两个参数所确定:在 χ \chi χ上的一个分布 D \mathcal D D,和目标函数(可能是随机的) f : X → [ 0 , 1 ] f: {\mathcal X} \to [0, 1] f:X→[0,1](本文考虑二分类问题)。表示函数将样本实例映射到特征空间, R : X → Z \mathcal R: \mathcal X \to \mathcal Z R:X→Z。表示函数指示了在 Z \mathcal Z Z上的一个分布,从 Z \mathcal Z Z到 [ 0 , 1 ] [0, 1] [0,1]的目标函数 f ~ ( z ) \tilde{f}(z) f~(z)如下所示:
P r D ~ [ B ] = P r D [ R − 1 ( B ) ] Pr_{\tilde{\mathcal D}}[B]=Pr_ {\mathcal D} [{\mathcal R ^ {-1}} (B)] PrD~[B]=PrD[R−1(B)]
f ~ ( z ) = E D [ f ( x ) ∣ R ( x ) = z ] \tilde{f}(z)=E_{\mathcal D}[f(x)|{\mathcal R}(x)=z] f~(z)=ED[f(x)∣R(x)=z]
对于任意的 A ⊆ Z A\subseteq Z A⊆Z,使得 R − 1 ( B ) {\mathcal R ^ {-1}} (B) R−1(B)是 D \mathcal D D可测量的。也就是说,在分布 D ~ \tilde{\mathcal D} D~下的事件 B B B的概率,是在分布 D \mathcal D D下, B B B在表示函数 R \mathcal R R的逆下的概率。 z z z的标签是1的概率,也就是 f ~ ( z ) \tilde{f}(z) f~(z)的值,是用 z z z表示的实例 x x x的概率的平均值(期望)。注意,即使 f ( x ) f(x) f(x)不是随机函数, f ~ ( z ) \tilde{f}(z) f~(z)也可能是随机函数,这是因为表示函数 R \mathcal R R可以将不同的被 f f f标记实例映射到同一个特征表示。
总结一下,这里的学习问题是这样定义的:有个固定的但未知的分布 D \mathcal D D和目标函数 f f f,我们选择一个合适的表示函数 R \mathcal R R和合适的假设类 H ⊆ { g : Z → { 0 , 1 } } {\mathcal H} \subseteq \lbrace g: {\mathcal Z}\to \lbrace0, 1\rbrace \rbrace H⊆{g:Z→{0,1}},去估计标记函数 f f f。
“域”的含义是实例集 X \mathcal X X的分布 D \mathcal D D。我们假设有两个域,源域(source domain)和目标域(target domain)。 D S {\mathcal D}_S DS是源域样本分布, D ~ S {\tilde{\mathcal D}}_S D~S是源域样本在特征空间 Z \mathcal Z Z上的感应分布。同样的含义,我们同 D T {\mathcal D}_T DT和 D ~ T {\tilde{\mathcal D}}_T D~T表示目标域。 f : X → [ 0 , 1 ] f: {\mathcal X} \to [0, 1] f:X→[0,1]是标记规则函数,在源域和目标域上都适用, f ~ \tilde{\mathcal f} f~是 f f f在 R \mathcal R R下的感应。
预测函数 h h h将特征空间 Z \mathcal Z Z映射到 [ 0 , 1 ] [0, 1] [0,1]。我们用 ϵ S ( h ) \epsilon_S(h) ϵS(h)表示 h h h和 f f f不一致的概率:
ϵ S ( h ) = E z ∼ D ~ S [ E y ∼ f ~ ( z ) [ y ≠ h ( z ) ] ] = E z ∼ D ~ S ∣ f ~ ( z ) − h ( z ) ∣ \begin{aligned} \epsilon_{S}(h) &=\mathrm{E}_{\mathbf{z} \sim \tilde{\mathcal{D}}_{S}}\left[\mathrm{E}_{y \sim \tilde{f}(\mathbf{z})}[y \neq h(\mathbf{z})]\right] \\ &=\mathrm{E}_{\mathbf{z} \sim \tilde{\mathcal{D}}_{S}}|\tilde{f}(\mathbf{z})-h(\mathbf{z})| \end{aligned} ϵS(h)=Ez∼D~S[Ey∼f~(z)[y̸=h(z)]]=Ez∼D~S∣f~(z)−h(z)∣
相似地,我们用 ϵ T ( h ) \epsilon_T(h) ϵT(h)表示 h h h相对于 D T {\mathcal D}_T DT的期望误差。
DA的各种方法适用带标签的源域数据训练分类器,它会在目标域数据集上有泛化误差。这个泛化误差包括两项:
文中说一个自然的想法是使用 L 1 L_1 L1或者变分距离来表示这种差异性,但是这种变分距离在实数域分布之间无法通过有限的样本计算得到。作者在这里采用了 A \mathcal A A-距离来表示这种差异性。给定一个域 X \mathcal X X和一个 X \mathcal X X上的子集 A \mathcal A A, D \mathcal D D和 D ′ {\mathcal D}^{\prime} D′是在 X \mathcal X X上的概率分布,这两个分布的 A \mathcal A A-距离定义为:
d A ( D , D ′ ) = 2 sup A ∈ A ∣ Pr D [ A ] − Pr D ′ [ A ] ∣ d_{\mathcal{A}}\left(\mathcal{D}, \mathcal{D}^{\prime}\right)=2 \sup _{A \in \mathcal{A}}\left|\operatorname{Pr}_{\mathcal{D}}[A]-\operatorname{Pr}_{\mathcal{D}^{\prime}}[A]\right| dA(D,D′)=2A∈Asup∣PrD[A]−PrD′[A]∣
为了使用 A \mathcal A A-距离,我们需要限定 f f f的复杂度。如果说下式成立,那么我们说 f ~ : Z → [ 0 , 1 ] {\tilde f:{\mathcal Z} \to [0, 1]} f~:Z→[0,1]关于 D ~ S {\tilde {\mathcal D}_S} D~S和 D ~ T {\tilde {\mathcal D}_T} D~T是 λ \lambda λ-接近于 H \mathcal H H的:
i n f h ∈ H [ ϵ S ( h ) + ϵ T ( h ) ] ≤ λ \mathop {\rm inf}_{h \in {\mathcal H}}[\epsilon_S(h)+\epsilon_T(h)] \leq \lambda infh∈H[ϵS(h)+ϵT(h)]≤λ
R {\mathcal R} R是从 X \mathcal X X到 Z \mathcal Z Z的表示函数, H \mathcal H H是VC维为 d d d的假设类空间,如果 m m m条随机样本是从应用了 R {\mathcal R} R函数的 D S {\mathcal D}_S DS分布上独立同分布地采样得到,其标签由 f f f标记,那么对于每个 h ∈ H h \in {\mathcal H} h∈H,下式至少以 1 − δ 1-\delta 1−δ的概率成立:
ϵ T ( h ) ≤ ϵ ^ S ( h ) + 4 m ( d log 2 e m d + log 4 δ ) + d H ( D ~ S , D ~ T ) + λ \epsilon_{T}(h) \leq \hat{\epsilon}_{S}(h)+\sqrt{\frac{4}{m}\left(d \log \frac{2 e m}{d}+\log \frac{4}{\delta}\right)}+d_{\mathcal{H}}\left(\tilde{\mathcal{D}}_{S}, \tilde{\mathcal{D}}_{T}\right)+\lambda ϵT(h)≤ϵ^S(h)+m4(dlogd2em+logδ4)+dH(D~S,D~T)+λ
边界取决于 d H ( D ~ S , D ~ T ) d_{\mathcal H}({\tilde {\mathcal D}_S},{\tilde {\mathcal D}_T}) dH(D~S,D~T),这里选择 A \mathcal A A-距离,因为我们可以从有限个样本中估计它。
R {\mathcal R} R是从 X \mathcal X X到 Z \mathcal Z Z的表示函数, H \mathcal H H是VC维为 d d d的假设类空间,如果 m m m条随机样本是从应用了 R {\mathcal R} R函数的 D S {\mathcal D}_S DS分布上独立同分布地采样得到,其标签由 f f f标记;并且 U ~ S {\tilde {\mathcal U}_S} U~S和 U ~ T {\tilde {\mathcal U}_T} U~T是从 D ~ S {\tilde {\mathcal D}_S} D~S和 D ~ T {\tilde {\mathcal D}_T} D~T上采样得到的无标签样本,都分别有 m ′ m^{\prime} m′个,那么对于每个 h ∈ H h \in {\mathcal H} h∈H,下式至少以 1 − δ 1-\delta 1−δ的概率成立:
ϵ T ( h ) ≤ ϵ ^ S ( h ) + 4 m ( d log 2 e m d + log 4 δ ) + λ + d H ( U ~ S , U ~ T ) + 4 d log ( 2 m ′ ) + log ( 4 δ ) m ′ \epsilon_{T}(h) \leq \hat{\epsilon}_{S}(h)+\frac{4}{m} \sqrt{\left(d \log \frac{2 e m}{d}+\log \frac{4}{\delta}\right)}+\lambda+d_{\mathcal{H}}\left(\tilde{\mathcal{U}}_{S}, \tilde{\mathcal{U}}_{T}\right)+4 \sqrt{\frac{d \log \left(2 m^{\prime}\right)+\log \left(\frac{4}{\delta}\right)}{m^{\prime}}} ϵT(h)≤ϵ^S(h)+m4(dlogd2em+logδ4)+λ+dH(U~S,U~T)+4m′dlog(2m′)+log(δ4)
之前我们假设 λ \lambda λ对于合理的 R \mathcal R R是足够小的,所以上式中第一项和第四项是主要的,表示函数 R \mathcal R R直接影响了他们。第一项是经验训练误差,第四项是域之间的 A \mathcal A A-距离。我们可以看出一个好的表示函数 R \mathcal R R对于降低训练误差和 A \mathcal A A-距离是至关重要的。
前面说明了 A \mathcal A A-距离是可以通过有限多样本估计出来的。而且 A \mathcal A A-距离和学习一个分类器 h h h紧密相关,这个分类器是区分样本来自于哪个分布。假设我们有两个分别从 D ~ S {\tilde {\mathcal D}_S} D~S和 D ~ T {\tilde {\mathcal D}_T} D~T上采样得到的样本集 U ~ S {\tilde {\mathcal U}_S} U~S和 U ~ T {\tilde {\mathcal U}_T} U~T,它们分别有 m ~ ′ {\tilde m^{\prime}} m~′个,分类器 h h h就是要将 U ~ S {\tilde {\mathcal U}_S} U~S和 U ~ T {\tilde {\mathcal U}_T} U~T区别开。 h h h的误差为:
err ( h ) = 1 2 m ′ ∑ i = 1 2 m ′ ∣ h ( z i ) − I z i ∈ U ~ S ∣ \operatorname{err}(\mathrm{h})=\frac{1}{2 \mathrm{m}^{\prime}} \sum_{\mathrm{i}=1}^{2 \mathrm{m}^{\prime}}\left|\mathrm{h}\left(\mathbf{z}_{\mathrm{i}}\right)-\mathrm{I}_{\mathrm{z}_{\mathrm{i}} \in \tilde{\mathcal{U}}_{\mathrm{S}}}\right| err(h)=2m′1i=1∑2m′∣∣h(zi)−Izi∈U~S∣∣
是在 U ~ S {\tilde {\mathcal U}_S} U~S上的指示函数。不幸的是,即使是估计任意分布的最优超平面分类器的误差,也是NP难问题。而我们选择通过最小化误差的凸上限来估计最优超平面分类器,则 A \mathcal A A-距离通过下式计算:
d A ( U ~ S , U ~ T ) = 2 ( 1 − 2 min h ′ ∈ H err ( h ′ ) ) d_{A}\left(\tilde{\mathcal{U}}_{S}, \tilde{\mathcal{U}}_{T}\right)=2\left(1-2 \min _{h^{\prime} \in \mathcal{H}} \operatorname{err}\left(\mathrm{h}^{\prime}\right)\right) dA(U~S,U~T)=2(1−2h′∈Hminerr(h′))
值得注意的是,这并没有为我们提供目标域错误的有效上限,但它仍然为我们提供了有关领域自适应表示的有用方面。
这部分作者使用的数据集是语音标记数据集,从金融领域(source domain)到生物领域(target domain)。先选择表示函数 R \mathcal R R,再用 R \mathcal R R得到表示训练一个分类器。本文使用的都是线性映射,包括identity映射、随机映射和SCL(structural correspondence learning)。原始数据的维数为 d ′ d^{\prime} d′,这里将其映射至 d d d维空间。
随机映射使用随机映射矩阵 P ∈ R d × d ′ P \in {\Bbb R}^{d \times d^{\prime}} P∈Rd×d′, P P P从 N ( 0 , 1 ) {\mathcal N}(0, 1) N(0,1)中独立同分布地采样得到。Johnson-Lindenstrauss定理保证了只要 d d d足够大,随机映射可以很好地接近原始高维空间里的距离。SCL时一种启发式DA方法,首先选择一个在所有域中出现频率最高的“中心”特征,然后其他特征用这些“特征”表示,最后使用共现计数矩阵的低秩近似作为投影矩阵P。
实验结果如下两个图所示:
图1(a)是使用SCL后两个域之间的可视化,图1(a)是使用随机映射后两个域的可视化,使用近似线性鉴别器来鉴别不同的域。图1(b)是使用SCL后不同类别的可视化。对比图1(a)和图1(b),关于域的分类器表现得很差,而类别分类器表现得比较好。域分类器表现得差即误差 e r r ( h ) err(h) err(h)很大,根据前文section3 A \mathcal A A-距离的计算公式,那么 A \mathcal A A-距离很小。类别分类器的表现得好,经验分类误差比较小。这说明SCL找到了一个比较好的表示使得经验分类误差和 A \mathcal A A-距离都很小。从图2(b)看,identity映射的类别经验分类误差 ϵ ^ S ( h ) \hat{\epsilon}_{S}(h) ϵ^S(h)很小(在带标签的训练数据上的经验误差,也就是源域,这里使用Huber loss作为损失,损失越小经验误差越小),但 A \mathcal A A-距离很大,导致目标域的分类误差比较大(即表格中的Error列)。随机映射的 A \mathcal A A-距离虽然很小,但经验误差很大,导致目标域分类误差很大。只有SCL的经验误差和 A \mathcal A A-距离都很小,最后目标域分类误差也是其中最小的。这些结果也正验证了Theorem 2,Theorem 2说 ϵ T ( h ) \epsilon_{T}(h) ϵT(h)取决于公式中的第一项和第四项,即经验训练误差和域之间的 A \mathcal A A-距离,只有两者皆小才能达到较低的目标域分类误差。而SCL在两者都得到了较小的值,所以它的目标域分类误差是最小的。
更多文章请浏览作者个人网站5663015.github.io
添加作者微信,一起交流学习,微信号:wuan3076
您的打赏是我进步的动力~