第21行: |
第21行: |
| | | |
| === 基于信息分解的因果涌现识别 === | | === 基于信息分解的因果涌现识别 === |
| + | |
| + | Rosas等学者通过信息分解来识别量化[[因果涌现]],但是信息分解框架中定义的信息原子难以计算,所以作者推导出只需要计算互信息的近似公式,提出了判定[[因果涌现]]发生的充分条件,即<math>\Psi_{t, t+1}(V) </math>,具体公式如下: |
| + | |
| + | <math>\Psi_{t, t+1}(V):=I\left(V_t ; V_{t+1}\right)-\sum_j I\left(X_t^j ; V_{t+1}\right) </math> |
| + | |
| + | 式中,<math>V </math>是给定的宏观状态,<math>V_t ; V_{t+1} </math>代表两个连续时间的宏观状态变量,<math>X_t^j </math>表示第 j 维t时刻的微观变量。 |
| + | |
| + | 当<math>\Psi_{t, t+1}(V) > 0 </math>,系统发生[[因果涌现]]。但当<math>\mathrm{\Psi}<0 </math>,我们不能确定系统是否发生[[因果涌现]]。 |
| + | [[文件:Rosas.png|右|无框]] |
| + | 需要指出的是,此方法是基于格兰杰因果,Hoel的方法基于Judea Pearl因果,且此方法只是互信息的组合,没有引入do干预。 |
| + | |
| + | 该方法避开讨论粗粒化策略,但是也存在很多缺点: |
| + | |
| + | 1)该方法只是基于互信息计算,且得到的仅仅是发生因果涌现的近似的充分条件; |
| + | |
| + | 2)该方法需要预设宏观变量,且对宏观变量的不同选择会对结果造成显著影响; |
| + | |
| + | 3)当系统具有大量冗余信息或具有许多变量时,该方法的计算复杂度仍然很高。 |
| + | |
| + | Kaplanis等人基于机器学习的方法学习宏观态<math>V</math>以及最大化<math>\mathrm{\Psi} </math>:使用<math>f_{\theta}</math>神经网络来学习将微观输入<math>X_t</math>粗粒化成宏观输出<math>V_t</math>,同时使用神经网络<math>g_{\phi}</math>和<math>h_{\xi}</math>来分别学习<math>I(V_t;V_{t+1})</math>和<math>\sum_i(I(V_{t+1};X_{t}^i))</math>两者互信息的计算,最后通过最大化两者之间的差(即<math>\mathrm{\Psi} </math>)来优化学习。 ''<u>(暂定)</u>'' |
| + | |
| + | <nowiki>*******</nowiki> |
| | | |
| Rosas等学者通过将过量熵(excess entropy)分解成不重叠的部分来识别量化因果涌现,且提出了判定因果涌现发生的充分条件。 | | Rosas等学者通过将过量熵(excess entropy)分解成不重叠的部分来识别量化因果涌现,且提出了判定因果涌现发生的充分条件。 |
第58行: |
第80行: |
| | | |
| === NIS系列 === | | === NIS系列 === |
− | [[张江]]等<ref>Zhang J, Liu K. Neural information squeezer for causal emergence[J]. Entropy, 2022, 25(1): 26.</ref>学者尝试基于神经网络和数据驱动提出了一种方法,该方法能从时间序列数据中识别系统中的因果涌现,并且自动提取有效的粗粒度策略和宏观动力学,即神经信息压缩器(Neural Information Squeezer,简称NIS)。 | + | [[张江]]等<ref>Zhang J, Liu K. Neural information squeezer for causal emergence[J]. Entropy, 2022, 25(1): 26.</ref>学者尝试基于神经网络和数据驱动提出了一种方法,能从时间序列数据中识别系统中的因果涌现,并且自动提取有效的粗粒化策略和宏观动力学,即神经信息压缩器(Neural Information Squeezer,简称NIS)。 |
| | | |
− | 模型由编码器(encoder)、动力学学习器(<math>f </math>)以及解码器(decoder)三个部分构成,编码器和解码器主要由[[可逆神经网络]](Invertible Neural Network,简称INN)构建,动力学学习器由神经网络(Neural Network,简称NN)构建。此模型框架可以看成是一个神经信息压缩器,将包含噪音的微观态压缩成宏观态,丢弃无用的信息,从而使得宏观动力学的因果性更强。NIS方法的模型框架如右图所示。 | + | 模型由编码器(encoder)、动力学学习器(<math>f </math>)以及解码器(decoder)三个部分构成,编码器和解码器主要由[[可逆神经网络]](Invertible Neural Network,简称INN)构建,动力学学习器由多层感知机(Multilayer Perceptron,简称MLP)构建。此模型框架可以看成是一个神经信息压缩器,将包含噪音的微观态压缩成宏观态,丢弃无用的信息,从而使得宏观动力学的因果性更强。NIS方法的模型框架如右图所示。 |
| [[文件:NISImage.png|边框|右|无框]] | | [[文件:NISImage.png|边框|右|无框]] |
| 图中,模型输入是微观状态<math>X_t\ (X_t^1,X_t^2,…,X_t^p ) </math>,<math>p </math>表示输入数据的维数。<math>ϕ </math>是粗粒化函数(编码器),将输入的<math>p </math>维数据映射到<math>q </math>维数据上,得到宏观变量<math>Y_t </math>,此步丢失<math>p-q </math>维信息。<math>f </math>是动力学学习器,在宏观层面上学习有效的马尔可夫动力学。<math>\hat{y}_{t+1} </math>是预测的t+1时刻的宏观状态。由于此时数据是<math>q </math>维的,为了使用反粗粒化函数<math>ϕ^† </math>(解码器),需要用<math>p-q </math>维高斯随机向量填充数据。宏观变量经过反粗粒化函数之后可以得到预测的微观变量<math>\hat{x}_{t+1} </math>。而<math>x_t+1 </math>和<math>\hat{x}_{t+1} </math>之间的差值即为损失。 | | 图中,模型输入是微观状态<math>X_t\ (X_t^1,X_t^2,…,X_t^p ) </math>,<math>p </math>表示输入数据的维数。<math>ϕ </math>是粗粒化函数(编码器),将输入的<math>p </math>维数据映射到<math>q </math>维数据上,得到宏观变量<math>Y_t </math>,此步丢失<math>p-q </math>维信息。<math>f </math>是动力学学习器,在宏观层面上学习有效的马尔可夫动力学。<math>\hat{y}_{t+1} </math>是预测的t+1时刻的宏观状态。由于此时数据是<math>q </math>维的,为了使用反粗粒化函数<math>ϕ^† </math>(解码器),需要用<math>p-q </math>维高斯随机向量填充数据。宏观变量经过反粗粒化函数之后可以得到预测的微观变量<math>\hat{x}_{t+1} </math>。而<math>x_t+1 </math>和<math>\hat{x}_{t+1} </math>之间的差值即为损失。 |
− |
| |
− | 在编码器一步,虽然有丢失信息,但是通过数学证明可以得知,当神经网络训练收敛时,数据中相邻宏观状态之间的互信息倾向于接近两个相邻时间步的微观态互信息,丢失的信息与预测几乎无关,所有有效信息都汇聚到动力学学习器的信息瓶颈之中。且在此框架下,信息瓶颈的应用更加明显、更具可解释性。
| |
| | | |
| 该方法的目标函数是希望在保证微观状态预测误差很小的条件下最大化有效信息,保证预测误差约束足够小是为了避免平凡解(粗粒化丢失太多信息,以致宏观动力学无效)的出现。最终希望得到有效的粗粒化维度<math>q </math>、粗粒化策略<math>\mathrm{\phi}_q </math>和宏观动力学<math>{\hat{f}}_{\mathrm{\phi}_q} </math>。 | | 该方法的目标函数是希望在保证微观状态预测误差很小的条件下最大化有效信息,保证预测误差约束足够小是为了避免平凡解(粗粒化丢失太多信息,以致宏观动力学无效)的出现。最终希望得到有效的粗粒化维度<math>q </math>、粗粒化策略<math>\mathrm{\phi}_q </math>和宏观动力学<math>{\hat{f}}_{\mathrm{\phi}_q} </math>。 |
第73行: |
第93行: |
| | | |
| 第二个阶段:由于参数 <math>q</math> 是一维的,且 <math>0 < q < p</math>,简单迭代找到有效信息最大的宏观尺度。此步将复杂的泛函问题转化成一维空间中线性搜索问题。 | | 第二个阶段:由于参数 <math>q</math> 是一维的,且 <math>0 < q < p</math>,简单迭代找到有效信息最大的宏观尺度。此步将复杂的泛函问题转化成一维空间中线性搜索问题。 |
− |
| |
− | 虽然可以通过两个阶段得到结果,但是NIS没有真正地最大化有效信息。由于此方法的数学形式是一个泛函问题,无法直接进行优化,在NIS+中,将通过计算变分下界解决泛函问题。
| |
| | | |
| 具体内容请参考[[NIS]]。 | | 具体内容请参考[[NIS]]。 |
第112行: |
第130行: |
| 其中ξ为p−q维的标准高斯随机向量,⊕表示向量拼接操作。 | | 其中ξ为p−q维的标准高斯随机向量,⊕表示向量拼接操作。 |
| | | |
− | 最后,用一种具有权参数的前馈神经网络fq对宏观动力学fθ进行参数化。它的输入和输出层神经元的数量等于宏观状态q的维数。它有两个隐藏层,每层有64个神经元,输出使用LeakyReLU进行转换。为了计算EI,我们将这个前馈神经网络看作一个高斯分布,它对条件概率p(yt+1|yt)进行建模。当神经网络收敛时,yt与yt+1之间的互信息近似于xt与xt+1之间的互信息,因此需要方程{{EquationNote|1}}中的约束。 | + | 最后,用一种具有权参数的前馈神经网络fq对宏观动力学fθ进行参数化。它的输入和输出层神经元的数量等于宏观状态q的维数。它有两个隐藏层,每层有64个神经元,输出使用LeakyReLU进行转换。为了计算EI,我们将这个前馈神经网络看作一个高斯分布,它对条件概率p(yt+1|yt)进行建模。当神经网络收敛时,yt与yt+1之间的互信息近似于xt与xt+1之间的互信息,因此需要方程中的约束。 |
| + | |
| | | |
| | | |
第129行: |
第148行: |
| | | |
| <math>\begin{aligned}&\max_{\phi,f_{q},\phi^{+}}\mathcal{J}(f_{q}),\\&s.t.\begin{cases}\parallel\hat{x}_{t+1}-x_{t+1}\parallel<\epsilon,\\\hat{x}_{t+1}=\phi^{\dagger}\left(f_{q}(\phi(x_{t})\bigr)\right).\end{cases}\end{aligned}</math> | | <math>\begin{aligned}&\max_{\phi,f_{q},\phi^{+}}\mathcal{J}(f_{q}),\\&s.t.\begin{cases}\parallel\hat{x}_{t+1}-x_{t+1}\parallel<\epsilon,\\\hat{x}_{t+1}=\phi^{\dagger}\left(f_{q}(\phi(x_{t})\bigr)\right).\end{cases}\end{aligned}</math> |
| + | |
| + | 在编码器一步,虽然有丢失信息,但是通过数学证明可以得知,当神经网络训练收敛时,数据中相邻宏观状态之间的互信息倾向于接近两个相邻时间步的微观态互信息,丢失的信息与预测几乎无关,所有有效信息都汇聚到动力学学习器的信息瓶颈之中。且在此框架下,信息瓶颈的应用更加明显、更具可解释性。 |
| | | |
| 然而由于该目标函数是一个泛函优化问题,往往很难优化。为了解决这个问题,将优化过程分为两个阶段。 | | 然而由于该目标函数是一个泛函优化问题,往往很难优化。为了解决这个问题,将优化过程分为两个阶段。 |
第135行: |
第156行: |
| | | |
| 第二个阶段:由于参数 <math>q</math> 是一维的,且 <math>0 < q < p</math>,简单迭代找到有效信息最大的宏观尺度。此步将复杂的泛函问题转化成一维空间中线性搜索问题。 | | 第二个阶段:由于参数 <math>q</math> 是一维的,且 <math>0 < q < p</math>,简单迭代找到有效信息最大的宏观尺度。此步将复杂的泛函问题转化成一维空间中线性搜索问题。 |
| + | |
| + | 虽然可以通过两个阶段得到结果,但是NIS没有真正地最大化有效信息。由于此方法的数学形式是一个泛函问题,无法直接进行优化,在NIS+中,将通过计算变分下界解决泛函问题。 |
| == NIS的缺陷 == | | == NIS的缺陷 == |
| 虽然可以通过两个阶段得到结果,但是NIS没有真正地最大化有效信息。由于此方法的数学形式是一个泛函问题,无法直接进行优化,在NIS+中,将通过计算变分下界解决泛函问题。 | | 虽然可以通过两个阶段得到结果,但是NIS没有真正地最大化有效信息。由于此方法的数学形式是一个泛函问题,无法直接进行优化,在NIS+中,将通过计算变分下界解决泛函问题。 |
第243行: |
第266行: |
| | | |
| == 展望 == | | == 展望 == |
| + | |
| + | |
| + | = 其他 = |
| + | Rosas等学者通过将过量熵(excess entropy)分解成不重叠的部分来识别量化因果涌现,且提出了判定因果涌现发生的充分条件。 |
| + | |
| + | 为了简化问题且不失通用性,以有两个输入变量(X<sub>1</sub>、X<sub>2</sub>)和一个输出变量(Y)的系统为例,目标变量和联合源变量的互信息<math>I(X_1,X_2; Y) </math>可以通过部分信息分解(Partial Information Decomposition,简称PID)分解成三种信息,分别是冗余信息(Redundant information,简称Red)、独特信息(Unique information,简称Un)、协同信息(Synergistic information,简称Syn),具体公式如下: |
| + | |
| + | <math>I(X_1,X_2; Y) = Red(X_1,X_2; Y) + Un(X_1; Y |X_2) + Un(X_2; Y |X_1) + Syn(X_1,X_2; Y) </math> |
| + | |
| + | 不过,PID只适用于单个目标变量的情景,无法有效的应用于跨时间步长的系统。故,Rosas等学者提出了整合信息分解(Integrated Information Decomposition,简称ΦID)。当且仅当协同信息大于0的时候,系统有能力发生因果涌现。 |
| + | |
| + | <math>Syn(X_{t};X_{t+1}) > 0 </math> |
| + | |
| + | 在给定宏观状态<math>V </math>的情况下,<math>Syn(X_{t};X_{t+1}) ≥ Un(V_t;X_{t+1}|X_t) </math>。所以,如果宏观变量(V<sub>t</sub>)所持有的关于微观变量独特信息大于0,则出现因果涌现。 |
| + | |
| + | <math>Syn(X_{t};X_{t+1}) ≥ Un(V_t;X_{t+1}|X_t) > 0 </math> |
| + | |
| + | 通过互信息的相关计算公式,可以得知: |
| + | |
| + | <math>Un(V_t;X_{t+1}|X_t) ≥ I\left(V_t ; V_{t+1}\right)-\sum_j I\left(X_t^j ; V_{t+1}\right) + Red(V_t, V_{t+1};X_t) </math> |
| + | |
| + | 式中,<math>X_t^j </math>表示第 j 维t时刻的微观变量,<math>V_t ; V_{t+1} </math>代表两个连续时间的宏观状态变量。 |
| + | |
| + | 由于<math>Red(V_t, V_{t+1};X_t) </math>为非负数,所以可以提出一个充分非必要条件<math>\Psi_{t, t+1}(V) </math>,用于测量两个时间步宏观变量的互信息减去每个t时刻微观变量和t+1时刻宏观变量的互信息。 |
| + | |
| + | 当<math>\Psi_{t, t+1}(V) > 0 </math>,系统发生因果涌现。但当<math>\mathrm{\Psi}<0 </math>,我们不能确定系统是否发生因果涌现。 |
| + | <math>\Psi_{t, t+1}(V):=I\left(V_t ; V_{t+1}\right)-\sum_j I\left(X_t^j ; V_{t+1}\right) </math> |
| + | |
| + | 该方法避开讨论粗粒化策略,但是也存在很多缺点: |
| + | |
| + | 1)该方法只是基于互信息计算没有考虑因果,且得到的仅仅是发生因果涌现的近似的充分条件; |
| + | |
| + | 2)该方法需要预设宏观变量,且对宏观变量的不同选择会对结果造成显著影响; |
| + | |
| + | 3)当系统具有大量冗余信息或具有许多变量时,该方法的计算复杂度仍然很高。 |
| + | |
| + | Kaplanis等人基于机器学习的方法学习宏观态<math>V</math>以及最大化<math>\mathrm{\Psi} </math>:使用<math>f_{\theta}</math>神经网络来学习将微观输入<math>X_t</math>粗粒化成宏观输出<math>V_t</math>,同时使用神经网络<math>g_{\phi}</math>和<math>h_{\xi}</math>来分别学习<math>I(V_t;V_{t+1})</math>和<math>\sum_i(I(V_{t+1};X_{t}^i))</math>两者互信息的计算,最后通过最大化两者之间的差(即<math>\mathrm{\Psi} </math>)来优化学习。 ''<u>(暂定)</u>'' |
| | | |
| = 参考文献 = | | = 参考文献 = |