有效信息

来自集智百科 - 复杂系统|人工智能|复杂科学|复杂网络|自组织
跳到导航 跳到搜索

有效信息(Effective Information,简称EI)是因果涌现 Causal Emergence理论中的一个核心概念,它可以用来衡量一个马尔科夫动力学的因果效应的强度。这里,一个马尔科夫动力学的因果效应是指这个系统的上一时刻是如何通过动力学以因果的方式对下一个状态产生影响的。具体地,这种因果效应可以通过强制干预系统处于上一时刻的状态为均匀分布或最大熵分布,从而观察系统经由动力学的作用产生的下一时刻的状态分布,那么在这种干预下,上一时刻和下一时刻状态之间的互信息就被定义为有效信息。尽管在有效信息的定义中引入了do操作,但是本质上这一操作是一种名义上的do操作,目的是为了切断与状态本身分布的联系,从而刻画出系统的动力学特性。另外,有效信息通常可以分解为两个部分:确定性(Determinism)和简并性(Degeneracy)。确定性是指,经过动力学的作用,前一时刻的系统状态会唯一确定性地导致下一时刻的系统某一状态的发生的程度;简并性是指:当我们观察到系统的当前状态,就能够唯一确定地推断出系统在上一时刻是处于什么状态的程度。

历史渊源

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

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

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

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

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

简介

有效信息(EI)指标主要用来度量马尔科夫动力学的因果效应强度。然而,与一般的因果度量指标不同,EI度量主要用于动力学(马尔科夫的转移概率矩阵)已知,且不存在着未知变量的情况,且其核心目标是度量因果变量彼此之间的因果关联强度,而并非是否存在因果效应。也就是说,EI主要应用于已知X和Y存在着因果关系的场合,并且这种因果相互作用的机制是已知的情形,EI度量的是这一因果相互作用关系的强弱。

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

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

这里,X是因变量,Y是果变量,[math]do(X\sim U)[/math]表示对因变量X进行do干预,将X的分布变为均匀分布。在这一干预下,同时假设X到Y的因果机制(在马尔科夫链的情况下,就是转移概率矩阵)即f(X)保持不变,因此,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]

我们可以看到,第一个矩阵[math]P_1[/math]的EI比第二个[math]P_2[/math]的高,这是因为这一概率转移是一个完全确定性的转移,也就是从某一个状态出发,它会以100%的概率转移到另一个状态。然而,并不是所有的确定性转移的矩阵都会对应较大的EI,比如[math]P_3[/math]这个矩阵,虽然它的转移概率也是100%,但是因为所有后面三种状态都会转移到第1个状态,因此我们将无法区分如果我们观察到系统处于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]\tilde{X}[/math]代表被[math]do[/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因果阶梯理论,即变量之间的因果联系可以被划分为三种层次:关联-干预-反事实。直接对观测数据估测互信息,便是在度量关联程度;而如果我们能对变量做干预操作,即设定变量为某个值或服从某个分布,便上升到了干预的层级;反事实则是设想如果某变量不是当前取值,那么其他变量会是什么样。因此,阶梯层级越高,因果特征越明显。在EI的定义中引入了[math]do[/math]操作,则使得EI能够比互信息更能体现因果特征。

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


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

然而,值得指出的是,EI定义里面的do操作

为什么干预成均匀分布?

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

首先,根据上一小节的论述,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]X[/math]干预成均匀分布的时候。 如果不是均匀分布,也就意味着某些行的熵就会被乘以一个较大的权重,有的行就会被赋予一个较小的权重,因此也就不能做到让EI能够反映因果机制的天然属性。

马尔科夫链的有效信息

马尔科夫链简介

在本小节中,所有的马尔科夫转移概率矩阵都表示为[math]P[/math]。另外,由于是离散状态,所以所有的[math]\log[/math]都表示以2为底的对数运算,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]中的总状态数。

下表展示的是三个不同的转移概率矩阵:

马尔科夫链示例
[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]写成[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]中的状态的数量。那么归一化后的EI便等于:

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

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

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

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

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

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

确定性和简并性

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]。它能刻画整个转移矩阵的确定性:也就是说如果我们知道了系统当前时刻所处的状态,则我们能够确定性地推断出系统在下一时刻所处的状态。为什么这么说呢?这是因为确定性这一项是所有行向量熵的平均值,再取一个负号。我们知道,当一个向量更靠近均匀分布的时候,它的熵就最大,相反,如果一个向量越靠近一个“独热”(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]。这里的“简并性”的含义是:如果知道了系统的当前状态,能不能反推系统在上一时刻的状态的能力,如果可以推断,则这个马尔科夫矩阵的简并性就会比较低,也就是非简并的;而如果很难推断,则马尔科夫矩阵就是简并的,也即退化的。为什么“简并性”可以用平均行向量分布的负熵来刻画呢?这是因为,首先,当所有的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等人的原始论文中,作者们定义的确定性和简并性是以归一化的形式呈现的,也就是将确定性和简并性除以了一个与系统尺度有关的量。为了区分,我们将归一化的对应量称为确定性系数和简并性系数。

