“有效信息”的版本间的差异

来自集智百科 - 复杂系统|人工智能|复杂科学|复杂网络|自组织
跳到导航 跳到搜索
→‎归一化的确定性与简并性 公式修改
第925行: 第925行:
 
|<ref name="hoel_2013" />
 
|<ref name="hoel_2013" />
 
|-
 
|-
|Suppes度量
+
|Galton度量
 
|<math>
 
|<math>
P(e|c) - P(e|C)
+
P(c)P(C\backslash c)(P(e|c) - P(e|C\backslash c))
 
</math>
 
</math>
 
|<math>
 
|<math>
suff + nec' - 1
+
P(c)P(C\backslash c)(suff + nec - 1)
 
</math>
 
</math>
|<ref>Suppes, P. (1973). A probabilistic theory of causality. ''British Journal for the Philosophy of Science'', ''24''(4).</ref>
+
|<ref>Fitelson, B., & Hitchcock, C. (2011). ''Probabilistic measures of causal strength'' (pp. 600-627). na.</ref>
 
|-
 
|-
|Galton度量
+
|Suppes度量
 
|<math>
 
|<math>
P(c)P(C\backslash c)(P(e|c) - P(e|C\backslash c))
+
P(e|c) - P(e|C)
 
</math>
 
</math>
 
|<math>
 
|<math>
P(c)P(C\backslash c)(suff + nec - 1)
+
suff + nec' - 1
 
</math>
 
</math>
|<ref>Fitelson, B., & Hitchcock, C. (2011). ''Probabilistic measures of causal strength'' (pp. 600-627). na.</ref>
+
|<ref>Suppes, P. (1973). A probabilistic theory of causality. ''British Journal for the Philosophy of Science'', ''24''(4).</ref>
 
|-
 
|-
 
|Eells度量(等同于Judea Pearl的充要概率PNS)
 
|Eells度量(等同于Judea Pearl的充要概率PNS)

2024年6月7日 (五) 18:03的版本

有效信息(Effective Information,简称EI)是因果涌现 Causal Emergence理论中的一个核心概念,它可以用来衡量一个马尔科夫动力学的因果效应的强度。这里,因果效应是指这个系统的上一时刻状态的概率分布是如何通过动力学对下一个时刻的状态分布产生影响的。具体地,这种因果效应可以通过强制干预系统处于上一时刻的状态分布为均匀分布,从而观察系统经由动力学的作用产生的下一时刻的状态分布是什么,那么在这种干预下,上一时刻和下一时刻状态分布之间的互信息就被定义为有效信息。尽管在有效信息的定义中引入了干预操作,但是本质上这是一种假想的干预,目的是为了切断因果度量与状态本身分布的联系,从而刻画出系统的动力学特性。另外,有效信息通常可以分解为两个部分:确定性(Determinism)和简并性(Degeneracy)。确定性是指,在动力学的作用下,我们根据系统前一时刻的状态会以多大程度预测它的下一时刻状态;简并性是指:我们能够以多大程度从下一时刻的状态预测上一时刻的状态。如果确定性越大,简并性越小,则系统的有效信息就会越大。在本页中,所有的[math]\log[/math]都表示以2为底的对数运算。

历史渊源

有效信息(effective informaion,EI)这个概念最早由Giulio Tononi等人在2003年提出[1],作为整合信息论中的一个关键指标。当一个系统各个组分之间具有很强的因果关联的时候,可以说这个系统便具备很高的整合程度,而有效信息:EI,便是用来度量这种因果关联程度的关键指标。

到了2013年,Giulio Tononi的学生Erik Hoel等人将有效信息这个概念进一步提炼出来,从而定量地刻画涌现,于是提出了因果涌现理论[2]。在这个理论中,Hoel使用了Judea Pearldo算子来改造一般的互信息指标[3],这使得EI本质上与互信息不同。互信息度量的是相关性,而有效信息因为引入了do算子,从而可以度量因果性。在这一文章中,作者们同时提出了归一化的有效信息指标Eff。

然而,传统的EI主要被用于具有离散状态的马尔科夫链上。为了能扩充到一般的实数域,P. Chvykov和E. Hoel于2020年合作提出了因果几何理论[4],将EI的定义扩充到了具备连续状态变量的函数映射上,并通过结合信息几何理论,探讨了EI的一种微扰形式,并与Fisher信息指标进行了比较,提出了因果几何的概念。然而,这一连续变量的EI计算方法需要假设方程中的正态分布随机变量的方差是无限小的,这一要求显然过于苛刻了。

到了2022年,为了解决一般前馈神经网络的EI计算问题,张江刘凯威又将因果几何中的连续变量的EI计算方法的方差限制去掉,探讨了EI的更一般形式[5]。然而,这种扩充仍然存在着一个缺陷,由于实数域上变量的均匀分布严格讲是定义在无穷大空间上的,为了避免遭遇无穷大,EI的计算中就会带着一个参数[math]L[/math],表示均匀分布的区间范围。为了避免这个缺陷,也为了在不同粗粒化程度上比较EI,作者们便提出了维度平均EI的概念,并发现由维度平均EI定义的因果涌现度量是一个仅与神经网络雅可比矩阵的行列式对数值期望与两个比较维度的随机变量方差有关的量,而与其它参量,如L无关,而且,维度平均EI也可以看作是一种归一化的EI,即Eff。

本质上讲,EI仅仅与一个马尔科夫动力系统动力学——也就是有关马尔科夫状态转移矩阵有关,而与状态变量的分布无关,然而,这一点在之前的文章中并没有被指出或刻意强调。在2024年的袁冰等人的综述文章,作者们进一步强调了这一点,并给出了EI仅依赖于马尔科夫状态转移矩阵的显式形式[6]张江等人在最新的讨论动力学可逆性因果涌现的文章中,又指出EI实际上是对底层马尔科夫状态转移矩阵可逆性的一种刻画,于是尝试直接刻画这种马尔科夫链的动力学可逆性以替代EI[7]

简介

有效信息(EI)指标主要用来度量马尔科夫动力学的因果效应强度。与一般的因果度量指标不同,EI主要用于动力学(马尔科夫的转移概率矩阵)已知,且不存在未知变量即混杂因子的情况。其核心目标是度量因果关联强度,而并非是否存在因果效应。也就是说,EI更适用于已经确知了因果变量X和Y之间存在着因果联系的场合。

更正式地,EI是因果机制(在离散状态的马尔科夫链中,是这个马尔科夫链的概率转移矩阵)的函数,而与其它因素无关。EI的正式定义为:

[math]\displaystyle{ EI(P)\equiv I(Y;X|do(X\sim U)) }[/math]

这里,X是因变量,Y是果变量,[math]do(X\sim U)[/math]表示对因变量X进行do干预,将X的分布变为均匀分布,P代表X到Y的因果机制,它是一个概率转移矩阵,即[math]p_{ij}\euiv Pr(Y=j|X=i)[/math]。在这一干预下,同时假设X到Y的因果机制P保持不变,那么,Y就会间接地受到X的do干预的影响而发生变化。则EI度量的是经过干预后的X和Y之间的互信息。

之所以引入do操作,目的是为了消除数据X的分布对EI的影响,以使得最后的EI度量仅仅是因果机制f的函数,而与数据X无关。

下面,给出三个马尔科夫链的例子,以及相应的EI数值也放到了下面:

马尔科夫链示例
P_1的状态转移图
P_2的状态转移图
P_3的状态转移图

[math]\displaystyle{ P_1=\begin{pmatrix} 0 &0 &1 &0& \\ 1 &0 &0 &0& \\ 0 &0 &0 &1& \\ 0 &1 &0 &0& \\ \end{pmatrix} }[/math],

[math]\displaystyle{ P_2=\begin{pmatrix} &1/3 &1/3 &1/3 &0& \\ &1/3 &1/3 &1/3 &0& \\ &1/3 &1/3 &1/3 &0& \\ &0 &0 &0 &1& \\ \end{pmatrix} }[/math],

[math]\displaystyle{ P_3=\begin{pmatrix} &0 &0 &1 &0& \\ &1 &0 &0 &0& \\ &1 &0 &0 &0& \\ &1 &0 &0 &0& \\ \end{pmatrix} }[/math].

[math]\begin{aligned}&EI(P_1)=2\ bits,\\&Det(P_1)=2\ bits,\\&Deg(P_1)=0\ bits\end{aligned}[/math] [math]\begin{aligned}&EI(P_2)=0.81\ bits,\\&Det(P_2)=0.81\ bits,\\&Deg(P_2)=0\ bits\end{aligned}[/math] [math]\begin{aligned}&EI(P_3)=0.81\ bits\\&Det(P_3)=2\ bits,\\&Deg(P_3)=1.19\ bits.\end{aligned}[/math]

 

 

 

 

(example)

我们可以看到,第一个矩阵[math]P_1[/math]的EI比第二个[math]P_2[/math]的高,这是因为这一概率转移是一个完全确定性的转移,也就是从某一个状态出发,它会以100%的概率转移到另一个状态。然而,并不是所有的确定性转移的矩阵都会对应较大的EI,比如[math]P_3[/math]这个矩阵,虽然它的转移概率也都是100%,但是因为所有后面三种状态都会转移到第1个状态,因此我们将无法区分它上一时刻是处于何种状态的。因此这种情况下它的EI也会比较低。我们称后一种情况存在着简并性。因此,如果一个转移矩阵具有较高的确定性和较低的简并性,则它的EI就会很高。进一步,存在如下对EI的分解:

[math]\displaystyle{ EI=Det-Deg }[/math]

