也是做双变量因果关系的,2022TNNL
Gilligan-Lee C M, Hart C, Richens J, et al. Leveraging Directed Causal Discovery to Detect Latent Common Causes in Cause-Effect Pairs[J]. IEEE Transactions on Neural Networks and Learning Systems, 2022.
其实就是一个模式,通过把原本二分类变成三分类(通过先验的delta),TNNL这种期刊的论文怎么这么又臭又长的我真的无语了………………
【摘要】
因果关系的发现是科学和医学的一个基本问题。近年来,人们提出了许多优雅的方法来从观察数据中发现两个变量之间的因果关系。然而,这些方法大多只处理纯粹的定向因果关系,而不能发现潜在的共同原因。在这里,我们设计了一种通用的启发式方法,它采用了只能区分纯定向因果关系的因果发现算法,并对其进行了修改,以检测潜在的共同原因。我们将我们的方法应用于两种有向因果发现算法,即Daniusis等人的信息几何因果推断(IGCI)和Mitrovic等人的因果推断核心条件偏差(2018),并在合成数据上进行了广泛的测试--在加法、乘法和复杂噪声制度下检测潜在的共同原因,以及在真实数据上,我们能够检测已知共同原因。除了检测潜在的共同原因外,我们的实验表明,修改后的算法在区分有向因果关系方面都保持了原有算法的性能。关键词:因果发现、因果推理、反事实推理、隐藏的共同原因、潜伏的混杂因素。
【Introduction】
因果知识在医学上是至关重要的,因为因果关系--与相关关系不同--允许人们对可能的治疗后果进行推理[1], [2], [3]。事实上,确定一个特定的治疗方法是否会导致疾病严重程度的降低是医疗保健中的一个重要问题。然而,从医疗记录中了解到某种治疗与康复相关,并不足以得出治疗会使新病人康复的结论,因为存在着潜在的混杂因素。更昂贵的治疗可能是给较富裕的病人,因为他们有更好的生活方式和饮食习惯,无论治疗与否,都更有可能康复。在这里,病人的财富在接受治疗和康复之间起到了潜在的混淆作用。在现实中,治疗可能是有害的。因此,学习因果结构是至关重要的。如果没有对照试验数据,这个问题就更难解决了--也就是说,没有学习因果结构的标准方法。因此,从非对照或观察性数据中发现因果结构的方法对于做出正确的治疗决定至关重要。
最近,人们提出了许多发现两个变量之间因果关系的方法,包括[4]、[5]、[6]、[7]等,我们将在第二节中介绍这些方法。然而,除了[8]和[9]之外,这些方法只处理纯粹的定向因果关系,不能检测潜在的共同原因。也就是说,给定两个变量A和B,这些算法只能区分A导致B(图1(a))和B导致A(图1(b))。那些可以检测潜在的共同原因的算法要么对基础的因果模型施加严厉的限制--比如强制执行线性[5],[10],要求噪声是加性的[8],或者需要大量的训练数据[9]。由于潜在的共同原因的存在是一个重要的问题,克服这些缺点,开发不依赖强假设(如加性噪声或线性)的检测潜在共同原因的方法,是因果发现中的一个重要问题。
在这里,我们设计了一个启发式方法,它采用了一个纯粹的定向因果发现算法,并对其进行了修改,使其也能发现潜在的共同原因。也就是说,我们的方法将一个只能区分图1(a)和(b)中的因果结构的因果发现算法作为输入,而输出一个能区分图1中所有三种结构的因果发现算法。我们将我们的方法应用于两种定向因果发现算法,即[11]的信息地理度量因果推断(IGCI)算法和[7]的核条件偏差因果推断算法,这两种算法在图宾根因果对数据集1[12]上的表现都非常好,其中ICGI得分74%,核条件偏差因果发现(KCDC)得分73%。我们在合成数据上进行了广泛的测试--在加法、乘法和复杂噪声体系中检测潜在的共同原因,同时也在真实数据上进行了测试,我们能够检测已知的共同原因。重要的是,除了以较高的精度检测出潜在的共同原因外,我们的实验表明,两种修改后的算法在区分有向因果关系方面并没有牺牲原始算法的性能。
【相关工作】
在这项工作中,因果结构将用图形表示为有向无环图(DAG)。发现数据生成过程中的因果结构的方法主要分为两类。第一类,我们称之为全局因果发现,试图重建因果结构的(部分)无定向版本。这种方法大致分为两类:基于约束和基于分数。基于约束的方法采用了有关变量之间的条件独立性测试,以确定哪些变量应该在因果结构中共享一条边。例如,概率因果关系(PC)算法和快速因果推理(FCI)算法[13],归纳因果关系(IC)算法[1],以及允许潜在变量[14]和选择偏差[15]的算法。基于分数的方法引入了一个评分函数,如最小描述长度,针对一些训练数据对每个网络进行评估,并根据这个函数搜索出最佳网络[16]。贪婪等价搜索(GES)[17]是基于分数的因果发现的一个典型例子。同时采用基于约束和分数的技术的混合方法优于单独的任何一种方法[18]。
基于约束的算法的主要缺点是,由于它们只能恢复马尔可夫等价类,它们并不总是能够定位因变量之间的边缘。考虑到相关的变量A和B,这些方法无法区分图1中描述的结构。第二类因果发现算法,我们称之为局部或双变量因果发现,旨在通过利用因果之间不对称的概念来解决这个问题。这些方法规定了不同的假设,旨在使这种不对称性在观察层面上可以得到检验。
文献中提出的第一类假设,被称为功能因果模型方法,规定每个效应是其原因的确定性函数,加上一些潜在的、独立的噪声项[19]。第一个这样的算法,称为线性非高斯加性噪声模型(LiNGAM)[5],假设函数是线性的,潜伏的噪声变量是非高斯的。鉴于这些假设,该方法可以区分图1(a)和(b)中的因果结构;一个单独的隐藏变量扩展[20]将这一结果扩展到图1中的所有结构。另一个原始的典型例子,加性噪声模型(ANM)[4],允许效应是原因的任意函数,但假设效应只依赖于潜在的噪声项的加性。只要加性假设成立,ANM就能区分图1(a)和(b)中的两种结构。ANM已经被扩展到允许效应以非线性的方式依赖于原因和噪声[21]。最后,混杂加性噪声(CAN)算法[8]扩展了ANM算法,以处理潜在的共同原因,允许图1中的所有结构被区分出来。我们在II-A节中回顾了CAN模型。
第二类假设规定,原因P(cause)独立于机制P(effect|cause)。有人提出了一种衡量这种独立性的信息几何方法[6],[11],被称为IGCI算法。这种方法只能区分图1(a)和(b)中的两种结构。IGCI并不要求特定的参数功能关系成立。
最后一种假设要求因果机制P(果|因)应该比反因果机制P(因|果) "更简单",给定一些可量化的 "简单 "概念。KCDC算法[7]算法使用条件核平均嵌入来建立条件概率的规范,并使用这些概率的方差作为简单性的衡量标准。正如实验表明[7],IGCI和KCDC算法构成了目前区分图1(a)和(b)中两种因果结构的最先进的方法。
虽然ANM算法已经通过CAN算法扩展到处理潜在的共同原因,但它的一般化,如KCDC和IGCI,还没有。本文介绍了一种启发式方法,该方法将任何纯定向因果发现算法作为输入,并输出一种新的算法,可以区分图1中的所有因果结构。
虽然许多纯定向因果发现算法没有被扩展到处理潜伏混杂物的存在,但有一些作品--给定某些假设--可以在一定程度上确定观察到的两个变量之间的相关性是否可以由潜伏的共同原因或定向因果关系解释。然而,应该注意的是,如果已经排除了潜在的共同原因的解释,这些算法对有向因果关系的方向是不可知的。其中一种算法[10]假设有关变量之间存在线性关系,包括任何潜在的共同原因,并输出具有最小描述长度的因果结构--对Kolmogorov复杂性的近似--作为数据的最佳因果解释。这项工作的作者报告了他们方法的良好性能。另一项工作,[22]使用Rényi熵的一般化来确定是否存在可以解释观察到的相关性的潜在的共同原因,或者它们是否必须是由于直接的因果关系。受遗传学用例的启发,Janzing等人[23]提供了一种方法,可以确定低复杂度(他们的意思是低心率--例如,二元变量--潜在的共同原因是否可以解释数据中的相关性。他们的方法是基于分析条件分布P(Y |x)在Y的所有分布中的简单x的位置。最后,[24]使用频谱分析和度量集中结果来确定对数据的直接原因解释是否可行,或者是否需要一个标量值的潜在共同原因来解释数据。如同上面的[10],Janzing和Schölkopf[24]假设了线性模型。随后在[25]中的工作扩展了[24]的方法,以处理高维潜在的共同原因。
本文的主要贡献是一种启发式方法,它将任何纯定向的因果发现算法作为输入,并输出一种能够区分图1中所有因果结构的新算法。与上述方法不同的是,我们的方法不仅能区分纯定向和纯共因的因果结构,而且在共因被排除的情况下,还能定向定向因果联系。此外,我们方法的主要创新之处在于,如果设计出任何新的纯定向因果发现算法,那么通过应用我们的算法,可以立即转化为也能区分潜在的共同原因的算法。
A. 使用ANMs识别潜在的共同原因
作为我们检测潜在共同原因的方法的前奏,我们回顾一下目前最先进的区分图1中所有结构的算法,即[8]的混淆加性噪声(CAN)模型。在CAN中,我们假设图1(c)中因果结构的基础函数是A=f(C)+u A和B=g(C)+uB,对于任意的f、g。CAN的第一步是使用A、B的样本来拟合这样一个模型。这种回归产生的残差对应于噪声项uA和uB的表征。在拟合这个模型时,必须确保C、u A、u B都是相互独立的,正如图1(c)的图形结构所暗示的那样。为了确保独立性,CAN采用了一个计算量很大的优化程序。进一步的讨论见第四节。
有了这样一个使用A、B样本的模型拟合,下一步就是用它来区分图1中的所有结构。请注意,图1(a)2的加性噪声假设意味着对于任意的f,g,B=g(A)+uB,A=g(C)+uA。如果学到的u A的方差相对于uB的方差来说是小的,CAN就会区分图1(a)-(c),如果方差大致相等,则更喜欢图1(c)。图1(b)的情况是通过切换A和B得出的。假设A导致了B,并且由于轻微的测量误差,我们观察到A‘,它与A的差别是一个小的附加项。在这里,我们希望这些函数与上述图1(c)中描述的一样。但是,如果两个变量几乎重合,我们就不应该将A与它的测量结果A’区分开来。在这种情况下,将A、B归一化为单位方差后,uA的方差与uB相比会很小,因为A‘与A很接近。 一般来说,CAN算法使用以下决策标准来区分图1中的所有结构: 1)如果var(u A)/var(u B)<<1,则A→B;2)如果var(u A)/var(u B)>>1,则A←B;以及3)如果var(u A)/var(u B)≈1,则A←C→B。确定上述标准的阈值是一个棘手的问题,其数值要根据具体情况决定;更多信息见[8]。
3.method
我们在功能因果模型框架中工作[19]。在这里,一个因果结构对应于观察变量和潜伏变量之间的DAG,每个变量都是其父母和一些潜伏的独立噪声项的确定性函数。例如,在图1(a)中,这意味着A=f(u A)和B=g(A,uB)的确定性函数f,g;而在图1(c)中,这意味着A=f(C,u A)和B=g(C,uB)。一个因果模型对应于一个DAG、函数和对潜在噪声项的预设说明。因此,我们可以把给定B=b的A=a的观察概率写成 其中f是将B和潜伏噪声项U映射到A的确定性函数,而Q(U)是潜伏噪声项的prior。如果两个因果模型的特征是在观察变量上有相同的分布,我们就说它们是观察等价的。对于一个特定的因果模型M,用P_M来表示观察变量的分布集,该分布集由上面讨论的函数和潜伏先验指定。当且仅当P_M=P_M'时,两个因果模型M和M'才是观察上的等价。
A. 我们的启发式算法的描述和直观性
在这一节中,我们将描述我们的启发式算法,并提供它所衍生的直觉概要。首先,我们将对我们的方法进行快速描述,然后在本节的其余部分对其机械原理进行解释。
启发式方法1的描述:我们首先对观察结果Ai, Bi的样本拟合一条曲线(使用流形学习算法,如isomap[26],例如),产生数据的一维参数化Ti。继续下去,启发式方法是由以下的直觉激发的。
1)如果A←C→B,那么预计T基本上对应于C,应用于(A,T)和(B,T)的有向因果发现算法预计会得出箭头是从T发出的。
2)如果A→B(A←B的情况类似),那么--正如我们将在本节中论证的那样--预计T基本上对应于f(u A),其中A=f(u A),应用于(A,T)的定向因果发现算法产生不确定的和模糊的结果,而对于(B,T),它们输出一个从T发出的因果箭头(因为B=g(A,uB)=g(f(T),uB),正如我们将在本节中讨论的。
这种不对称性就可以用来区分A→B、A←B和A←C→B。
现在我们将着手解释为什么上述每个步骤都是如此。为此,为了帮助论述,我们将所需的概念成分进行了分解,并将其作为直觉辅助工具来介绍。
我们首先将一个在观察变量之间没有定向箭头的因果模型定义为纯共因。
直觉援助1:任何在A和B之间有有向箭头的因果模型(A→B或B→A)在观察上等同于纯共因的模型。
证明: 这个结果以前已经被证明过了,例如在[27]中,但是为了看到它在图1(a)的情况下是成立的,请考虑以下几点。这个因果结构的模型对应于指定A、B和它们的父母之间的功能依赖关系: A = f (u A),B = g(A, uB)。用f (u A)代替B中的A,可以得到B = g( f (u A), uB) 。定义u A := f (u A)的结果是A = u A和B = g(u A, uB)的关系。从A到B的有向箭头被潜在的 "共同原因 "u A所取代,图1(a)被简化为一个纯粹的共同原因模型。这在图2的前两个因果结构中得到了图形化的概述,其中≡表示观察的等价性。
当一个因果模型是纯粹的共因时,我们说它是典型的形式4。请注意,图1(c)已经是典型的形式了。下面的直觉援助提供了我们方法的另一个关键观察。
直觉援助2:鉴于图1(a)中的因果模型5,经典模型与两个因果结构一致:一个是u A是A和B之间的共同原因,另一个是u A是A到B的因果箭头的中介者。
证明: 事实上,在不丧失一般性的情况下,图1(a)的典型模型是由A=u A和B=g(u A, uB)给出。这些函数与图2中的第二个因果结构是一致的,其中一个因果箭头从u A指向A。但平等的A = u A也与图2中的第三个因果结构一致,其中因果箭头从A指向u A。也就是说,A = u A的关系与从u A指向A的箭头和从A指向u A的箭头都一致。注意,由于噪声项u A和uB的独立性,因果结构中其他箭头就不是这样。图2中从B指向u A的因果箭头会引起u A和u B之间的关联,这与噪声项的独立性直接相矛盾。
直觉援助2告诉我们,在图1(a)的典型模型中,A和u A之间的因果关系的方向性是不确定的,如图2的最后两个结构所示。因此,对A和u A应用有向因果发现算法将导致不确定的和模糊的结果。然而,所有其他的因果联系都是完全确定的和有方向的。另一方面,如果原始结构是图1(b),那么典型的 "共同原因 "uB和B之间的因果联系将是不确定的,所有其余的联系都是确定的和有方向的。请注意,如果结构最初是图1(c)的结构,那么从真正的共同原因C到观察到的变量之间的箭头都是不确定的。
这一观察是本节开始时概述的(a)和(b)项的结论的基础。在第三节B和第三节C中,我们将描述如何实现我们的方法。
B. 从直觉到实施
到目前为止,我们对启发式方法的介绍还没有正式定义欠确定的因果关系的概念。我们现在提出这个定义。在这里,我们关注有方向的因果发现算法D,它使用可量化的不对称性概念决定因果方向,如第二节中描述的IGCI[11]和KCDC[7]。一般来说,这种算法为每个因果方向v^D_{A→B}和v^D_{B→A}分配一个实数标量,返回v值最小的因果方向。由于统计噪声的普遍性,这类算法有一个决策阈值δ,如果|v D A→B - v D B→A| < δ,算法就不能检测到因果方向。
作为一个例子,[7]的KCDC算法使用条件核均值嵌入,为A=a,B=b的每个值建立条件概率P(B|A=a),P(A|B=b)的规范。如果规范{P(B|A = a) }a的方差v A→B小于{P(A|B = b) }b的方差vB→A,KCDC算法返回图1(a),否则返回图1(b)
下面的定义将因果关系相对于特定的有向因果发现算法来说是不确定的概念正式化。
定义1:两个变量A和B之间的因果关系相对于因果发现算法D来说是不确定的,如果|v D A→B - v D B→A| < δ为预先指定的决策阈值δ。
最后,为了实现我们的启发式方法,需要从观测变量A、B的样本中学习典型的共同原因。在第III-A节的开头,我们说流形学习或降维算法,如[26]的等值线算法,将执行这一要求。的确,在这种算法将学习数据最可能的潜在表征的假设下,直觉上似乎是这样的。然而,为了证实这一直觉,我们需要规定潜伏噪声项对观测变量的影响要小。也就是说,我们需要要求,对于来自观察变量A、B的样本的典型共同原因来说,由典型共同原因参数化的流形周围由潜伏噪声引起的波动要小。
直觉援助3:在潜伏噪声项的影响很小的假设下,可以从A、B的样本中识别出典型的共同原因。
证明: 考虑到图1(a)的因果模型6,根据定理1,我们可以把它写成A=u A,B=g(u A, uB)。现在,泰勒扩展得到B=g(u A, 0)+g (u A, 0)uB+(uB的高阶项),其中g是g相对于uB的偏导。假设噪声项uB对B的影响很小,对应于我们可以在上述泰勒展开中放弃uB中的高阶项。因此,我们可以写B = g(u A, 0) + g (u A, 0)uB。在不丧失一般性的情况下,我们可以假设噪声项是一个均值为0的高斯随机变量。这就意味着我们总是可以写出uB = h(u B),其中u B是一个高斯随机变量[28],因此B = g(u A, uB) = g(u A, h(u B )) = g (u A, u B) 其中g = g ◦ h. 所以B可以被写成一个高斯变量的函数而不丧失一般性。这意味着B的期望值是B=g(u A,0)。因此,(A,B)样本的期望值是(u A,g(u A,0))。也就是说,它们都是单独的典型共同原因u A的函数,因此可以从A、B样本中识别出来。
这意味着,给定与图1中任何结构相关的典型因果模型,并假设噪声的影响较小,可以利用流形学习--如第二节A中描述的CAN算法[6,第3节]--从观察到的A、B的样本中确定典型 "共同原因 "的近似参数化(最多可重新缩放)。正如本节开头所讨论的,我们可以用它来确定A和B的基本因果结构,具体如下。
在图1(a)和(b)的情况下,"共同原因 "分别对应于变量u A和u B。其次,考虑到 "共同原因 "的参数化,我们可以使用纯定向因果发现算法来确定原始的前因后果结构,以确定与被观察变量的哪条因果联系是欠确定的(如果有)。如果指向A的箭头是欠确定的,那么因果结构就是图1(a);如果指向B的箭头是欠确定的,那么结构就是图1(b);如果没有箭头是欠确定的,结构就是图1(c)。
我们的算法描述如下:算法1
C. 决策标准
第四节中进行的实验表明,即使在潜伏噪声影响不小的情况下,算法1在合成数据上也表现良好。这表明,在更广泛的环境中,可以从A、B中学习典型的共同原因。在第III-D节中,我们提出了一个开放性问题,即在比上面讨论的更弱的假设下,可以从A、B样本中学习典型的共同原因。
由于统计噪声的普遍性,我们现在引入一个启发式的决策标准来检查算法1的条件,这是受第二节A中讨论的KCDC和IGCI的决策阈值启发。考虑到算法1的第3步,学到的典型共同原因被表示为T。为了同时检查A和T之间的因果关系是否未被确定,以及T→B,是否与数据一致,可以应用以下启发式方法。检查是否
位于一些预先指定的决策阈值旧α接近1的区域(α,1]内。这是因为步骤3中的条件意味着|v A→T -vT→A| < δ,|vB→T -vT→B| > δ,对于小的δ来说,分子中的第一项通常接近于零,而第二项则不是。
另外,如果Δ∈(0,α),那么数据与T→B和T→A一致,因为在这种情况下|v A→T - vT→A| > δ,|vB→T - vT→B| > δ。因此,分子中的两个项可以大致认为比步骤3和5的情况更接近大小。这使得我们可以检查算法1的第7步是否为真。
请注意,第一个标准Δ∈(α,1]也与算法1的步骤5一致,因为在A和B的互换下,步骤3和5是相同的。由于第3步和第5步的两种情况是纯粹的有向因果结构,因此可以用原来的有向因果发现算法来区分它们。
请注意,上述讨论是启发式的,在数学上不受限制地位于所述的特定区域内。然而,基于上一节中所发展的理论直觉,它似乎是一个合理的启发式方法。在第四节描述的实验中,这种启发式方法在合成和真实数据上都表现得非常好。
为了给上述启发式算法的结果分配信心,可以采取自举的方法,通过在输入数据的子样本上运行算法来计算{ i}的输出平均值,其中i是在第i个子样本上计算的值。为了便于记述,我们在下文中抑制了索引i。如上所述,mean({ Δ})∈(α, 1]与定向因果结构一致,mean({Δ })∈(0, α]与共同原因一致。此外,以这种方式计算的{ }的方差编码了正确DAG的信息。例如,小方差var({ Δ}) ∈ (0, γ ]--其中γ又是一个预先指定的小于1的决定阈值,与有向因果结构一致,大方差var({ Δ}) ∈ (γ , 1]与共同原因一致。这是因为对于一个定向因果结构来说,每个i的分子中只有一个项必须位于[0, δ]区域内,对于小δ来说,因此不能有太大的变化。对于一个共同原因,两个项都在这个区域之外,因此可以有更大的变化。
这两种含义,即高平均值({ Δ})表示有向原因,高变异值({Δ })表示共同原因,可以结合使用,以确定因果结构。例如,可能会出现这样的情况:某个共同原因结构的均值({ Δ})适中,但var({Δ })很高,因此排除了有向原因,而由算法返回一个共同原因。类似的推理也可以应用于一个有向原因,其均值({ Δ})低于预期,但变数({ Δ})很低,因此排除了一个共同原因。
总结一下,上述决策标准如下。通过在输入数据的子样本上运行算法,计算出{ Δ}输出的平均值和方差。回顾一下,均值({Δ })的可能范围是[0,1]。这个范围被分成若干个区域。我们将区域1固定为[0, α1],区域2为[α1, α2],以此类推。每个区域R都与var({ Δ})的阈值γR有关。如果mean({ Δ})位于区域R,那么如果var({ Δ})≤γR,算法就会输出一个有向因果结构,其方向就由原来的有向因果发现算法决定。但如果var({Δ })>γR,就会输出一个共同原因结构。请注意,随着区域越来越接近于0,也就是接近于[0,α1],方差阈值γR越来越小。因此,γR < γR+1。这编码了我们之前关于平均数和方差意味着不同因果结构的推理。此外,对于非常低的方差和平均数,以及非常高的平均数和方差,都应该有一个失败的模式,因为这些都不表明有直接的或共同的原因
如同II-A节中描述的CAN算法的决策标准和KCDC[7]一样,由于经验心理数据集内噪声的影响不同,设置这样的标准是一个挑战。我们在这项工作中采取的适当方法是使用具有已知因果关系的类似来源的数据,并为该领域确定适当的阈值,然后将其固定。
D. Open Questions and Future Extensions
E. Future Extensions (Detecting Simultaneous Direct and Latent Common Causes)
先跳过 看看实验
4.实验结果
我们通过证明我们的方法可以将[7]的KCDC算法和[11]的IGCI算法(各自只能区分图1(a)和(b))变成可以区分图1中所有因果结构的算法来测试。我们将我们的方法所输出的修改后的KCDC和IGCI算法分别称为modKCDC和modIGCI。为了衡量modKCDC和modIGCI的性能,我们与CAN[8]以及我们在第二节A中概述的来自[10]的方法进行了比较,前者是唯一明确设计用于区分图1中所有结构的因果发现算法,而后者则是我们在第二节中概述的。请注意,该方法可以区分直接的因果关系和潜在的共同原因关系,然而,如果检测到一个有方向的因果关系,该算法并没有被设计为定向因果关系。事实证明,与modKCDC和modIGCI相比,CAN算法以及来自[10]的算法的运行都是非常密集的计算。为了减少CAN的计算成本,我们只执行了第二节A中讨论的三个独立约束中的两个:u A, uB ⊥C。
对于KCDC,我们使用径向基函数核,在所有的实验中固定了超参数;继[7]之后,有可能将其扩展到多核多数票,尽管这里使用单一核的性能是有效的。我们使用来自[11]的IGCI的实现。我们使用[8]中概述的CAN的实现,使用高斯过程回归、希尔伯特-施密特独立标准(HSIC)来测试独立性,并采用独立优化循环的最多五次迭代,每次解算器的迭代次数上限为5000次。对于modKCDC、modIGCI和CAN的流形学习子程序,我们采用Isomap[26]。这是最初用于CAN[8]的流形学习的实现。对于[10]中的算法,我们使用了作者的开源实现。7 所有的数据都被归一化为平均值为0,方差为1。
我们遵循III-C节中概述的引导程序,使用25个引导,每个引导随机抽取95%的数据。由于[10]算法的计算成本较高,我们没有使用引导程序,只将算法应用于全部数据。这反映了该算法最初在[10]的实验中是如何使用的。因此,我们在合成数据的实验中报告了该算法的表后性能 为了设置阈值,我们从具有加法、乘法和复数噪声函数的有向因果模型中生成了合成数据,并确定了近似于再现原始有向因果发现算法在这些不同模型上性能的阈值。我们为modKCDC和modIGCI以及CAN做了这项工作,其决策标准在II-A节中讨论过。这类似于[6]中设置CAN阈值的方式。
A. 合成数据
我们首先对纯定向和纯共同原因的合成数据进行测试。用于生成该合成数据的函数是从[7]的工作中改编的,他们用这些函数来测试KCDC的性能,并将其性能与IGCI进行比较。因此,我们相信使用类似的合成函数和相同范围的合成噪声分布为KCDC、IGCI和它们的修改提供了一个公平和稳健的基准。
在合成的有向数据集上,我们将修改后的算法与原始算法进行比较,以确定修改是否明显降低了检测有向因果结构的性能。我们的实验表明modKCDC和modIGCI保持了原始KCDC和IGCI算法的性能水平。
1) 有向因果结构: 在下面的实验中,我们对100个数据集进行采样,每个数据集有250个观测值,并测试modKCDC和modIGCI。事实证明,CAN算法的运行是非常耗费计算的,与modKCDC和modIGCI相比,在250个数据集上运行的时间是300-500倍。因此,我们只在10个数据集上测试了它,每个数据集有250个观测值。对于我们的三种算法,我们对A∈N(0,1)进行采样,并在三种不同的噪声体系中进行测试:正常nB∈N(0,1),均匀nB∈U(0,1),和指数nB∈E1)。我们记录了所有数据集的准确度,即算法输出正确的地面真实定向结构的案例的百分比。这与Mitrovic等人[7]在实验中采用的指标相同。CAN算法只有在加性噪声的情况下才能拟合出满足第II-A节和第IV节所讨论的独立性标准的模型,这在下面的实验(1)和(2)中使用。这是可以预期的,因为非加性噪声,如实验(3)-(6)中,违反了CAN的可识别性要求。在这些情况下,我们无法报告CAN的性能。结果见表一。
2)common cause:
B. 共同原因稳健性测试
在上面的实验中,我们测试了我们的算法在不同的噪声体制下的鲁棒性。现在我们测试对更复杂的功能关系的鲁棒性。首先,我们测试算法在超越加法和乘法噪声的制度下的准确性。然后,我们对来自高斯过程的函数进行测试。结果列于表三
(3) 设A = f (T )en A & B = g(T )enB, f , g取自同一个高斯过程,其核是多项式(只有T 2 + T 6项)和周期指数之和。(4) f来自一个具有多项式内核(只有T 2 + T 6项)的GP,g来自具有多项式之和(只有T 3 + T 5项)和周期性指数内核的GP。
modKCDC和modIGCI在这些数据集中的表现都很好,超越了加法和乘法噪声。经验(3)和(4)提供了对基础函数参数变化的鲁棒性分析。
C. Sensitivity to the Assumption of Small Influence of Latent Noise
如第三节所述,我们的启发式方法的一个关键假设是,在A←C→B是真正的因果结构的情况下,对A、B样本应用流形学习应该导致C的近似参数化。也就是说,如果A=f(C,n A)中的n A和B=g(C,n B)中的n B的影响并不妨碍C被学习。我们的启发式方法对这一假设的敏感性现在将用modIGCI进行经验测试。我们从违反该假设的模型中综合生成有向和共因数据。有向数据是通过采样A∈N(0,1)和u A∈N(0,1)并输入B=sin(10A)+e3A+λeenB生成的。共因数据是通过采样T∈N (0, 1), u A∈N (0, 1) & uB∈N (0, 1) 产生的,并输入到A = sin(3t) + λeenA B = log(T + 10) + λeenB 。这里,潜伏的噪声项通过双指数函数影响观察变量,这违反了直觉援助3的基本假设。 在这两种情况下,λ越小,噪声项的影响越小。我们期望λ越小,我们方法的准确性越高,而λ越大,我们方法的准确性越低。这一直觉在实验中得到了证实。结果见图4。
尽管噪声通过双指数函数影响观察到的变量,但modIGCI的精度是相当有弹性的。例如,当λ=1时,定向数据的准确性为46%,共同原因数据的准确性为62%。全部结果见图4。这给人们带来了希望,可识别性可以在比第三节所示更广泛的环境中得到证明。
D. Real Data
1)定向数据: 我们现在对真实世界的数据进行测试。为此,我们考虑在[12]中讨论的图宾根因果对数据集8。这个数据集由真实世界的因果样本组成,这些样本收集于不同的学科领域,从物理到教育,真实的因果方向由人类领域专家提供。
我们使用图宾根因果对数据集1.0版,其中包括100个因果对。鉴于不同的因果对有时会从同一个多变量数据集中选择,因此每对因果对都被分配了一个权重,以说明潜在的偏差来源。按照文献中普遍存在的只对标量值的配对进行测试的方法,我们从图宾根因果配对数据集中删除了52、53、54、55和71个配对,以确保与以前的工作进行公平的比较。
对于modKCDC和modIGCI,我们使用第四节中固定的阈值,这些阈值在补充材料中报告。我们针对KCDC和IGCI进行了测试,也针对第二节中讨论的著名的有向因果发现算法[4]的ANM算法进行了测试。结果如表四所示
值得注意的是,modKCDC和modIGCI都取得了与KCDC和IGCI基本相似的性能,说明我们的方法并没有大幅降低原始的、未经修改的算法检测直接因果关系的能力。KCDC的性能比[7]中报告的性能略差,可能是由于那些作者进行的特定超参数优化。请注意,[7]中也对KCDC方法进行了调整,对每个因果对采用了多个内核多数票,其准确性比固定超参数的KCDC更好。我们在这里没有实施多数票的方法。IGCI和ANM的性能也比[12]中的报告要差,这也可能是因为这些作者进行了特定的广泛的超参数优化。然而,这里报告的IGCI和ANM的性能与[7]中的报告基本相似。
考虑NLSchools的数据,即图宾根因果数据中的第99对,是很有启发的。在这里,"社会经济地位 "有望成为 "语言分数 "的直接原因。然而,一些研究者认为,社会经济地位和考试分数之间的相关性可能有一个遗传上的共同原因[32],提出了基础结构可能是纯粹的共同原因的可能性。当应用于此数据时,modKCDC返回mean({ })=0.933和var({ })=0.007。modKCDC的输出--其高平均值和低方差--在第四节中固定的阈值之内,这些阈值在附录中报告,因此表明了一个定向因果结构。因此,modKCDC返回了一个从 "社会经济地位 "到 "语言分数 "的直接原因,排除了对这一数据的纯粹的共同原因解释,并与基础事实一致。图5(a)中给出了这一数据的图。
2)共同原因数据: 接下来,我们考虑乳腺癌威斯康辛(诊断)数据[33]。在这里,肿瘤(恶性或良性)是 "周长 "和 "密实度 "这两个属性的共同原因,因为它们是有条件地独立于它的。在这个 "周长 "和 "紧凑性 "数据上运行时,modKCDC返回mean({ }) = 0.491,var({ }) = 0.081,modIGCI返回mean({ }) = 0.308,var({ }) = 0.062。在这两种情况下,mean({ })相对较小,而var({ })在这两种情况下相对较大。从III-C节的讨论中,我们应该得出结论,两种算法都符合一个共同的原因。此外,所有的数值都在第四节中固定的阈值范围内,补充材料中报告了共同原因的情况。我们的结论是,两个算法都在 "周长 "和 "紧凑性 "之间返回了一个共同的原因,与地面真相一致。图5(b)中给出了该数据的图。
接下来我们考虑来自[33]的AutoMPG数据集。在这里,属性 "加速度 "和 "每加仑英里数"(MPG)是相关的,但有一个共同的原因,即车型年份。这一点可以通过在 "加速度 "和 "MPG "之间进行给定车型年份的条件性挂起测试来检验。当应用于此数据时,modKCDC返回mean({ }) = 0.639和var({ }) = 0.086,modIGCI产生mean({ }) = 0.124和var({ }) = 0.00062。根据补充材料中报告的阈值,我们得出结论,modKCDC在 "加速度 "和 "MPG "之间返回了一个共同原因。虽然modIGCI返回了一个低的mean({ })值--这表明了一个共同原因--但它的var({ })值也很低,一般来说,这与一个共同原因不一致。鉴于这种相对较大的大小差异,按照III-C节末尾的讨论,我们可以得出结论,modIGCI的输出与 "加速度 "和 "MPG "之间的共同原因是一致的。图5(c)中给出了一个图。
V. 结论
我们设计了一种方法,将一个纯粹的定向因果分析算法变成一个也能检测潜在的共同原因的算法。在我们的实验中,我们采用了KCDC[7]和IGCI[11],它们都可以区分有向原因,但不能检测潜在的共同原因,并表明我们的方法能够检测潜在的共同原因,同时保持区分有向原因的准确性。