具体地,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}\frac{p_{ij}}{N}\sum_j\log{\left(\sum_k p_{k,j}\right)} \end{aligned} }[/math]

注意,在这个归一化的定义中,确定度系数中的log项包含着N,与非归一化定义中的定义不同。其实,这个[math]\log N[/math]原本是出现在简并性这一项之中的。

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

EI的函数性质

一阶导数及最小值

由公式2可以看出,在概率转移矩阵TPM上,EI是关于矩阵中每一个元素(从某一状态到另一状态的条件概率)的函数,于是我们自然会问:这样一个函数具有哪些数学性质?不难看出,该函数是光滑可导,我们可以解析地写出它的一阶导数如下所示,

[math]\displaystyle{ \begin{equation} \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), \end{equation} }[/math]

其中,[math]\displaystyle{ p_{ij} }[/math]表示TPM中第i行第j列的条件概率,因为TPM每一行有归一化约束条件,所以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列条件概率的均值。令该式等于0,可以求得极值点:即对于任意的[math]\displaystyle{ 1\leq i\leq N, 1\leq j\leq N-1 }[/math],都有下式的成立,

[math]\displaystyle{ \begin{equation} p_{ij}=\frac{1}{N}\sum_{k=1}^Np_{kj} \end{equation} }[/math]

不难计算出,此时[math]\displaystyle{ EI_{min}=0 }[/math],即EI达到了最小值。换个角度来看这个公式,这意味着EI的最小值点有很多个,只要TPM所有行向量完全一致,无论该行向量本身是怎样的分布,EI都会等于0.

二阶导数

进一步地,我们可以求出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}}, \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}}. \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]

最大值

通过前面确定性和简并性章节的讨论,我们知道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]成立。另一边,TPM的平均行向量的熵也有一个不等式成立,

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

其中等于号在满足[math]\displaystyle{ \bar{P}=\frac{1}{N}\cdot \mathbb{1} }[/math]条件时成立。当这两个式子的等号同时成立时,即[math]\displaystyle{ P_i }[/math]为独热变量同时[math]\displaystyle{ \bar{P} }[/math]为均匀分布时,EI会达到最大值。此时有[math]\displaystyle{ EI_{max}=0+\log N= \log N }[/math]

因果涌现

有了有效信息这一度量指标后,因果涌现的框架可以被呈现出来了。对于一个系统,观察者可以建立多尺度视角去观测,区分出微观和宏观。收集到的微观数据可以直接反映微观动力学,在经过粗粒化映射(coarse-graining)后,由微观变量得到对应的宏观变量,也自然会有相应的宏观动力学。对两个动力学分别可以计算EI,如果宏观EI大于微观EI,认为有因果涌现发生。

因果涌现示意图

这里有一个新的指标直接度量因果涌现的程度:

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

这里[math]P_m[/math]为微观状态的马尔科夫概率转移矩阵,维度为:[math]N\times N[/math],这里N为微观的状态数;而[math]P_M[/math]为对[math]P_m[/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消除了系统尺寸的影响,因此因果涌现度量更大。

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

我们考虑一个最简单的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] 的tpm 的 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 的变化。

计算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 total EI
   ei_all = ei_x.mean()
   return ei_all

连续变量的EI

随机映射系统

现实中大部分系统都要在连续空间上考虑,所以很有必要将EI的概念拓展到连续系统上。最初Erik Hoel考虑到了这一点,提出了因果几何,旨在对形如[math]\displaystyle{ y=f(x)+\varepsilon, \varepsilon\sim\mathcal{N}(0,\epsilon^2) }[/math]的动力学能够度量有效信息的大小。然而连续变量的信息度量和离散上的信息指标性质很不相同,经过数学推导,我们发现连续变量的有效信息依赖于观测噪音以及干预噪音。其数学形式如下所示。

[math]\displaystyle{ EI\approx -\frac{1}{2}\int_{-1/2}^{1/2}\ln\left[\left(\frac{\epsilon}{f'(x)}\right)^2+\delta^2\right]dx. }[/math]

其中[math]\displaystyle{ \epsilon }[/math][math]\displaystyle{ \delta }[/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]的条件高斯分布,我们可以给出神经网络有效信息的一般计算公式:

  1. [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+nln(2\pi)+\sum_{i=1}^nln\sigma_i^2}2+nln(2L)+\operatorname{E}_{x\sim U([-L,L]^n)}(ln|det(\partial_{x^{\prime}}f(x)))|)\end{gathered} }[/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与动力学可逆性

参考文献

Hoel, E. 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. https://doi.org/10.1073/pnas.1314922110

Tononi, G., & Sporns, O. (2003). Measuring information integration. BMC Neuroscience.

Yuan, B., Zhang, J., Lyu, A., Wu, J., Wang, Z., Yang, M., Liu, K., Mou, M., & Cui, P. (2024). Emergence and Causality in Complex Systems: A Survey of Causal Emergence and Related Quantitative Studies. Entropy, 26(2), 108. https://doi.org/10.3390/e26020108