这里,Det是对确定性(Determinism)的缩写,而Deg是对简并性(Degeneracy)的缩写,EI是二者之差。在上面的表格中,我们将矩阵所对应的Det和Deg数值也都列在了下面。

第一个转移概率矩阵是一个置换排列矩阵(Permutation),它是可逆的,因此确定性最高,没有简并性,因而EI最大;第二个矩阵的前三个状态都会以1/3的概率跳转到彼此,因此确定性程度最低,而简并性也很低,EI是0.81;第三个矩阵虽然也是确定性的矩阵,因而确定性最高,但是由于后三个状态都跳转到1,因此,从1状态不能推知它来自于哪个状态,因此简并性最高,最终的EI与第二个相同,仍然是0.81。


下面,我们将进行更详细地讲解。

Do形式及解释

原始的有效信息是定义在离散的马尔科夫链上的。然而,为了能够更广泛地应用,在这里我们探讨有效信息的更一般的形式。

形式定义

考虑两个随机变量:[math]X[/math]和[math]Y[/math],分别代表因变量(Cause Variable)和果变量(Effect Variable),并且假定它们的取值区间分别是[math]\mathcal{X}[/math]和[math]\mathcal{Y}[/math]。同时,[math]X[/math]是通过因果机制[math]f[/math]影响[math]Y[/math]的。所谓的因果机制是指在给定[math]X[/math]取值[math]x\in \mathcal{X}[/math]的情况下,[math]Y[/math]在[math]\mathcal{Y}[/math]上取任意值[math]y\in \mathcal{Y}[/math]的条件概率:

[math]\displaystyle{ f\equiv Pr(Y=y|X=x) }[/math]

则针对这个因果机制[math]f[/math],它所对应的有效信息EI的定义为:


[math]\displaystyle{ EI\equiv I(X:Y|do(X\sim U(\mathcal{X})))=I(\tilde{X}:\tilde{Y}) }[/math]


这里,[math]do(X\sim U(\mathcal{X}))[/math]代表对[math]X[/math]实施do干预(或称do操作),使其服从[math]\mathcal{X}[/math]上的均匀分布[math]U(\mathcal{X})[/math],也即是最大熵分布。[math]\tilde{X}[/math]与[math]\tilde{Y}[/math]分别代表在经过[math]do[/math]干预后的[math]X[/math]和[math]Y[/math]变量,其中,

