定位:对2021年纽约大学Martin Arjovsky的PhD论文进行提炼,是一篇阅读笔记;
参考文献:Out of Distribution Generalization in Machine Learning
如果数据的假设太强,就会不适应问题的结构,哪怕学习算法再好,模型的泛化性能也不强;
如果数据的假设太弱,模型泛化能力的导向性就不强,很难有什么实际的提升。
如果不对数据做任何假设,就没大意义了,想提高泛化性就不断加大训练数据的量到巨量、海量就是了,毕竟天下没有免费的午餐。
关注方法对数据的假设,哪些假设在哪些任务是有效的,在哪些任务是无效的?
符号 | 术语含义 |
---|---|
X , Y \mathcal{X,Y} X,Y | 样本空间/输入空间 (input space) 、标记空间/输出空间(label space) |
Y ^ \mathcal{\hat Y} Y^ | 预测空间 (predicted label space) |
ℓ : Y ^ × Y → R + \ell:\mathcal{\hat Y \times Y}\rightarrow \mathbb R_{+} ℓ:Y^×Y→R+ | 损失函数(loss function) |
f : X → Y ^ f:\mathcal{X\rightarrow \hat Y} f:X→Y^ | 假设空间/预测函数 (hypothesis/predictor) |
{ P e } e ∈ E ∈ X × Y \{\mathbb P^e\}_{e\in \mathcal E}\in \mathcal{X\times Y} {Pe}e∈E∈X×Y | 在input space与label space联合空间上,受环境 e ∈ E e\in \mathcal E e∈E控制的概率分布 |
( X e , Y e ) ∼ P e (\mathcal{X^e,Y^e})\sim \mathbb P^e (Xe,Ye)∼Pe | 在具体环境 e e e下,样本与label服从概率分布 P e \mathbb P^e Pe |
R e ( f ) : = E ( X e , Y e ) ∼ P e [ ℓ ( f ( X e , Y e ) ] ] R^e(f):=\mathbb E_{(X^e,Y^e)\sim \mathbb P^e}[\ell(f(X^e,Y^e)]] Re(f):=E(Xe,Ye)∼Pe[ℓ(f(Xe,Ye)]] | 衡量环境 e e e下假设或预测器 f f f的经验风险 |
Φ : X → H ^ \Phi:\mathcal {X\rightarrow \hat H} Φ:X→H^ | 特征提取器(featurizer), Φ \Phi Φ将样本空间映射到特征空间 |
w : H ^ → Y w:\mathcal{\hat H\rightarrow Y} w:H^→Y | 分类器(classifier), w w w将特征空间分类到标记空间 |
基础概念的理解特别重要。采用业务流程加深理解记忆:
X X X与 Y Y Y之间的相关性(correlation),既有linear dependence又有non-linear dependence
重点来了:
因此,我们假设数据来源于一个受限分布 P e \mathbb P^e Pe,受限分布来源于一个meta-distribution e ∼ E e\sim \mathcal E e∼E。
而我们训练的数据,可能来自多个 P e \mathbb P^e Pe,这多个 e e e的集合记为 E t r a i n \mathcal E_{train} Etrain;而部署上线的系统或分类器 w w w,面对的数据是大概率来自于所有环境 e e e产生的,记为 E a l l \mathcal E_{all} Eall; 因此,得从 E t r a i n \mathcal E_{train} Etrain得到的数据中,尽量寻找到尽可能多的invariance,并能外推到 E a l l \mathcal E_{all} Eall上,即泛化能力。
通篇有两个关键问题得铭记在心:
问题一:如何从 E t r a i n \mathcal E_{train} Etrain从抽出invariance?(IRM–>IRMv1–>Representation function)
问题二:什么样的假设与理论可以保证invariance可以generalize到 E a l l \mathcal E_{all} Eall?
这四个例子,主要目的是帮助理解X与Y之间的correlation究竟是什么?会遇到什么问题?
问题模式 X 1 → Y → X 2 X_1\rightarrow Y\rightarrow X_2 X1→Y→X2
比如 X e = ( X 1 e , X 2 e ) X^e=(X_1^e,X_2^e) Xe=(X1e,X2e)代表 e e e地理区域的住房需求、人口素质水平的两维特征,而 Y e Y^e Ye代表房价。如果数据的生成过程如下: X 1 → Y → X 2 X_1\rightarrow Y\rightarrow X_2 X1→Y→X2
X 1 e ← Gaussian ( 0 , 1 ) Y e ← X 1 e + Gaussian ( 0 , 1 ) X 2 e ← β ( e ) Y e + Gaussian ( 0 , 1 ) \begin{array}{l} X_{1}^{e} \leftarrow \operatorname{Gaussian}(0,1) \\ Y^{e} \leftarrow X_{1}^{e}+\operatorname{Gaussian}(0,1) \\ X_{2}^{e} \leftarrow \beta(e) Y^{e}+\operatorname{Gaussian}(0,1) \end{array} X1e←Gaussian(0,1)Ye←X1e+Gaussian(0,1)X2e←β(e)Ye+Gaussian(0,1)
住房需求 X 1 X_1 X1通常决定房价 Y Y Y,而房价高低 Y Y Y又在某种程度上影响着人口素质水平 X 2 X_2 X2,不同区域 e e e的影响程度由 β ( e ) \beta(e) β(e)控制。所以在北上广深这些一线城市 e e e, β ( e ) \beta(e) β(e)可能是正的,房价越高意味着人口素质水平越高;在三四线城市这些 e ′ , β ( e ′ ) e',\beta(e') e′,β(e′)可能是负的,房价越高意味着人口素质水平越低;
通常来说,做这个任务,一般采用Empirical Risk Minimization来处理观察到的数据集 X , Y X,Y X,Y,ERM核心假设:训练样本点是i.i.d且我们对问题的meta-distribution一无所知。但如果数据集都来自于北上广深 E t r a i n \mathcal E_{train} Etrain,采用ERM学习一个预测器 f f f,你觉得它们可以“泛化”到三四线城市 E a l l \mathcal E_{all} Eall吗?
为什么?因为我们只看到数据,看不到数据生成过程,还做了一个“极其省力”的ERM假设。所以,为了提高其“外推”能力,必须得从数据中学习meta-distribution的结构,以及更换ERM这个核心假设。
术语一点:真实的关系是 Y ^ = f ( X ) = α 1 X 1 \hat Y =f(X)=\alpha_1X_1 Y^=f(X)=α1X1 ,省力用ERM假设,学习到的 f f f一般是 Y ^ = f ( X ) = α 1 X 1 + α 2 X 2 \hat Y=f(X) = \alpha_1X_1 + \alpha_2X_2 Y^=f(X)=α1X1+α2X2,因此这个例子的关注点是Spurious Correlation,这里的ERM假设太强,假设了训练与测试环境来自同一个distribution,而meta-distribution结构上由一个自由变量 β ( e ) \beta(e) β(e)控制。
问题模式: ( X 1 , X 2 ) → Y (X_1,X_2)\rightarrow Y (X1,X2)→Y
简要描述一下:从一个数据集的图片中识别牛(cow)的任务,这数据集主要从两个环境收集,比如英国和印度,比例分别为80%和20%。然后丢进一个深度网络一把梭哈,训练准确率99%,测试准确率95%,发现还不错。部署上线,测试准确率惨不忍睹,因为英国的牛大部分在草原(grass)上,印度的牛大部分在沙漠(dessert)上,所以网络学会的是分辨草原和沙漠,而不是牛(cow)本身。( X 1 X_1 X1指图像中的context, X 2 X_2 X2指图像中的landscapes)
这个问题关注点是Background Bias,样本 X X X是一张图片,维度是pixels,而控制环境 e e e的是某些离散Meta-feature(浅层的feature比如草原和沙漠的Background bias,还可以是天空与房屋,深层的feature比如是地理位置,毕竟不同区域的景观不同),人为根本没法仔细区分。
术语一点:cv任务中,input space抽象为landscapes (也可以说styles) 和 contexts,label space抽象为problem of interest (识别牛最关键的假设为轮廓shapes)。但因为各种styles的比例不均,仅仅通过ERM假设,最大似然学习准则,Cross-Entropy的loss是很难分清图像中哪些是对应problem of interest的contexts,哪些是干扰相关的因素。这个关于环境的Meta-distribution( E \mathcal E E)结构可能非常复杂,meta-feature可能是不同地理区域、不同风俗习惯等信息聚合体,但我们却只关心cow shapes,太难了= =。
这个问题的模式是 X → Y X\rightarrow Y X→Y,特别之处是 E a l l \mathcal E_{all} Eall在 E t r a i n \mathcal E_{train} Etrain的邻域。
这个Examples对应的是对抗样本鲁棒性的任务:
对于在 E t r a i n \mathcal E_{train} Etrain训练好的 f : X → Y f:X\rightarrow Y f:X→Y,从 E t r a i n \mathcal E_{train} Etrain中取一个 X X X,基于某种微小的扰动 T T T,使得对抗样本 T ( x ) T(x) T(x)能骗过 f f f。因此,可理解成,对抗攻击的过程就是在 P t r a i n \mathbb P^{train} Ptrain附近测试的过程,即 E a l l \mathcal E_{all} Eall。
这个问题关注点是Geometric Space,即测试的空间是和训练环境组成的空间是邻近的。但仍然用传统的ERM核心假设,即训练环境与测试环境独立同分布的话,这样就没有利用上这个Geometric Space的信息了。
为什么会出现这些Examples???因为我们为了省力呀,直接最小化经验风险损失ERM,当训练样本和测试样本真的是来自一个环境的独立同分布可还行,但如果不是i.i.d,而是多个环境的样本那就不行,所以才出现这些问题!为了鲁棒性,为了泛化性,我们不能再偷懒了。
上面对三个问题模式泛泛而谈,下面就开始公式化,严肃点了。( f f f还记得是predictor吧)
Ideal Goal : R E R M ( f ) = ∑ e ∈ E t r a i n R e ( f ) OOD Goal : R O O D ( f ) = max e ∈ E a l l R e ( f ) \begin{aligned} \text{Ideal Goal :}&\quad \mathcal R^{ERM}(f)=\sum_{e\in\mathcal E_{train}}R^e(f)\\ \text{OOD Goal :}&\quad \mathcal R^{OOD}(f) = \max_{e\in \mathcal E_{all}}R^e(f) \end{aligned} Ideal Goal :OOD Goal :RERM(f)=e∈Etrain∑Re(f)ROOD(f)=e∈EallmaxRe(f)
Ideal Goal是我们最常用的核心假设,对训练集中包含的“环境“通通一视同仁,这样容易造成样本多的环境过拟合,样本少的环境欠拟合,训练准确率很高,但泛化性表现一般。
OOD Goal是外推问题最理想的目标,对所有环境中性能最差 R e ( f ) R^e(f) Re(f)的进行优化,从而泛化性得以保证。(可惜,实际计算都是算不了的,环境e的分布都不知道,鬼知道哪个环境最差呀。)下面列举一些OOD理想目标的常见折中、妥协的优化方法
Goal : R O O D ( f ) = max e ∈ E a l l R e ( f ) Method : R r o b ( f ) = max e ∈ E t r a i n R e ( f ) − r e where r e = V [ Y e ] Equiv : R r o b ( f ) = ∑ e ∈ E t r a i n λ e R e ( f ) \begin{aligned} \text{Goal :}&\quad \mathcal R^{OOD}(f) = \max_{e\in \mathcal E_{all}}R^e(f)\\ \text{Method :}&\quad\mathcal R^{rob}(f) = \max_{e\in \mathcal E_{train}} R^e(f)-r_e\quad\text{where } r_e=\mathcal V[Y^e]\\ \text{Equiv :}&\quad\mathcal R^{rob}(f) = \sum_{e\in \mathcal E_{train}}\lambda_eR^e(f) \end{aligned} Goal :Method :Equiv :ROOD(f)=e∈EallmaxRe(f)Rrob(f)=e∈EtrainmaxRe(f)−rewhere re=V[Ye]Rrob(f)=e∈Etrain∑λeRe(f)
Robust Optimization Method 的妥协点:
然后可以说:在训练的时候引入了robustness ( r e ) (r_e) (re),但并不保证测试的时候有robustness;
理论证明,在一定条件下,这种robust optimization method相当于是对环境加权平均的经验最小化,即:
∑ e ∈ E t r a i n λ e R e ( f ) ≈ max e ∈ E t r a i n R e ( f ) − r e \sum_{e\in \mathcal E_{train}}\lambda_e\mathcal R^e(f)\approx \max_{e\in \mathcal E_{train}} R^e(f)-r_e e∈Etrain∑λeRe(f)≈e∈EtrainmaxRe(f)−re
这相当于说,希望predictor f f f对不同训练环境 e e e给予不同的注意力关注。(日常吐槽,前提条件,你得知道具体环境究竟是啥才行呀)
这能解决Example2的问题(因为注意力机制,所以相关性可以被衡量),然而这没办法发现Example1中的Spurious Correlation 即分不清 cause & effect(因为训练集中的 β ( e ) > 0 \beta(e)>0 β(e)>0,无法泛化到 β ( e ) < 0 \beta(e)<0 β(e)<0的测试环境)
这里的Distance Measure主要指Wasserstein Distance和f-divergence
E t r a i n = { P t r a i n } , E a l l = { P : D f ( P t r a i n , P ) ≤ ϵ or W ( P t r a i n , P t e s t ) ≤ ϵ } \mathcal E_{train}=\{P^{train}\}, \mathcal E_{all}=\{P:D_f(P^{train},P)\le \epsilon \text{ or } W(P^{train},P^{test})\le \epsilon\} Etrain={Ptrain},Eall={P:Df(Ptrain,P)≤ϵ or W(Ptrain,Ptest)≤ϵ}
这个解决方法,主要为Example3的adversarial samples量身定制,利用了训练与测试分布之间的结构Geometric Space核心假设:因为 ∣ ∣ T ( x ) − x ∣ ∣ ≤ ϵ ||T(x)-x||\le \epsilon ∣∣T(x)−x∣∣≤ϵ,所以 W ( P t r a i n , P t e s t ) ≤ ϵ W(P^{train},P^{test})\le \epsilon W(Ptrain,Ptest)≤ϵ。
直观地说,是因为adversarial examples来源的测试集环境,与训练集比较相似,是在训练集上的样本进行微小的扰动 T ( x ) T(x) T(x)进行攻击的,所以符合训练集环境与测试集环境在基于Distance Measure的几何空间上被约束在某个范围内了。
这样的假设能解决 Example 2.3,但仍然无法解决Example2.1和Example2.2(Example1要区分cause&effect很显然不行,仔细思考一下那为什么Example2.2不行?)
简要回顾Domain Adaptation:在源环境 e t r a i n e_{train} etrain收集的Data有label,但另一个环境 e t e s t e_{test} etest的Data没有label,想学习一个classfier能在 e t e s t e_{test} etest上分类(记住目的)。
Domain Adaptation的关键点是,学习到了对两个环境鲁棒的特征表示,只要对其中一个分好类,那另一个自然也就能分类了。
先下个结论:这能很好地解决Example1,但无法解决Examples2。
为什么能区分 cause & effect ?回顾一下Example1
X 1 e ← Gaussian ( 0 , 1 ) Y e ← X 1 e + Gaussian ( 0 , 1 ) X 2 e ← β ( e ) Y e + Gaussian ( 0 , 1 ) \begin{array}{l} X_{1}^{e} \leftarrow \operatorname{Gaussian}(0,1) \\ Y^{e} \leftarrow X_{1}^{e}+\operatorname{Gaussian}(0,1) \\ X_{2}^{e} \leftarrow \beta(e) Y^{e}+\operatorname{Gaussian}(0,1) \end{array} X1e←Gaussian(0,1)Ye←X1e+Gaussian(0,1)X2e←β(e)Ye+Gaussian(0,1)
对于两个环境有:
X e t r a i n = ( X 1 e t r a i n , X 2 e t r a i n = β ( e t r a i n ) X 1 e t r a i n + β ( e t r a i n ) ) X^{e_{train}}=\left(X_1^{e_{train}},X^{e_{train}}_2=\beta(e_{train})X_1^{e_{train}}+\beta(e_{train})\right) Xetrain=(X1etrain,X2etrain=β(etrain)X1etrain+β(etrain))
X e t e s t = ( X 1 e t e s t , X 2 e t e s t = β ( e t e s t ) X 1 e t e s t + β ( e t e s t ) ) X^{e_{test}}=\left(X_1^{e_{test}},X^{e_{test}}_2=\beta(e_{test})X_1^{e_{test}}+\beta(e_{test})\right) Xetest=(X1etest,X2etest=β(etest)X1etest+β(etest))
Representation ( Φ \Phi Φ)需要满足第一步的条件即 P e t r a i n ( Φ ( X e t r a i n ) ) = P e t e s t ( Φ ( X e t e s t ) ) P^{e_{train}}(\Phi(X^{e_{{train}}}))=P^{e_{test}}(\Phi(X^{e_{test}})) Petrain(Φ(Xetrain))=Petest(Φ(Xetest))
为了维持 Φ ( X e t r a i n ) 与 Φ ( X e t e s t ) \Phi(X^{e_{train}})与\Phi(X^{e_{test}}) Φ(Xetrain)与Φ(Xetest)在特征空间的不变性(invariance), Φ \Phi Φ会丢弃掉因为 β ( e t r a i n ) , β ( e t e s t ) \beta(e_{train}),\beta(e_{test}) β(etrain),β(etest)而变动的 X 2 X_2 X2,因此就捕捉到了环境的不变性特征 X 1 ∼ Gaussian ( 0 , 1 ) X_1\sim \text{Gaussian}(0,1) X1∼Gaussian(0,1)。
但对于Example2的问题模式 ( X 1 , X 2 ) → Y (X_1,X_2)\rightarrow Y (X1,X2)→Y,衡量的是相关性,即 X 1 , X 2 X_1,X_2 X1,X2谁的cause效应是dominant的,这时Domain Adaptation就不适用了,因为它捕捉的是哪些特征是不变的,而不是衡量哪些特征是dominant的。
更悲剧的是,只要稍微改动一下Example1,Domain Adaptation就fail了,就不能找到问题模式 X 1 → Y → X 2 X_1\rightarrow Y\rightarrow X_2 X1→Y→X2的cause&effect了,如下:
X 1 ← Gaussian ( μ ( e ) , 1 ) Y ← X 1 + Gaussian ( 0 , 1 ) X 2 ← β ( e ) Y + Gaussian ( 0 , 1 ) \begin{aligned} X_{1} & \leftarrow \operatorname{Gaussian}(\mu(e), 1) \\ Y & \leftarrow X_{1}+\operatorname{Gaussian}(0,1) \\ X_{2} & \leftarrow \beta(e) Y+\operatorname{Gaussian}(0,1) \end{aligned} X1YX2←Gaussian(μ(e),1)←X1+Gaussian(0,1)←β(e)Y+Gaussian(0,1)
给 X 1 X_1 X1也加个因环境而变动的量 μ ( e ) \mu(e) μ(e),Domain Adaptation fails.
In particular, we will see that in many cases we can obtain out of distribution generalization by looking for features whose correlation is invariant with the label across just a few training environments
OOD最理想的优化目标:
R O O D ( f ) = max e ∈ E a l l R e ( f ) \mathcal R^{OOD}(f) = \max_{e\in \mathcal E_{all}}R^e(f) ROOD(f)=e∈EallmaxRe(f)
那如何解决Example4?
X 1 ← Gaussian ( μ ( e ) , 1 ) Y ← X 1 + Gaussian ( 0 , 1 ) X 2 ← β ( e ) Y + Gaussian ( 0 , 1 ) \begin{aligned} X_{1} & \leftarrow \operatorname{Gaussian}(\mu(e), 1) \\ Y & \leftarrow X_{1}+\operatorname{Gaussian}(0,1) \\ X_{2} & \leftarrow \beta(e) Y+\operatorname{Gaussian}(0,1) \end{aligned} X1YX2←Gaussian(μ(e),1)←X1+Gaussian(0,1)←β(e)Y+Gaussian(0,1)
本博士论文最关键的点来了:只需要 P e ( Y e ∣ H e ^ ) P^e(Y^e|\hat{H^e}) Pe(Ye∣He^)在不同训练环境下保持不变
简要背景介绍:
所以Casuality/Invariance/OOD之间的相互联系,都是围绕着这个问题“which statistical patterns are preserved across environments”
重要!:
第一个关键问题:如何从 E t r a i n \mathcal E_{train} Etrain从抽出invariance?(IRM–>IRMv1–>Representation function)
第二个关键问题:什么样的假设与理论可以保证 E t r a i n \mathcal E_{train} Etrain的invariance可以generalize到 E a l l \mathcal E_{all} Eall?
论文的核心理论一:(针对第一个关键问题)
如果representation Φ \Phi Φ满足:
条件一:Approximate invariant prediction:
D ( P e ( Y e ∣ Φ ( X e ) = h ^ ) , P e ′ ( Y e ′ ∣ Φ ( X e ′ ) = h ^ ) ) ≤ δ I N V D\left(\mathbb{P}^{e}\left(Y^{e} \mid \Phi\left(X^{e}\right)=\hat{h}\right), \mathbb{P}^{e^{\prime}}\left(Y^{e^{\prime}} \mid \Phi\left(X^{e^{\prime}}\right)=\hat{h}\right)\right) \leq \delta_{I N V} D(Pe(Ye∣Φ(Xe)=h^),Pe′(Ye′∣Φ(Xe′)=h^))≤δINV
其中 D D D为Total variation distance(TVD)。条件一意思是,这个 Φ \Phi Φ可以让不同环境的样本 X e , X e ′ X^e,X^{e'} Xe,Xe′所投射的特征空间 Φ ( X e ) , Φ ( X e ′ ) \Phi(X^e),\Phi(X^{e'}) Φ(Xe),Φ(Xe′)对label的分布,在距离度量TVD下,是approximate invariant的,invariance被限制在 δ I N V \delta_{I N V} δINV的范围内。
条件二:Low training error:
E Y ∼ P t r a i n ( Y ∣ Φ ( X ) = h ^ ) [ ℓ ( w ( h ^ ) , Y ) ] ≤ δ E R R ∀ h ^ ∈ H ^ \mathbb{E}_{Y \sim \mathbb{P}^{t r a i n}(Y \mid \Phi(X)=\hat{h})}[\ell(w(\hat{h}), Y)] \leq \delta_{E R R}\quad\forall \hat h \in \hat{\mathcal H} EY∼Ptrain(Y∣Φ(X)=h^)[ℓ(w(h^),Y)]≤δERR∀h^∈H^
条件二意思是,在某个fixed分类器 w w w下, Φ \Phi Φ使 E t r a i n \mathcal E_{train} Etrain的经验风险小于某个范围(能比较好地分类训练集的样本)
于是就有generalization的保证:
E ( X , Y ) ∼ P test [ ℓ ( w ( Φ ( X ) ) , Y ) ] ≤ δ E R R + C δ I N V \mathbb{E}_{(X, Y) \sim \mathbb{P}^{\text {test }}}[\ell(w(\Phi(X)), Y)] \leq \delta_{E R R}+C \delta_{I N V} E(X,Y)∼Ptest [ℓ(w(Φ(X)),Y)]≤δERR+CδINV
论文的核心理论二:(针对第二个关键问题)
可能有人问,啊?这是啥理论?这只是一种最高度的理论抽象,具体理论细节看原文。
通俗解释一下这两个前提:
如果 E a l l \mathcal E_{all} Eall本身就没有invariance,那这个问题就无解了。只能进行实例分析,没法general;
假设 E a l l \mathcal E_{all} Eall有invariance的话,那关键问题就是 E t r a i n \mathcal E_{train} Etrain中提取到的invariance究竟能覆盖到多少?
比如数据生成过程本质由两个不变量 α ( e ) , β ( e ) \alpha(e),\beta(e) α(e),β(e)控制,但训练集中收集到数据只能提取到一个不变量 β ( e ) \beta(e) β(e)。因此这就要求数据集有diverse environments,至少得都包含到这两个不变量吧,不然肯定没法更好地generalize。(强调diversity,“勉强理解”成invariance的维度)
其次,是样本复杂度的问题,为了提取到不变量 β ( e ) \beta(e) β(e),需要的数据样本量有多少?假设满足diverse environments为 e 1 , e 2 , . . . , e n e_1,e_2,...,e_n e1,e2,...,en,那每一个环境需要多少的样本才能较为准确地cover到真实 β ( e ) \beta(e) β(e)的分布呢?(强调每个环境的样本复杂度)
但现实是,只有一个unknown environment set产生的dataset。
所以这些被浓缩成只要 E t r a i n \mathcal E_{train} Etrain有sufficient coverage,就能恢复不错的泛化性能。因此,需要做不同的假设。您说的假设具体是指什么?
下面就是提出的具体做法:
直观的想法:这个representation在 E t r a i n \mathcal E_{train} Etrain中不仅有invariance而且预测好;
公式化该想法的目标IRM(Invariant Risk Minimization):
min Φ : X → H ^ w : H ^ → Y ∑ e ∈ E train R e ( w ∘ Φ ) subject to w ∈ arg min w ˉ : H ^ → Y ^ R e ( w ˉ ∘ Φ ) ∀ e ∈ E train \begin{aligned} &\min _{\Phi: \mathcal{X} \rightarrow \hat{\mathcal{H}} \atop w: \mathcal{\hat{H}} \rightarrow \mathcal{Y}} \sum_{e \in \mathcal{E}_{\text {train }}} R^{e}(w \circ \Phi)\\ &\text { subject to } \quad w \in \underset{\bar{w}: \hat{\mathcal{H}} \rightarrow \hat{\mathcal{Y}}}{\arg \min } R^{e}(\bar{w} \circ \Phi)\quad\forall e \in \mathcal{E}_{\text {train }} \end{aligned} w:H^→YΦ:X→H^mine∈Etrain ∑Re(w∘Φ) subject to w∈wˉ:H^→Y^argminRe(wˉ∘Φ)∀e∈Etrain
解释:对于每一个具体的任务环境 e e e,学习得到的representation使得经验风险损失的总和最小,其中分类器 w w w是在当前representation( Φ \Phi Φ)中使得具体任务经验风险 R e ( w ˉ ∘ Φ ) R^e(\bar w \circ \Phi) Re(wˉ∘Φ)最小的那个。每评估一个representation,就需要在 ∣ E t r a i n ∣ = N |\mathcal E_{train}|=N ∣Etrain∣=N个环境上解一个min问题得到分类器 w 1 , w 2 , . . . , w N w_1,w_2,...,w_N w1,w2,...,wN,然后在representation space中找到使总体经验风险损失之和 ∑ e ∈ E train R e ( w ∘ Φ ) \sum_{e \in \mathcal{E}_{\text {train }}} R^{e}(w \circ \Phi) ∑e∈Etrain Re(w∘Φ)最小的那个representation。(每次评估都需要解多个min分类器,满足约束,计算复杂度高,需要优化)
所以很自然的优化想法:假设线性结构的分类器(因为线性有解析式好求解),对 w w w分类效果不好的环境 e e e提供补偿以正确评估representation的总体效果。
公式化该优化的目标IRMv1:
min Φ : X → Y ^ ∑ e ∈ E train R e ( Φ ) + λ ⋅ ∥ ∇ w ∣ w = 1.0 R e ( w ⋅ Φ ) ∥ 2 \min _{\Phi: \mathcal{X} \rightarrow \hat{\mathcal{Y}}} \sum_{e \in \mathcal{E}_{\text {train }}} R^{e}(\Phi)+\lambda \cdot\left\|\nabla_{w \mid w=1.0} R^{e}(w \cdot \Phi)\right\|^{2} Φ:X→Y^mine∈Etrain ∑Re(Φ)+λ⋅∥∥∇w∣w=1.0Re(w⋅Φ)∥∥2
解释:目的是得到一个representation function( Φ \Phi Φ),在固定住分类器 w = 1.0 w=1.0 w=1.0的情况下,根据对环境的分类效果进行补偿,用 λ \lambda λ进行控制.(言简意赅:软化了IRM对分类器 w w w的硬约束,以补偿的方式进行软约束限制)
但这个软约束后的优化目标只适合去捕捉linear invariance。因此有一些没解决的理论问题:
主要罗列个人认为主要的定理,并进行理解,具体证明见原文。
定理A.1 : Causality, invariance, and out of distribution generalization are equivalent when data satisfies a causal graph
因果性Causality是基于statistical invariance,来分清cause和effect,人为构建或数据学习得到一个Causal Graph,同时Causal Graph充当了 E t r a i n \mathcal E_{train} Etrain和 E a l l \mathcal E_{all} Eall之间shared invariance的结构使其能解决Out-of-distribution generalization的问题。
如果数据没有Causal Graph的话,我认为它们是一种包含的关系Causality < Invariance < Out-of-distribution generalization.
重点来说 c e ( Φ ) c^e(\Phi) ce(Φ)的第一项是最优的线性分类器,第二项是某个fixed的分类器,整个表达在当前fixed分类器 w w w来说,每个representation function离最优线性分类器 w ∗ w^* w∗的差距。
理解定理的含义:
现在有 ∣ E t r a i n ∣ |\mathcal E_{train}| ∣Etrain∣个环境,每个环境 e e e产生维度为 d d d的样本 X e X^e Xe,有一些representation function Φ \Phi Φ将样本映射到维度为 p p p的特征空间,且它们的雅可比矩阵满秩 ∇ x Φ ( x ) \nabla_x\Phi(x) ∇xΦ(x)意味着这个映射 Φ \Phi Φ不会损失invariance的信息,这些可行的 Φ \Phi Φ可能有挺多的,隶属于一个 q q q维的泛函空间 F \mathcal F F(逻辑链条: e → X e → Φ ∈ F → h ∈ H e\rightarrow X^e\rightarrow \Phi\in \mathcal F\rightarrow h\in \mathcal H e→Xe→Φ∈F→h∈H,即环境产生样本,经过表征映射,到达特征空间)
而 c e ( Φ ) c^e(\Phi) ce(Φ)则是对于一个特定环境 e e e而言,representation function family(泛函)到 p p p维特征空间的映射,用来评估representation function ( Φ ) (\Phi) (Φ)的好坏。(一个环境,这些 Φ \Phi Φ的整体评估,用一个特征向量表示)
F ( Φ ) F(\Phi) F(Φ)是在 ∣ E t r a i n ∣ |\mathcal E_{train}| ∣Etrain∣个环境下,对representation function family ( Φ ) ∈ F (\Phi)\in \mathcal F (Φ)∈F到特征空间的评估, 它们的雅可比矩阵 ∇ Φ F ( Φ ) \nabla_\Phi F(\Phi) ∇ΦF(Φ)满秩表明,这个对representation family到特征空间的评估映射不损失invariance的信息。
最后就定义, E t r a i n \mathcal E_{train} Etrain的训练环境结构为nonlinear general position,它对样本到特征空间的映射转换不损失invariance信息,它对representation function family在特征空间的整体评估映射 F ( Φ ) F(\Phi) F(Φ)也不损失invariance信息。
如果存在满足invariance即 E [ Y e ∣ Φ ∗ ( X e ) = h ^ ] = w ∗ T h ^ , ∀ e ∈ E a l l \mathbb E[Y^e|\Phi^*(X^e)=\hat h]=w_*^T\hat h,\forall e\in \mathcal E_{all} E[Ye∣Φ∗(Xe)=h^]=w∗Th^,∀e∈Eall的representation function Φ ∗ \Phi^* Φ∗和分类器 w ∗ T w_*^T w∗T(解的存在性假设),当训练环境是nonlinear general position的结构(训练结构假设)、分类器 w w w是linear的结构(线性分类器假设)、训练环境个数满足 ∣ E t r a i n > q p ∣ |\mathcal E_{train}>\frac{q}{p}| ∣Etrain>pq∣(训练环境个数的sufficient coverage),Representation function Φ \Phi Φ在 E t r a i n \mathcal E_{train} Etrain上对某个分类器 w w w不变时(说明提取到特征是合格的),那么就找到了在 E a l l \mathcal E_{all} Eall上也能维持invariance的表征提取器 Φ ∗ \Phi^* Φ∗,从而可以找到该表征 Φ ∗ \Phi^* Φ∗下的最优线性分类器 w ∗ w_* w∗,它们在 E a l l \mathcal E_{all} Eall上组成invariant predictor w ∗ ∘ Φ ∗ w_*\circ\Phi^* w∗∘Φ∗,泛化性能得以从理论上解决。
根据重点来提取出逻辑链:
其实这篇博士论文,最最最有用的并不是什么practical的algorithms,而是它给出的theory analysis是非常有启发性的。基本能对现在海量的paper做一个总结与归类,并抽象出了如何用Invariance来解决Out-of-distribution的启发。
尽管是初步的、线性的理论分析,但个人认为,非常经典、透彻、有启发性。对外推这个问题理解更为深入。下一篇文章,主要讲这个Out-of-distribution在具体问题上的泛化,以及具体问题具体方法是如何体现这个Invariance的,真的太妙了~