[math]\displaystyle{ Pr(\tilde{X}=x)=\frac{1}{\#(\mathcal{X})}, }[/math]

也就是,经过干预后的变量[math]X[/math]与干预前的变量[math]\tilde{X}[/math]之间的最大区别就在于分布不同:[math]\tilde{X}[/math]服从[math]\mathcal{X}[/math]上的均匀分布,而[math]X[/math]则可能是任意的分布。这里[math]\#(\mathcal{X})[/math]代表集合[math]\mathcal{X}[/math]的基数。对于有限元素集合来说,这就是集合中元素的个数。

在这个干预中,我们要始终保持因果机制[math]f[/math]不变,这就会导致[math]Y[/math]的概率分布发生变化,即被间接干预成为:

[math]\displaystyle{ Pr(\tilde{Y}=y)=\sum_{x\in \mathcal{X}}Pr(X=x) Pr(Y=y|X=x)=\sum_{x\in \mathcal{X}} \frac{Pr(Y=y|X=x)}{\#(\mathcal{X})}. }[/math]

其中,[math]\tilde{Y}[/math]则代表:在保持因果机制[math]f[/math]不变的情况下,[math]Y[/math]变量被[math]X[/math]的do干预所间接改变的变量,这种变化主要体现在概率分布的变化上。

因此,所谓一个因果机制[math]f[/math]的有效信息EI,就是被干预后的因变量[math]\tilde{X}[/math]和果变量[math]\tilde{Y}[/math]之间的互信息

为什么要使用do算子?

不难看出,尽管EI本质上就是互信息,但是与传统信息论中的互信息不同,有效信息EI在定义中包含了do操作,即对输入变量做了一个干预操作。为什么要引入这一操作呢?

根据Judea Pearl因果阶梯理论[3],即变量之间的因果联系可以被划分为三种层次:关联-干预-反事实。阶梯层级越高,因果特征越明显。直接对观测数据估测互信息,便是在度量关联程度;而如果我们能对变量做干预操作,即设定变量为某个值或服从某个分布,便上升到了干预的层级。在EI的定义中引入了[math]do[/math]操作,则使得EI能够比互信息更能体现因果特征。

而从实际意义上来讲,在EI的计算中引入do算子,则可以把数据和动力学分开,从而消除数据分布(即[math]X[/math]的分布)对EI度量所带来的影响。事实上,在一般的因果图上,do算子是一种消除指向被干预变量所有的因果箭头的操作,这种操作可以避免混杂因子造成的虚假关联。因此,EI定义中的do算子也可以消除所有指向因变量[math]X[/math]的因果箭头,包括其它变量(包括不可观测的变量)对[math]X[/math]的影响,从而使得EI更能够刻画动力学本身的特性。


do算子的引入让EI这个指标与其他信息度量指标截然不同,关键在于它是且仅是因果机制的函数,一方面这一特性使得它比其他指标(比如转移熵)更能抓住因果概念的本质,另一方面它需要我们能够已知或获取到因果机制,这在只有观测数据的情况下存在一定的困难。

为什么干预成均匀分布?

Erik Hoel的原始定义中,do操作是将因变量[math]X[/math]干预成了在其定义域[math]\mathcal{X}[/math]上的均匀分布(也就是最大熵分布[2][8]。那么, 为什么要干预成均匀分布呢?其它分布是否也可以?

首先,根据上一小节的论述,do操作的实质是希望让EI能够更清晰地刻画因果机制[math]f[/math]的性质,因此,需要切断因变量[math]X[/math]与其它变量的联系,并改变其分布,让EI度量与[math]X[/math]的分布无关。

而之所以要把输入变量干预为均匀分布,其实就是要更好地刻画因果机制的特性。为什么呢?

当[math]\mathcal{X}[/math]和[math]\mathcal{Y}[/math]都是有限可数集合的时候,因果机制[math]f\equiv Pr(Y=y|X=x)[/math]就成为了一个[math]\#(\mathcal{X})[/math]行[math]\#(\mathcal{Y})[/math]列的矩阵,我们可以展开EI的定义:

[math]\displaystyle{ \begin{aligned} EI &= I(X,Y|do(X)\sim U)= \sum_{x\in\mathcal{X}}\sum_{y\in\mathcal{Y}}Pr(X=x,Y=y)\log \frac{Pr(X=x,Y=y)}{Pr(X=x)Pr(Y=y)}\\ &= \sum_{x\in\mathcal{X}}\sum_{y\in\mathcal{Y}}Pr(X=x)Pr(Y=y|X=x)\log \frac{Pr(Y=y|X=x)}{Pr(Y=y)}\\ &= \sum_{x\in\mathcal{X}}\sum_{y\in\mathcal{Y}}Pr(X=x)Pr(Y=y|X=x)\log Pr(Y=y|X=x)- \sum_{x\in\mathcal{X}}\sum_{y\in\mathcal{Y}}Pr(X=x)Pr(Y=y|X=x)Pr(Y=y) \\ &=\frac{1}{\#(\mathcal{X})}\left(-\sum_{x\in\mathcal{X}}H(Pr(Y|X)\right) + H(Pr(Y)) \end{aligned} }[/math]

 

 

 

 

(1)

不难看出,最后得到的等式告诉我们,EI实际上由两项构成,第一项是因果机制矩阵每一行的负熵的平均值,第二项则是变量[math]Y[/math]的熵。 在第一项中,[math]X[/math]的概率分布[math]Pr(X=x)[/math]实际上起到了对每一行的熵求平均时候的权重的作用。只有当我们将该权重取为同样的数值的时候,才能够平等地对待因果机制矩阵中的每一个行,这时就恰好是将[math]X[/math]干预成均匀分布的时候。

如果不是均匀分布,也就意味着某些行的熵就会被乘以一个较大的权重,有的行就会被赋予一个较小的权重,这种权重代表了某种“偏见”,因此也就不能做到让EI能够反映因果机制的天然属性。

马尔科夫链的有效信息

马尔科夫链简介

在本小节中,所有的马尔科夫转移概率矩阵都表示为[math]P[/math]。N为总的状态数量。

最早,Erik Hoel等人是在离散状态的马尔科夫动力学,即马尔科夫链上提出有效信息这一度量因果性的指标的。因此,这一节中,我们介绍有效信息在马尔科夫链上的特殊形式。

所谓的马尔科夫链是指状态离散、时间离散的一种平稳随机过程,它的动力学一般都可以用所谓的转移概率矩阵(Transitional Probability Matrix),简称TPM来表示,有时也叫做概率转移矩阵状态概率转移矩阵状态转移矩阵

具体来讲,马尔科夫链包含一组随机变量[math]X_t[/math],它在状态空间[math]\mathcal{X}=\{1,2,\cdots,N\}[/math]上取值,其中[math]t[/math]往往表示时间。所谓的转移概率矩阵是指一个概率矩阵,其中第[math]i[/math]行,第[math]j[/math]列元素:[math]p_{ij}[/math]表示了系统在任意时刻[math]t[/math]在[math]i[/math]状态的条件下,在[math]t+1[/math]时刻跳转到[math]j[/math]状态的概率。同时,每一行满足归一化条件:

[math]\displaystyle{ \sum_{j=1}^Np_{ij}=1, }[/math]

状态转移矩阵可以看作是马尔科夫链动力学,这是因为,任意时刻[math]t+1[/math]上的状态概率分布,即[math]Pr(X_t)[/math],可以被上一时刻的状态概率分布,即[math]Pr(X_t)[/math]和状态转移矩阵所唯一确定,并满足关系:

[math]\displaystyle{ Pr(X_{t+1}=j)=\sum_{i=1}^N p_{ij}\cdot Pr(X_t=i), }[/math]

这里的[math]i,j\in \mathcal{X}[/math]都是[math]\mathcal{X}[/math]中的任意状态,且[math]N=\#(\mathcal{X})[/math]即[math]\mathcal{X}[/math]中的总状态数。

下表展示的是三个不同的转移概率矩阵,以及它们的EI数值:

马尔科夫链示例
[math]\displaystyle{ P_1=\begin{pmatrix} &0 &0 &1 &0& \\ &1 &0 &0 &0& \\ &0 &0 &0 &1& \\ &0 &1 &0 &0& \\ \end{pmatrix} }[/math],

[math]\displaystyle{ P_2=\begin{pmatrix} &1/3 &1/3 &1/3 &0& \\ &1/3 &1/3 &1/3 &0& \\ &0 &0 &0 &1& \\ &0 &0 &0 &1& \\ \end{pmatrix} }[/math],

[math]\displaystyle{ P_3=\begin{pmatrix} &1/4 &1/4 &1/4 &1/4& \\ &1/4 &1/4 &1/4 &1/4& \\ &1/4 &1/4 &1/4 &1/4& \\ &1/4 &1/4 &1/4 &1/4& \\ \end{pmatrix} }[/math].

[math]EI(P_1)=2[/math] bits [math]EI(P_2)=1[/math] bits [math]EI(P_3)=0[/math] bits


这三个马尔科夫链的状态空间都是[math]\mathcal{X}=\{1,2,3,4\}[/math],因此它们的TPM的大小都是[math]4\times 4[/math]。

马尔科夫链的EI

马尔科夫链中,任意时刻的状态变量[math]X_t[/math]都可以看作是原因,而下一时刻的状态变量[math]X_{t+1}[/math]就可以看作是结果,这样马尔科夫链状态转移矩阵就是它的因果机制。因此,我们可以将有效信息的定义套用到马尔科夫链上来。


[math]\displaystyle{ \begin{aligned} EI &= I(X_t,X_{t+1}|do(X_t)\sim U(\mathcal{X}))=I(\tilde{X}_t,\tilde{X}_{t+1}) \\ &= \sum^N_{i=1}\sum^N_{j=1}Pr(\tilde{X}_t=i,\tilde{X}_{t+1}=j)\log \frac{Pr(\tilde{X}_t=i,\tilde{X}_{t+1}=j)}{Pr(\tilde{X}_t=i)Pr(\tilde{X}_{t+1}=j)}\\ &= \sum^N_{i=1}Pr(\tilde{X}_t=i)\sum^N_{j=1}Pr(\tilde{X}_{t+1}=j|\tilde{X}_t=i)\log \frac{Pr(\tilde{X}_{t+1}=j|\tilde{X}_t=i)}{Pr(\tilde{X}_{t+1}=j)}\\ &= \frac{1}{N}\sum^N_{i=1}\sum^N_{j=1}p_{ij}\log\frac{N\cdot p_{ij}}{\sum_{k=1}^N p_{kj}} \end{aligned} }[/math]


其中[math]\displaystyle{ \tilde{X}_t,\tilde{X}_{t+1} }[/math]分别为把t时刻的[math]X_t[/math]干预均匀分布后,前后两个时刻的状态。[math]\displaystyle{ p_{ij} }[/math]为第i个状态转移到第j个状态的转移概率。从这个式子,不难看出,EI仅仅是概率转移矩阵[math]P[/math]的函数。

马尔科夫链EI的向量形式

我们也可以将转移概率矩阵[math]P[/math]写成[math]N[/math]个行向量拼接而成的形式,即:

[math]\displaystyle{ P=(P_1,P_2,\cdots,P_N)^T }[/math]

其中,[math]P_i[/math]矩阵[math]P[/math]的第[math]i[/math]个行向量,且满足条件概率的归一化条件:[math]||P_i||_1=1[/math],这里的[math]||\cdot||_1[/math]表示向量的1范数。那么EI可以写成如下的形式:

[math]\displaystyle{ \begin{aligned} EI &= \frac{1}{N}\sum^N_{i=1}\sum^N_{j=1}p_{ij}\log\frac{N\cdot p_{ij}}{\sum_{k=1}^N p_{kj}}\\ &=\frac{1}{N}\cdot \sum_{i=1}^N\left(P_i\cdot \log P_i - P_i\cdot\log \bar{P}\right)\\ &=\frac{1}{N}\sum_{i=1}^N D_{KL}(P_i||\bar{P}) \end{aligned} }[/math]

 

 

 

 

(2)

将矩阵每列求均值,可得到平均转移向量[math]\displaystyle{ \overline{P}=\sum_{k=1}^N P_k/N }[/math]。[math]D_{KL}[/math]便是两个分布的KL散度。因此,EI是转移矩阵每个行转移向量[math]P_i[/math]与平均转移向量[math]\bar{P}[/math]的KL散度的均值。

针对上面所列的三个状态转移矩阵,我们可以分别求出它们的EI为:2比特、1比特和0比特。由此可见,如果转移概率矩阵中出现更多的0或1,也就是行向量多是独热向量(也叫做one-hot向量,即某一个位置为1,其它位置为0的向量),则EI值就会更大。也就是说,如果在状态转移的过程中,从某一时刻到下一时刻的跳转越确定,则EI值就会倾向于越高。但是,这个观察并不十分精确,更精确的结论由后面的小节给出。

归一化

显然,EI的大小和状态空间大小有关,这一性质在我们比较不同尺度的马尔科夫链的时候非常不方便,我们需要一个尽可能不受尺度效应影响的因果效应度量。因此,我们需要对有效信息EI做一个归一化处理,得到和系统尺寸无关的一个量化指标。

根据Erik HoelTononi等人的工作,要用均匀分布最大熵分布下的熵值,即[math]\displaystyle{ \log N }[/math]来做分母对EI进行归一化,这里的[math]N[/math]为状态空间[math]\mathcal{X}[/math]中的状态的数量[2]。那么归一化后的EI便等于:

[math]\displaystyle{ Eff=\frac{EI}{\log N} }[/math]

进一步定义归一化指标也称为有效性(effectiveness)。

然而,在处理连续状态变量的时候,这种使用状态空间中状态数量的对数值进行归一化的处理方式并不是非常合适,因为这一状态数往往收到变量的维度和实数分辨率的影响。

确定性和简并性

EI的分解

根据公式1,我们发现,EI实际上可以被分解为两项,即:

[math]\displaystyle{ \begin{aligned} EI&=\frac{1}{\#(\mathcal{X})} (-\sum_{x\in\mathcal{X}}H(Pr(Y|X)) + H(Pr(Y))\\ \end{aligned} }[/math]

同样,在马尔科夫链的情景下,EI也可以做这样的分解:

[math]\displaystyle{ \begin{aligned} EI &= \frac{1}{N}\cdot \sum_{i=1}^N\left(P_i\cdot \log P_i - P_i\cdot\log \bar{P}\right)\\ &=\underbrace{-\langle H(P_i)\rangle}_{确定性项}+\underbrace{H(\bar{P})}_{非简并性项} \end{aligned} }[/math]

其中,第一项:[math]-\langle H(P_i)\rangle\equiv \frac{1}{N}\sum_{i=1}^N H(P_i)[/math]为每个行向量[math]P_i[/math]的负熵的平均值,它刻画了整个马尔科夫转移矩阵的确定性(determinism);

第二项:[math]H(\bar{P})[/math]为平均行向量的熵,其中[math]\bar{P}\equiv \frac{1}{N}\sum_{i=1}^N P_i [/math]为所有N个行向量的平均行向量,它刻画了整个马尔科夫转移矩阵的非简并性非退化性(non-degeneracy)。

确定性与简并性

然而上述定义中的确定性项和非简并性都是负数,为此,我们重新定义一个马尔科夫链转移矩阵P的确定性为:

[math]\displaystyle{ Determinism \equiv \log N - \langle H(P_i)\rangle = \frac{1}{N}\sum_{i=1}^N \sum_{j=1}^N p_{ij}\log \left(N\cdot p_{ij}\right) }[/math]

这一项是一个平均的负熵,为了防止其为负数,所以加上了[math]\log N[/math][2]。它能刻画整个转移矩阵的确定性:也就是说如果我们知道了系统当前时刻所处的状态,则我们能够推断出系统在下一时刻所处的状态的程度。为什么这么说呢?这是因为确定性这一项是所有行向量熵的平均值,再取一个负号。我们知道,当一个向量更靠近均匀分布的时候,它的熵就越大,相反,如果一个向量越靠近一个“独热”(one-hot)的向量,也就是这个向量中只有一个1,其它元素都是0,那么它的熵就越小。我们知道,马尔科夫概率转移矩阵的一个行向量的含义就代表系统从当前状态转移到各个不同状态的概率大小。那么,当平均的行向量负熵大的时候,也就是这个行向量的某一个单元概率为1,其它为0,这就意味着系统能够确定地转移到1对应的状态。

我们定义一个马尔科夫链转移矩阵P的简并性为:

[math]\displaystyle{ Degeneracy \equiv \log N - H(\bar{P})=\log N + \sum_{j=1}^N \bar{P}_{\cdot j}\log \bar{P}_{\cdot j}=\sum_{j=1}^N \frac{\sum_{i=1}^Np_{ij}}{N}\log \left(\sum_{i=1}^Np_{ij}\right) }[/math]

这一项为简并性或叫退化性,为了防止其为负数,所以加上了[math]\log N[/math][2]。这里的“简并性”的含义是:如果知道了系统的当前状态,能不能反推系统在上一时刻的状态的能力,如果可以推断,则这个马尔科夫矩阵的简并性就会比较低,也就是非简并的;而如果很难推断,则马尔科夫矩阵就是简并的,也即退化的。为什么“简并性”可以用平均行向量分布的负熵来刻画呢?这是因为,首先,当所有的P中的行向量都是彼此独立的独热向量,那么它们的平均分布就会非常接近于一个均匀分布,即[math]\bar{P}\approx (\frac{1}{N},\frac{1}{N},\cdots,\frac{1}{N})[/math],这个时候,它的Shannon熵最大,即[math]\log N[/math]。而在此时,这个马尔科夫转移矩阵是一个可逆矩阵(由彼此独立的“独热”向量形成的全体彼此线性无关,因此矩阵满秩,因此是可逆的)。这也就意味着,我们从系统当前的状态,是可以推断出系统的上一时刻的状态的,所以这个马尔科夫转移矩阵是非简并的,计算出的简并度恰恰也为0;

其次,当P中的行向量都是相同的独热向量的时候,则平均向量也是一个独热的向量,而这种向量的是最小的。在此时,由于所有的上一时刻状态都会转移到行向量中1对应的状态,因此我们也就很难推断出当前这个状态是由哪一个上一步的状态转移过来的。因此,这种情形下的马尔科夫矩阵是简并的(或退化的),计算出来的简并度则恰恰是[math]\log N[/math]。

对于更一般的情况,如果P中的行向量靠近一个彼此独立的独热行向量构成的矩阵,则P就越非简并,相反,如果行向量彼此相同且靠近同一个独热向量,则P就越简并。

举例

下面,我们以三个马尔科夫链为例,来考察它们的确定性和简并性

马尔科夫链示例
[math]\displaystyle{ P_1=\begin{pmatrix} &0 &0 &1 &0& \\ &1 &0 &0 &0& \\ &0 &0 &0 &1& \\ &0 &1 &0 &0& \\ \end{pmatrix} }[/math],

[math]\displaystyle{ P_2=\begin{pmatrix} &1/3 &1/3 &1/3 &0& \\ &1/3 &1/3 &1/3 &0& \\ &1/3 &1/3 &1/3 &0& \\ &0 &0 &0 &1& \\ \end{pmatrix} }[/math],

[math]\displaystyle{ P_3=\begin{pmatrix} &0 &0 &1 &0& \\ &1 &0 &0 &0& \\ &1 &0 &0 &0& \\ &1 &0 &0 &0& \\ \end{pmatrix} }[/math].

[math]\begin{aligned}&Det(P_1)=2\ bits,\\&Deg(P_1)=0\ bits,\\&EI(P_1)=2\ bits\end{aligned}[/math] [math]\begin{aligned}&Det(P_2)=0.81\ bits,\\&Deg(P_2)=0\ bits,\\&EI(P_2)=0.81\ bits\end{aligned}[/math] [math]\begin{aligned}&Det(P_3)=2\ bits,\\&Deg(P_3)=1.19\ bits,\\&EI(P_3)=0.81\ bits\end{aligned}[/math]

第一个转移概率矩阵是一个置换排列矩阵(Permutation),它是可逆的,因此确定性最高,没有简并性,因而EI最大;第二个矩阵的前三个状态都会以1/3的概率跳转到彼此,因此确定性程度最低,而非简并,EI是0.81;第三个矩阵虽然也是确定性的矩阵,因而确定性最高,但是由于后三个状态都跳转到1,因此,从1状态不能推知它来自于哪个状态,因此简并性最高,最终的EI与第二个相同,仍然是0.81。

归一化的确定性与简并性

Erik Hoel等人的原始论文中[2],作者们定义的确定性和简并性是以归一化的形式呈现的,也就是将确定性和简并性除以了一个与系统尺度有关的量。为了区分,我们将归一化的对应量称为确定性系数和简并性系数。

具体地,Erik Hoel等人将归一化后的有效信息,即Eff进行分解,分别对应确定性系数(determinism coefficient)和简并性系数(degeneracy coefficient)。

[math]\displaystyle{ Eff = Determinism\ Coefficient - Degeneracy\ Coefficient }[/math]

这两项的定义分别是:

[math]\displaystyle{ \begin{aligned} &Determinism\ Coeffient = \frac{1}{\log N}\sum_{i,j}p_{ij}\log\left(N\cdot {p_{ij}}\right) \\ &Degeneracy\ Coeffient = \frac{1}{\log N}\sum_{i}p_{ij}\sum_j\log{\left(\sum_k p_{k,j}\right)} \end{aligned} }[/math]

总之,确定性指的是,已知当前时刻状态概率分布,对未来可能状态的判断有多大的把握;而简并性指的是,已知当前的状态,追溯历史,我们能有多大确定性做出判断。如果有状态在动力学过程中发生简并,我们回溯历史时能运用的信息就会变少。当一个系统背后的动力学确定性高,同时简并性低时,说明这是一个具有明显因果效应的动力学。这就是EI本身的物理含义。

EI的函数性质

由公式2可以看出,在概率转移矩阵P上,EI是关于矩阵中每一个元素(从某一状态到另一状态的条件概率)的函数,于是我们自然会问:这样一个函数具有哪些数学性质?如它有没有极值点?极值点在哪里?凸性如何?最大值和最小值又是多少?

定义域

在离散状态和离散时间的马尔科夫链上,EI的定义域显然是概率转移矩阵P。P是一个由[math]N\times N[/math]个元素构成的矩阵,其中每一个元素[math]p_{ij}\in[0,1][/math]代表一个概率值,同时对于任意的行,这组概率值需要满足归一化条件,也就是对于任意的[math]\forall i\in[1,N][/math]:

[math]\displaystyle{ ||P_i||_1=\sum_{j=1}^N p_{ij}=1 }[/math]

 

 

 

 

(3)

因此EI的定义域,也就是P的可能空间并不是全部[math]N\times N[/math]维的实数空间[math]\mathcal{R}^{N^2}[/math],由于归一化条件3的存在,使得该定义域成为一个[math]N\times N[/math]维实数空间中的一个子空间。如何表达这个子空间呢?

首先,对于任意一个行向量[math]P_i[/math]来说,它的取值范围空间为N维实数空间中的一个超正多面体。例如,当[math]N=2[/math]的时候,该空间为一条直线:[math]p_{i,1}+p_{i,2}=1, \forall i\in\{1,2\}[/math]。当[math]N=3[/math]的时候,该空间为一张三维空间中的平面:[math]p_{i,1}+p_{i,2}+p_{i,3}=1, \forall i\in\{1,2,3\}[/math]。这两个空间如下图所示:

在一般情况,我们将N维空间下的行向量[math]P_i[/math]的取值范围空间定义为[math]\Delta=\{p_j|\sum_{j=1}^Np_j=1,p_j\in[0,1]\}[/math],则N个这样的空间的笛卡尔积即为EI的定义域:

[math]\displaystyle{ Dom(EI)=\Delta\times \Delta\cdots\times\Delta=\Delta^N }[/math]

一阶导数及极值点

对公式2求[math]p_{ij}[/math]的一阶导数,并注意到归一化条件[math]\sum_{j=1}^Np_{ij}=1[/math],则就可以得到:

[math]\displaystyle{ \frac{\partial EI}{\partial p_{ij}}=\log\left(\frac{p_{ij}}{p_{iN}}\right)-\log\left(\frac{\bar{p}_{\cdot j}}{\bar{p}_{\cdot N}}\right), }[/math]

 

 

 

 

(3)

其中,[math]\displaystyle{ p_{ij} }[/math]表示P中第i行第j列的条件概率,因为P每一行有归一化约束条件2,所以EI函数本身有[math]\displaystyle{ N(N-1) }[/math]个自由变元,我们可以取[math]\displaystyle{ 1\leq i\leq N, 1\leq j\leq N-1 }[/math][math]\displaystyle{ p_{iN} }[/math]表示第i行第N列的条件概率,[math]\displaystyle{ \bar{p}_{\cdot j}, \bar{p}_{\cdot N} }[/math]则分别表示第j列和第N列条件概率的均值。不难看出,该导数有定义的前提是对于选定的[math]i,j\in[1,N][/math],[math]p_{ij},p_{iN},\bar{p}_{\cdot j}\equiv \frac{\sum_{k=1}^Np_{kj}}{N},\bar{p}_{\cdot N}\equiv \frac{\sum_{k=1}^Np_{kN}}{N}[/math]都大于0,只有满足这个条件,则EI在[math]p_{ij}[/math]附近是可导的。否则,如果有一项为0,则导数不存在。

令式3等于0,可以求得极值点:即对于任意的[math]\displaystyle{ 1\leq i\leq N, 1\leq j\leq N-1 }[/math],都有下式的成立,

[math]\displaystyle{ p_{ij}=\bar{p}_{\cdot j}=\frac{1}{N}\sum_{k=1}^Np_{kj} }[/math]

不难计算出,此时[math]\displaystyle{ EI=0 }[/math],即EI达到了极值点。根据EI的二阶导数不难判断出,这是极小值点。换个角度来看这个公式,这意味着EI的极小值点有很多个,只要转移概率矩阵所有行向量完全一致,无论该行向量本身是怎样的分布,EI都会等于0。

二阶导数与凸性

进一步地,为了求得EI函数的凸性,我们可以求出EI这个函数的二阶导数[math]\displaystyle{ \frac{\partial^2 EI}{\partial p_{ij}\partial p_{st}} }[/math],其中[math]\displaystyle{ 1\leq s \leq N, 1\leq t \leq N-1 }[/math]。首先我们需要引入一个函数符号[math]\displaystyle{ \delta_{i,j} }[/math]

[math]\displaystyle{ \delta_{i,j} = \begin{cases} 0 & \text{if } i\ne j,\\ 1 & \text{if } i = j. \end{cases} }[/math]

于是我们可以来推导EI的二阶导数,当[math]\displaystyle{ i=s }[/math]时,

[math]\displaystyle{ \begin{equation} \begin{aligned} \frac{\partial^2 EI}{\partial p_{ij}\partial p_{it}}&=\frac{\delta_{j,t}}{N}\left(\frac{1}{p_{ij}}-\frac{1}{N\cdot \bar{p}_{\cdot j}}\right)+\frac{1}{N\cdot p_{iN}}-\frac{1}{N^2\cdot \bar{p}_{\cdot N}}\\ &=\delta_{j,t}\frac{\sum_{k=1}^{N-1}p_{k j}-p_{ij}}{N^2\cdot p_{ij}\cdot \bar{p}_{\cdot j}}+\frac{\sum_{k=1}^{N-1}p_{k N}-p_{iN}}{N^2\cdot p_{iN}\cdot \bar{p}_{\cdot N}}\\ &=\delta_{j,t}\frac{\sum_{k\neq i}p_{kj}}{N^2\cdot p_{ij}\cdot \bar{p}_{\cdot j}}+\frac{\sum_{k\neq i}p_{k N}}{N^2\cdot p_{iN}\cdot \bar{p}_{\cdot N}}\gt 0, \end{aligned} \end{equation} }[/math]

[math]\displaystyle{ i\ne s }[/math]时,

[math]\displaystyle{ \begin{equation} \frac{\partial^2 EI}{\partial p_{ij}\partial p_{st}}=-\frac{\delta_{j,t}}{N^2\cdot \bar{p}_{\cdot j}}-\frac{1}{N^2\cdot \bar{p}_{\cdot N}}\lt 0. \end{equation} }[/math]

综上,EI的二阶导数为,

[math]\displaystyle{ \begin{equation} \frac{\partial^2 EI}{\partial p_{ij}\partial p_{st}}=\frac{1}{N}\cdot\left(\frac{\delta_{i,s}\delta_{j,t}}{p_{ij}}+\frac{\delta_{i,s}}{p_{iN}}-\frac{\delta_{j,t}}{N\cdot\bar{p}_{\cdot j}}-\frac{1}{N\cdot \bar{p}_{\cdot N}}\right). \end{equation} }[/math]

并且,二阶导数在[math]\displaystyle{ i=s }[/math]的时候为正,在[math]\displaystyle{ i\ne s }[/math]时为负。因此EI既不是凸的也不是凹的。

最小值

前面已经根据EI的一阶导数讨论了它的极值问题。即EI会在所有行向量都是同一个向量的时候达到极小值0。那么,这个极小值是不是最小的呢?

我们知道,根据公式2,EI本质上是一种KL散度,而KL散度都是非负的,也就是说:

[math]\displaystyle{ EI\geq 0 }[/math]

这个不等式的等号在[math]p_{ij}=\bar{p}_{\cdot j}[/math]对所有的[math]i,j[/math]都成立的时候能够取到。因此,0是EI的最小值,且[math]p_{ij}=\bar{p}_{\cdot j}=\frac{1}{N}\sum_{k=1}^Np_{kj}[/math]是它的最小值点,即:

[math]\displaystyle{ EI_{min}=0. }[/math]

最大值

通过前面确定性和简并性章节的讨论,我们知道EI可以拆成两部分,

[math]\displaystyle{ EI = -\langle H(P_i)\rangle + H(\bar{P}), }[/math]

其中熵的定义是[math]\displaystyle{ H(P_i)=-\sum_{j=1}^Np_{ij}\log p_{ij} }[/math]。分开来看,前一项式子最大值为0,即:

[math]\displaystyle{ - H(P_i)\leq 0, }[/math]

[math]\displaystyle{ P_i }[/math]为没有不确定性的独热向量时,该式子的等号成立。所以,当对所有的i都有[math]\displaystyle{ P_i }[/math]为独热变量时,有

[math]\displaystyle{ -\langle H(P_i)\rangle=0 }[/math]

成立。另一边,P中所有行向量的平均向量的熵也有一个不等式成立,

[math]\displaystyle{ H(\bar{P})\leq \log N, }[/math]

其中等于号在满足[math]\displaystyle{ \bar{P}=\frac{1}{N}\cdot \mathbb{1} }[/math]条件时成立。

[math]\displaystyle{ EI\leq 0+\log N=\log N }[/math]

当这两个式子的等号同时成立时,即[math]\displaystyle{ P_i }[/math]为独热向量,同时[math]\displaystyle{ \bar{P} }[/math]为均匀分布时(此时必然要求[math]P_i[/math]彼此垂直,也就是P是一个排列置换矩阵),EI会达到最大值:

[math]\displaystyle{ EI_{max}=\log N }[/math]

最简马尔科夫链下的解析解

我们考虑一个最简单的2*2马尔科夫链矩阵:

[math]\displaystyle{ P=\begin{pmatrix}p & 1-p \\1-q & q\end{pmatrix}, }[/math]

其中 [math]p[/math] 和 [math]q[/math] 为取值 [math][0,1][/math] 的参数。

这个参数为[math]p[/math]和[math]q[/math]的转移概率矩阵的EI可以通过以下解析解计算:

[math]\displaystyle{ EI=\frac{1}{2}\left[p\log_2\frac{2p}{1+p-q}+(1-p)\log_2\frac{2(1-p)}{1-p+q}\right. + \left.(1-q)\log_2\frac{2(1-q)}{1+p-q}+q\log_2\frac{2q}{1-p+q}\right] }[/math]

下图展示了不同[math]p[/math] 和 [math]q[/math]取值的 EI 的变化。

由这张图不难看出,当p+q=1的时候,也就是所有行向量都相同的情形,EI取得最小值0。否则,随着p,q沿着垂直于p+q=1的方向增大,EI开始变大,而最大值为1.

因果涌现

有了有效信息这一度量指标后,我们便可以讨论马尔科夫链上的因果涌现了。对于一个马尔科夫链,观察者可以建立多尺度视角去观测,区分出微观和宏观。首先,原始的马尔科夫概率转移矩阵P即定义了微观动力学;其次,经过对微观态的粗粒化映射(coarse-graining)后(通常反映为对微观状态的分组),观察者可以得到对应的宏观状态(即分组),这些宏观状态彼此之间的概率转移可以用宏观的马尔科夫概率转移矩阵P'来刻画。对两个动力学分别可以计算EI,如果宏观的EI大于微观EI,我们说该系统发生了因果涌现。

因果涌现示意图

可以定义一个新的指标直接度量因果涌现的程度:

[math]\displaystyle{ CE = EI(P') - EI(P) }[/math]

这里[math]P[/math]为微观状态的马尔科夫概率转移矩阵,维度为:[math]N\times N[/math],这里N为微观的状态数;而[math]P'[/math]为对[math]P[/math]做粗粒化操作之后得到的宏观态的马尔科夫概率转移矩阵,维度为[math]M\times M[/math],其中[math]M<N[/math]为宏观状态数。

关于如何对马尔科夫概率转移矩阵实施粗粒化的方法,往往体现为两步:1、对微观状态做归并,将N个微观态,归并为M个宏观态;2、对马尔科夫转移矩阵做约简。关于具体的粗粒化马尔科夫链的方法,请参考马尔科夫链的粗粒化

如果计算得出的CE>0,则称该系统发生了因果涌现,否则没有发生。

下面,我们展示一个具体的因果涌现的例子:

马尔科夫链示例

[math]\displaystyle{ P_m=\begin{pmatrix} &1/3 &1/3 &1/3 &0& \\ &1/3 &1/3 &1/3 &0& \\ &1/3 &1/3 &1/3 &0& \\ &0 &1 &0 &1& \\ \end{pmatrix} }[/math],

[math]\displaystyle{ P_M=\begin{pmatrix} &1 &0 & \\ &0 &1 & \\ \end{pmatrix} }[/math].

[math]\begin{aligned}&Det(P_m)=0.81\ bits,\\&Deg(P_m)=0\ bits,\\&EI(P_m)=0.81\ bits\end{aligned}[/math] [math]\begin{aligned}&Det(P_M)=1\ bits,\\&Deg(P_M)=0\ bits,\\&EI(P_M)=1\ bits\end{aligned}[/math]

在这个例子中,微观态的转移矩阵是一个4*4的矩阵,其中前三个状态彼此以1/3的概率相互转移,这导致该转移矩阵具有较小的确定性,因此EI也不是很大为0.81。然而,当我们对该矩阵进行粗粒化,也就是把前三个状态合并为一个状态a,而最后一个状态转变为一个宏观态b。这样所有的原本三个微观态彼此之间的转移就变成了宏观态a到a内部的转移了。因此,转移概率矩阵也就变成了[math]P_M[/math]。在这个例子中,可以计算它的因果涌现度量为:

[math]\displaystyle{ CE=EI(P_M)-EI(P_m)=1-0.81=0.19\ bits }[/math]

即存在着0.19比特的因果涌现。

有时,我们也会根据归一化的EI来计算因果涌现度量,即:

[math]\displaystyle{ ce=Eff(P_M)-Eff(P_m)=1-0.405=0.595 }[/math]

由此可见,由于归一化的EI消除了系统尺寸的影响,因此因果涌现度量更大。

计算EI的源代码

这是计算一个马尔科夫概率转移矩阵的Python源代码。输入tpm为一个满足行归一化条件的马尔科夫概率转移矩阵,返回的ei_all为其EI值,其余两项分别为确定性系数简并性系数

python:

def tpm_ei(tpm, log_base = 2):
    # marginal distribution of y given x ~ Unifrom Dist
    puy = tpm.sum(axis=0)
    n = tpm.shape[0]
    
    # replace 0 to a small positive number to avoid log error
    eps = 1E-10
    tpm_e = np.where(tpm==0, eps, tpm)
    puy_e = np.where(tpm==0, eps, puy)
    
    # calculate EI of specific x
    ei_x = (np.log2(n * tpm_e / puy_e) / np.log2(log_base)  * tpm).sum(axis=1)
    
    # calculate det and deg
    det = np.log2(n) + (tpm * np.log2(tpm_e)).sum(axis=1).mean(axis=0)
    deg = np.log2(n) + (tpm.mean(axis=0) * np.log2(tpm_e.mean(axis=0))).sum()
    
    # calculate total EI
    ei_all = ei_x.mean()
    return ei_all,det/np.log2(log_base),deg/np.log2(log_base)

连续变量的EI

现实中大部分系统都要在连续空间上考虑,所以很有必要将EI的概念拓展到连续系统上。

这种扩展的核心思想是将连续空间中的因果机制简化为一个确定性的函数映射[math]f(X)[/math]再加上一个噪声随机变量[math]\xi[/math]。而且,在下面列举的情形中,[math]\xi\sim \mathcal{N}(0,\Sigma)[/math],即满足高斯分布,这样便可求得EI的解析表达式。对于更一般的情况,尚没有文献进行讨论。

随机函数映射

最初Erik Hoel考虑到了这一点,提出了因果几何[9]框架,它不仅率先讨论了随机函数映射的EI计算问题,同时还引入了干预噪音和因果几何的概念,并等级地定义了EI的局部形式,并将这种形式与信息几何进行了对照和类比。下面,我们分别从一维函数映射、多维函数映射,和EI的局部形式来分别进行讨论。

一维函数映射

首先,我们考虑最简单的情况:

[math]\displaystyle{ y=f(x)+\varepsilon, \varepsilon\sim\mathcal{N}(0,\sigma^2) }[/math]

其中,[math]x,y\in \mathcal{R}[/math]都是一维实数变量。按照有效信息的定义,我们需要对变量x进行干预,使其满足在其定义域空间上的均匀分布。如果x的定义域为一个固定的区间,如[a,b],其中a,b都是实数,那么x的概率密度函数就是[math]1/(b-a)[/math]。然而,当x的定义域为全体实数的时候,区间成为了无穷大,而x的概率密度函数就成为了无穷小。

为了解决这个问题,我们假设x的定义域不是整个实数空间,而是一个足够大的区域:[math][-L/2,L/2][/math],其中L为该区间的大小。这样,该区域上的均匀分布的密度函数为:[math]1/L[/math],从而实施有效信息的计算。我们希望当[math]L\rightarrow +\infty[/math]的时候,EI能够收敛到一个有限的数。然而,实际的EI是一个和x定义域大小有关的量,所以EI是参数L的函数。这一点可以从EI的定义中看出:

[math]\displaystyle{ \begin{aligned} EI&=I(y;x|do(x\sim U[-L/2,L/2]))\\ &=\int_{-\frac{L}{2}}^{\frac{L}{2}}\int_{f([-\frac{L}{2},\frac{L}{2}])}p(x)p(y|x)\ln\frac{p(y|x)}{p(y)}dydx\\ &=\int_{-\frac{L}{2}}^{\frac{L}{2}}\int_{f([-\frac{L}{2},\frac{L}{2}])}p(x)p(y|x)\ln p(y|x)dydx -\int_{-\frac{L}{2}}^{\frac{L}{2}}\int_{f([-\frac{L}{2},\frac{L}{2}])}p(x)p(y|x)\ln p(y)dydx \end{aligned} }[/math]

 

 

 

 

(4)

这里,[math]p(y|x)=\frac{1}{\sigma\sqrt{2\pi}}\exp\left(-\frac{(y-f(x))^2}{\sigma^2}\right)[/math]为给定x的条件下,y的条件概率密度函数。由于[math]\varepsilon[/math]服从均值为0,方差为[math]\sigma^2[/math]的正态分布,所以[math]y=f(x)+\varepsilon[/math]就服从均值为[math]f(x)[/math],方差为[math]\sigma^2[/math]的正态分布。

y的积分区间为:[math]f([-\frac{L}{L},\frac{L}{2}])[/math],即将x的定义域[math][-\frac{L}{2},\frac{L}{2}][/math]经过f的映射,形成y上的区间范围。

[math]p(y)=\int_{-\frac{L}{2}}^{\frac{L}{2}}\frac{1}{\sigma\sqrt{2\pi}}\exp\left(-\frac{(y-f(x))^2}{\sigma^2}\right)dx[/math]为y的概率密度函数,它也可以由联合概率密度函数[math]p(x,y)=p(x)p(y|x)[/math]对x进行积分得到。

由于L很大,所以区间[math][-\frac{L}{2},\frac{L}{2}][/math],进而假设区间[math]f([-\frac{L}{L},\frac{L}{2}])[/math]也很大。这就使得,上述积分的积分上下界可以近似取到无穷大,也就有4中的第一项为:

[math]\displaystyle{ \begin{aligned} \int_{-\frac{L}{2}}^{\frac{L}{2}}\int_{f([-\frac{L}{2},\frac{L}{2}])}p(x)p(y|x)\ln p(y|x)dydx&\approx \int_{-\frac{L}{2}}^{\frac{L}{2}}\int_{-\infty}^{\infty}p(x)p(y|x)\ln p(y|x)dydx\\ &=\int_{-\frac{L}{2}}^{\frac{L}{2}}\int_{-\infty}^{\infty}\frac{1}{L}\frac{1}{\sigma\sqrt{2\pi}}\exp\left(-\frac{(y-f(x))^2}{\sigma^2}\right)\ln\left[\frac{1}{\sigma\sqrt{2\pi}}\exp\left(-\frac{(y-f(x))^2}{\sigma^2}\right)\right]dydx\\ &=\ln(\frac{L}{\sqrt{2\pi e}}) \end{aligned} }[/math]

其中,最后一个等式是根据高斯分布函数的Shannon熵公式计算得出的。然而,要计算第二项,即使使用了积分区间为无穷大这个条件,仍然很难计算得出结果,为此,我们对函数f(x)进行一阶泰勒展开:

[math]\displaystyle{ f(x)\approx f(x_0)+f'(x_0)(x-x_0) }[/math]

因此,p(y)可以被近似计算:

[math]\displaystyle{ p(y)\approx \int_{-\infty}^{\infty}\frac{1}{L}\frac{1}{\sigma\sqrt{2\pi}}\exp\left(-\frac{(y-f(x_0)-f'(x_0)(x-x_0))^2}{\sigma^2}\right)dx\approx \frac{1}{L}\cdot\frac{1}{f'(x_0)} }[/math]

这样,4中的第二项近似为:

[math]\displaystyle{ \begin{aligned} \int_{-\frac{L}{2}}^{\frac{L}{2}}\int_{f([-\frac{L}{2},\frac{L}{2}])}p(x)p(y|x)\ln p(y)dydx\approx \frac{1}{2L}\int_{-\frac{L}{2}}^{\frac{L}{2}}\ln \left(\frac{f'(x)}{\sigma}\right)^2dx \end{aligned} }[/math]

高维情况

连续映射EI的表达式可以扩展到更高的维度,假设[math]\displaystyle{ \mathbf{x}\in[-L/2,L/2]^n\subset\mathcal{R}^n }[/math][math]\displaystyle{ \mathbf{y}\in\mathcal{R}^m }[/math],其中[math]\displaystyle{ n }[/math][math]\displaystyle{ m }[/math]是正整数。只存在观测噪声的情况下,EI可以推广为以下形式:

[math]\displaystyle{ EI\approx \ln\left(\frac{L^n}{(2\pi e)^{m/2}}\right)+\frac{1}{2}\mathbb{E}_{\mathbf{x}\sim U ([-\frac{L}{2},\frac{L}{2}]^n)}\ln\left|\det\left(\frac{\partial_\mathbf{x} f(\mathbf{x})}{\Sigma^{1/2}}\right)\right|^2, }[/math]

其中[math]\displaystyle{ \Sigma }[/math]是高斯噪声[math]\displaystyle{ \varepsilon }[/math]的协方差矩阵,[math]\displaystyle{ U([-L,L]^n) }[/math]表示超立方体[math]\displaystyle{ [-L,L]^n }[/math]上的均匀分布,[math]\displaystyle{ |\cdot| }[/math]是绝对值运算,[math]\displaystyle{ \det }[/math]是行列式。

为了将信息几何推广到具有干预噪声和观测噪声的情况,需要引入一个新的维度为[math]\displaystyle{ l }[/math]的中间变量[math]\displaystyle{ \theta\subset\mathcal{R}^l }[/math],使得我们不能通过直接干预[math]\displaystyle{ \mathbf{x} }[/math]来控制[math]\displaystyle{ \mathbf{y} }[/math]。相反,我们可以干预[math]\displaystyle{ \mathbf{x} }[/math]以影响[math]\displaystyle{ \theta }[/math]并间接影响[math]\displaystyle{ \mathbf{y} }[/math]。因此,这三个变量形成了一个马尔可夫链:[math]\displaystyle{ \mathbf{x}\to\theta\to\mathbf{y} }[/math]

在这种情况下,可以获得两个流形:效应流形[math]\displaystyle{ \mathcal{M}_E=\{p(\mathbf{y}|\theta)\}_{\theta} }[/math]$$,度量为[math]\displaystyle{ g_{\mu\nu}=-\mathbb{E}_{p(\mathbf{y}|\theta)}\partial_{\mu}\partial_{\nu}\ln p(\mathbf{y}|\theta) }[/math];干预流形[math]\displaystyle{ \mathcal{M}_I=\{\tilde{q}(\mathbf{x}|\theta)\}_{\theta\in \Theta} }[/math],度量为[math]\displaystyle{ h_{\mu\nu}=-\mathbb{E}_{\tilde{q}(\mathbf{x}|\theta)}\partial_{\mu}\partial_{\nu}\ln \tilde{q}(\mathbf{x}|\theta) }[/math]。其中[math]\displaystyle{ \tilde{q}\equiv \frac{q(\theta|\mathbf{x})}{\int q(\theta|\mathbf{x})d\mathbf{x}} }[/math][math]\displaystyle{ \partial_{\mu}=\partial/\partial \theta_{\mu} }[/math]。效应和干预两个流形合在一起称为因果几何。

因果几何的EI计算公式为:

[math]\displaystyle{ EI_g=\ln\frac{V_I}{(2\pi e)^{n/2}}-\frac{1}{2V_I}\int_\Theta\sqrt{|\det(h_{\mu\nu})|} \ln\left|\det\left( I_n+\frac{h_{\mu\nu}}{g_{\mu\nu}}\right)\right|d^l\theta, }[/math]

维度平均的EI与因果涌现

神经信息压缩器(Neural information squeezer, NIS)的框架被提出时[5],作者们发明了另一种有效信息的归一化方式,即用连续马尔科夫动力系统的状态空间维数来归一化EI,从而解决连续状态变量上的EI比较问题,这一指标被称为维度求平均的有效信息(Dimension Averaged Effective Information,简称dEI)。其描述为:

[math]\displaystyle{ \mathcal{J}=\frac{EI}{D} }[/math]

这里,[math]D[/math]为状态空间的维度。可以证明,在离散的状态空间中,维度平均的EI有效性指标实际上是等价的。关于连续变量上的EI,我们将在下文进一步详述。

随机迭代系统

对于形如

[math]\displaystyle{ x_{t+1}=Ax_t+\varepsilon_t, A\in\mathcal{R}^{n\times n}, \varepsilon_t\sim\mathcal{N}(0,\Sigma), {\rm rk}(A)={\rm rk}(\Sigma)=n }[/math]

的迭代系统,设干预空间大小为[math]\displaystyle{ L }[/math],对于单步的映射我们可以得到有效信息

[math]\displaystyle{ \mathcal{J}(A,\Sigma)\equiv \frac{EI(A,\Sigma)}{n}=\frac{1}{n}\ln\displaystyle\frac{|\det(A)|L^n}{(2\pi e)^\frac{n}{2}\displaystyle \det(\Sigma)^\frac{1}{2}}=\ln\displaystyle\frac{|\det(A)|^\frac{1}{n}L}{(2\pi e)^\frac{1}{2}\displaystyle \det(\Sigma)^\frac{1}{2n}}. }[/math]

随机迭代系统的有效信息可以分解确定性和简并性为两项,

[math]\displaystyle{ \mathcal{J}=\mathcal{J}_1-\mathcal{J}_2 }[/math]

其中确定性

[math]\displaystyle{ \mathcal{J}_1\equiv-\left\lt H(p(x_{t+1}|x_t))\right\gt =-\ln\left[(2\pi e)^\frac{n}{2}\det(\Sigma)^\frac{1}{2}\right] }[/math]

描述系统前一时刻状态已知的情况下,后一时刻的随机性,确定性越强,随机性越小,越容易对系统未来趋势进行预测;

简并性

[math]\displaystyle{ \mathcal{J}_2\equiv-H(E_D(x_{t+1}))=-\ln\left(|det(A)|L^n\right) }[/math]

描述后一时刻已知的情况下,对前一时刻的可追溯性,简并性越弱,系统越容易推断系统以往的演化路径。

确定性越强,简并性越弱,有效信息则会越大,因果效应越强。

宏观有效信息与微观有效信息做差之后就可以得到随即迭代系统的因果涌现。而微观、宏观的确定性和简并性分别做差就可以得到确定性、简并性涌现。

前馈神经网络

针对复杂系统自动建模任务,我们往往使用神经网络来建模系统动力学。具体的,对于前馈神经网络来说,张江等人推导出了前馈神经网络有效信息的计算公式,其中神经网络的输入是[math]\displaystyle{ x(x_1,...,x_n) }[/math],输出是[math]\displaystyle{ y(y_1,...,y_n) }[/math],其中[math]\displaystyle{ y=f(x) }[/math][math]\displaystyle{ f }[/math]是由神经网络实现的确定性映射。通过将神经网络看作是给定输入[math]\displaystyle{ x }[/math]的条件高斯分布,我们可以给出神经网络有效信息的一般计算公式:

  • [math]\displaystyle{ \det(\partial_{x'}f(x))\neq0 }[/math]:

[math]\displaystyle{ \begin{gathered}EI(f)=I(do(x\sim U([-L,L]^n));y)\approx-\frac{n+n\ln(2\pi)+\sum_{i=1}^n\ln\sigma_i^2}2+n\ln(2L)+\operatorname{E}_{x\sim U([-L,L]^n)}(\ln|\det(\partial_{x^{\prime}}f(x)))|)\end{gathered} }[/math]

其中[math]\displaystyle{ U\left(\left[-L, L\right]^n\right) }[/math]表示范围在[math]\displaystyle{ \left[-L ,L\right] }[/math]上的[math]\displaystyle{ n }[/math]维均匀分布,[math]\displaystyle{ \sigma_i }[/math]是输出[math]\displaystyle{ y_i }[/math]的标准差,可以通过[math]\displaystyle{ y_i }[/math]的均方误差来估计,[math]\displaystyle{ \det }[/math]表示函数[math]\displaystyle{ f }[/math]的雅可比行列式

  • 当对于所有的[math]\displaystyle{ x }[/math][math]\displaystyle{ \partial_{x'}f(x) }[/math]为0矩阵时: [math]\displaystyle{ \begin{gathered}EI(f)\approx\end{gathered}0 }[/math]

EI与其它相关主题

EI与整合信息论

整合程度(或者叫整合信息能力)[math]\displaystyle{ \Phi }[/math],可以被定义为系统一个子集两个互补部分之间可交换的有效信息最小值。假如系统是X,S是X的一个子集,它被划分为两个部分,分别是A和B。A、B之间以及它们跟X中其余的部分都存在着相互作用和因果关系。

整合信息论中的划分

这时,我们可以度量这些因果关系的强弱。首先,我们来计算从A到B的有效信息,即让A服从最大熵分布时,度量A和B之间的互信息。

[math]\displaystyle{ EI(A\rightarrow B) = MI(A^{H^{max}}: B) }[/math]

如果A的不同状态会导致B有很不一样的变化,这个EI值会很高;反之,如果无论A怎么变,B都受到很少的影响,那么EI就会很低。显然,这种度量是有方向的,A对B的EI和B对A的EI可以很不同。我们可以把这两个方向的EI加在一起,得到S在某一个划分下的EI大小。

[math]\displaystyle{ EI(A\leftrightarrow B) = EI(A\rightarrow B) + EI(B\rightarrow A) }[/math]

遍历各种划分,如果存在某一个划分,使得EI为0,说明这个S可以被看做是两个因果独立的部分,所以整合程度也应该是0。从这种特殊例子中我们可以看出,我们应该关注所有划分中有效信息最小的那个。当然,不同划分会导致A和B的状态空间就不一样,所以应该做一个归一化处理,即除以A和B最大熵值中较小的那一个。于是,我们可以有一个最小信息划分(minimum information bipartition,MIB)。整合程度[math]\displaystyle{ \Phi }[/math]定义如下:

[math]\displaystyle{ \Phi(S) = EI(MIB(S)) }[/math]

EI与其它因果度量指标

在EI提出之前,有多个因果度量指标被提出。包括EI在内的这些因果度量指标都可以表达为两个基本要素的组合[10]。这两个基本要素被称为“因果元语”(Causal Primatives),分别是“充分性”和“必要性”。

因果元语的定义

[math]\displaystyle{ \begin{aligned} \text{充分性:}~~~&suff(e,c) = P(e|c) \\ \text{必要性:}~~~&nec(e,c) = 1 - P(e|C \backslash c) \end{aligned} }[/math]


其中[math]\displaystyle{ c }[/math][math]\displaystyle{ e }[/math]分别表示因事件(cause)和果事件(effect),[math]\displaystyle{ C }[/math]表示因事件的全部集合,[math]\displaystyle{ C \backslash c }[/math]则为因事件[math]\displaystyle{ c }[/math]的补集,即[math]\displaystyle{ c }[/math]之外的事件,也可记作[math]\displaystyle{ \lnot c }[/math]充分性表明当因发生时,果发生的概率,当[math]\displaystyle{ suff = 1 }[/math]时,因发生确定导致果发生;而必要性则衡量当因不发生时,果也不发生的概率;当[math]\displaystyle{ nec = 1 }[/math]时,因不发生则果一定不发生。

有些因果指标中的必要性表现为以下的变型形式,在此也给出定义:

[math]\displaystyle{ \begin{aligned} \text{必要性}' \text{:}~~~nec'(e,c) = 1 - P(e|C) \end{aligned} }[/math]

根据定义,当[math]\displaystyle{ c }[/math]为极小概率事件时,[math]\displaystyle{ nec(e,c) \approx nec^\dagger(e,c) }[/math]。当[math]\displaystyle{ C }[/math]为连续状态空间时,可认为两者等价。

注意:[math]\displaystyle{ nec' }[/math]的定义与文献[10]中定义的[math]\displaystyle{ nec^\dagger = P(e|C\backslash c) }[/math]不同,两者关系为[math]\displaystyle{ net' = 1 - nec^\dagger }[/math]

因果元语与确定性和简并性

如前所述,EI可被分解为确定性与简并性两项,这两项分别对应充分性和必要性的因果元语表达:

[math]\displaystyle{ \begin{aligned} determinism = 1 - \frac{\log_2{\frac{1}{suff}}}{\log_2{N}} \\ degeneracy = 1 - \frac{\log_2{\frac{1}{1 - nec'}}}{\log_2{N}} \end{aligned} }[/math]

可以看到,充分性和确定性之间,以及必要性和简并性之间存在单调映射关系。充分性越高,确定性也越高;必要性越高,简并性则越小。

因果度量指标的因果元语表示

因果度量指标的因果元语表现形式
因果指标 概率定义 因果元语定义 参考文献
有效信息EI [math]\displaystyle{ \log_2{\frac{P(e|c)}{P(e|C)}} }[/math] [math]\displaystyle{ \log_2\frac{suff}{1 - nec'} }[/math] [2]
Galton度量 [math]\displaystyle{ P(c)P(C\backslash c)(P(e|c) - P(e|C\backslash c)) }[/math] [math]\displaystyle{ P(c)P(C\backslash c)(suff + nec - 1) }[/math] [11]
Suppes度量 [math]\displaystyle{ P(e|c) - P(e|C) }[/math] [math]\displaystyle{ suff + nec' - 1 }[/math] [12]
Eells度量(等同于Judea Pearl的充要概率PNS) [math]\displaystyle{ P(e|c) - P(e|C\backslash c) }[/math] [math]\displaystyle{ suff + nec - 1 }[/math] [3][13]
Cheng度量(等同于Judea Pearl的充分概率PS) [math]\displaystyle{ \frac{P(e|c) - P(e|C\backslash c)}{1 - P(e|C\backslash c)} }[/math] [math]\displaystyle{ \frac{suff + nec - 1}{nec} }[/math] [3][14]
Lewis度量(等同于Judea Pearl的必要概率PN) [math]\displaystyle{ \frac{P(e|c) - P(e|C\backslash c)}{P(e|c)} }[/math] [math]\displaystyle{ \frac{suff + nec - 1}{suff} }[/math] [3][15]

EI与动力学可逆性

正如示例example中的马尔科夫链所示,当概率转移矩阵呈现为一种排列置换矩阵(Permutation matrix)的时候,EI会更大。

可以证明,排列置换矩阵是唯一一种能同时满足如下两个条件的矩阵:

1、矩阵是可逆的; 2、矩阵满足马尔科夫链的归一化条件,也就是对于任意的[math]i\in[1,N][/math]来说,[math]|P_i|_1=1[/math]

我们将这一性质称为动力学可逆性。因此,从某种程度上说,EI衡量的是马尔科夫链的一种动力学可逆性

需要注意的是,这里所说的马尔科夫链的动力学可逆性与通常意义下的马尔科夫链的可逆性是不等同的。前者的可逆性体现为马尔科夫概率转移矩阵的可逆性,也就是它针对状态空间中的每一个确定性状态的运算都是可逆的,所以也称其为动力学可逆的。但是,一般意义下的可逆的马尔科夫链并不要求转移矩阵是可逆的,而是要以稳态分布为时间反演对称的对称点,正向动力学运转下的状态分布与反向动力学运转下的状态分布完全一致,同时正反两种动力学都是在转移概率矩阵P下作用完成的。

由于排列置换矩阵过于特殊,我们需要能够衡量一般的马尔科夫概率转移矩阵与排列置换矩阵的靠近程度,以度量其近似动力学可逆性。在文献[7]中,作者们提出了一种用矩阵的Schatten范数来度量一个马尔科夫概率转移矩阵的近似动力学可逆性的方法,定义为:

[math]\displaystyle{ \Gamma_{\alpha}=\sum_{i=1}^N\sigma_i^{\alpha} }[/math]

这里,[math]\Gamma_{\alpha}[/math]为近似动力学可逆性指标,[math]\sigma_i[/math]为概率转移矩阵P的奇异值,并且按照从大到小的顺序排列,[math]\alpha\in(0,2)[/math]为一个指定的参数,它起到让[math]\Gamma_{\alpha}[/math]能够更多地反映确定性还是简并性这样一种权重或倾向性。事实上,不难看出,如果让[math]\alpha\rightarrow 0[/math],则[math]\Gamma_{\alpha}[/math]就退化成了矩阵P的秩,即:

[math]\displaystyle{ rank(P)=\sum_{i=1}^N\sigma_i^{0} }[/math]

矩阵的秩衡量的是矩阵P非退化(也就是可逆)的程度,与Degeneracy有着类似的效果。

而当[math]\alpha\rightarrow 2[/math],则[math]\Gamma_{\alpha}[/math]就退化成了矩阵P的Frobinius范数的平方,即:

[math]\displaystyle{ ||P||_F^2=\sum_{i=1}^N\sigma_i^{2} }[/math] 这一指标衡量的是矩阵P的确定性的程度,这是因为只有当矩阵P中的所有行向量都是独热向量(one-hot)的时候,[math]||P||_F[/math]才会最大,因此它与Determinism有着类似的衡量效果。

所以,当[math]\alpha\in(0,2)[/math]连续变化的时候,[math]\Gamma_{\alpha}[/math]就可以在简并性与确定性二者之间切换。通常情况下,我们取[math]\alpha=1[/math],这可以让[math]\Gamma_{\alpha}[/math]能够在确定性与简并性之间达到一种平衡。

在文献[7]中,作者们证明了EI与动力学可逆性[math]\Gamma_{\alpha}[/math]之间存在着一种近似的关系:

[math]\displaystyle{ EI\sim \log\Gamma_{\alpha} }[/math]

关于马尔科夫链的近似动力学可逆性的进一步讨论和说明,请参考词条:近似动力学可逆性,以及论文:[7]

参考文献

  1. Tononi, G.; Sporns, O. (2003). "Measuring information integration". BMC Neuroscience. 4 (31).
  2. 2.0 2.1 2.2 2.3 2.4 2.5 2.6 Hoel, Erik P.; Albantakis, L.; Tononi, G. (2013). "Quantifying causal emergence shows that macro can beat micro". Proceedings of the National Academy of Sciences. 110 (49): 19790–19795.
  3. 3.0 3.1 3.2 3.3 3.4 Judea Pearl; 刘礼; 杨矫云; 廖军; 李廉 (4 2022). 因果论——模型、推理和推断. 机械工业出版社. 
  4. Chvykov P; Hoel E. (2021). "Causal Geometry". Entropy. 23 (1): 24.
  5. 5.0 5.1 Zhang, Jiang; Liu, Kaiwei (2022). "Neural Information Squeezer for Causal Emergence". Entropy. 25 (1): 26.
  6. Yuan, Bing; Zhang, Jiang; Lyu, Aobo; Wu, Jiaying; Wang, Zhipeng; Yang, Mingzhe; Liu, Kaiwei; Mou, Muyun; Cui, Peng (2024). "Emergence and Causality in Complex Systems: A Survey of Causal Emergence and Related Quantitative Studies". Entropy. 26 (2): 108.
  7. 7.0 7.1 7.2 7.3 Jiang Zhang; Ruyi Tao; Keng Hou Leong; Mingzhe Yang; Bing Yuan (2024). "Dynamical reversibility and a new theory of causal emergence". {{cite journal}}: Cite journal requires |journal= (help)
  8. Hoel, E.P. (2017). "When the Map Is Better Than the Territory". Entropy. 19: 188.
  9. 引用错误:无效<ref>标签;未给name属性为causal_geometry的引用提供文字
  10. 10.0 10.1 Comolatti, R., & Hoel, E. (2022). Causal emergence is widespread across measures of causation. arXiv preprint arXiv:2202.01854.
  11. Fitelson, B., & Hitchcock, C. (2011). Probabilistic measures of causal strength (pp. 600-627). na.
  12. Suppes, P. (1973). A probabilistic theory of causality. British Journal for the Philosophy of Science, 24(4).
  13. Eells, E. (1991). Probabilistic causality (Vol. 1). Cambridge University Press.
  14. Cheng, P. W., & Novick, L. R. (1991). Causes versus enabling conditions. Cognition, 40(1-2), 83-120.
  15. Lewis, D. (1973). Causation. The journal of philosophy, 70(17), 556-567.