第1行: |
第1行: |
| =历史= | | =历史= |
| | | |
− | === 数学框架:最大化EI ===
| + | ==数学框架:最大化EI== |
| | | |
− | === Normalizing Flow技术 ===
| + | ==Normalizing Flow(标准化流)技术== |
| + | 标准化流(Normalizing Flows,NF)是一类通用的方法,它通过构造一种可逆的变换,将任意的数据分布<math>p_x (\mathbf{x}) </math>变换到一个简单的基础分布<math>p_z (\mathbf{z})</math>,因为变换是可逆的,所以<math>\mathbf{x}</math>和<math>\mathbf{z}</math>是可以任意等价变换的。之所以叫Normalizing Flows,是因为它包含两个概念: |
| + | |
| + | *标准化(normalize):它可以将任意的复杂数据分布进行标准化,类似于数据预处理中常用的数据0均值1方差的标准化,但是要精细很多; |
| + | *流(Flows):数据的分布可以非常的复杂,需要多个同样的操作组合来达到标准化的效果,这个组合的过程称为流。 |
| + | |
| + | 需要说明的是,因为分布间是可以相互变换的,因此对基础分布没有特定的限制,不失一般性的,可以使用标准分布(单高斯)分布作为基础分布。另外,在本文中,我们回避使用先验分布(prior distribution)来称呼这个基础分布,是因为这里的变量<math>\mathbf{z}</math>和其他场合下的隐变量不同,在标准化流模型中,一旦<math>\mathbf{x}</math>确定了,<math>\mathbf{z}</math>也随之确定下来,不存在随机性,也没有后验概率这一说法,所以不能称其为隐变量。 |
| | | |
| =简介= | | =简介= |
第10行: |
第16行: |
| | | |
| ==神经网络框架== | | ==神经网络框架== |
| + | 作为神经网络框架,NIS本质上是一种粗粒化函数。其分为编码器、动力学学习器与解码器,可以由微观状态的时间序列输入、经训练后输出如下四个部分: |
| + | |
| + | *尺度M下的粗粒化策略(由可逆神经网络INN表示); |
| + | *尺度M下的宏观动力学(由动力学学习器得出); |
| + | *最优建模尺度M*(由遍历得出最优维数); |
| + | *判断:是否存在因果涌现(当最优尺度下的有效信息<math>EI_{M*}</math>大于最微观尺度下的有效信息<math>EI_m</math>时判断存在因果涌现)。 |
| + | |
| + | 这一架构的另一优点是,其解码器可由编码器逆转得到,且可以自上而下地从编码器配合随机采样的数据生成微观态细节,属于生成模型的一种。 |
| + | |
| + | ==问题与展望:NIS+== |
| + | NIS的主要问题在于,首先其并没有直接地最大化EI,而是训练了微观上的预测误差,即NIS框架没有完全解决其提出的问题;第二是NIS难以应用于大规模的系统,在实验中仅应用于弹簧振子及布尔网络的例子,目前没有拓展到大规模复杂网络上的应用。 |
| | | |
− | == 问题与展望 ==
| + | 为解决这些问题,从NIS框架出发提出NIS+框架。在NIS的基础上,NIS+框架添加了反向动力学、由此产生一个新的损失函数,并对两个损失函数进行加权。其中,新的损失函数产生于神经网框架中添加的部分:通过对<math>t+1</math>时刻再次编码,在宏观上来训练一个反向动力学来去预测<math>t</math>时刻的一个<math>\hat{y}(t)</math>。将新的损失函数与NIS框架中原有的损失函数加权,可以直接最大化EI。 |
| | | |
| =问题描述= | | =问题描述= |
第79行: |
第96行: |
| 第一步是从<math>\mathbf{x}_t \in \mathcal{R}^p</math> 到 <math>\mathbf{x}'_t \in \mathcal{R}^p</math>的双射(可逆)映射<math>\psi_\alpha : \mathcal{R}^p \rightarrow \mathcal{R}^p</math>,无信息丢失,由可逆神经网络实现;第二步是通过将<math>\mathbf{x}_t \in \mathcal{R}^p</math>映射到<math>\mathbf{y}_t \in \mathcal{R}^q</math>,丢弃<math>p-q</math>维上的信息,将得到的向量投影到<math>q</math>维。 | | 第一步是从<math>\mathbf{x}_t \in \mathcal{R}^p</math> 到 <math>\mathbf{x}'_t \in \mathcal{R}^p</math>的双射(可逆)映射<math>\psi_\alpha : \mathcal{R}^p \rightarrow \mathcal{R}^p</math>,无信息丢失,由可逆神经网络实现;第二步是通过将<math>\mathbf{x}_t \in \mathcal{R}^p</math>映射到<math>\mathbf{y}_t \in \mathcal{R}^q</math>,丢弃<math>p-q</math>维上的信息,将得到的向量投影到<math>q</math>维。 |
| | | |
− | ==动力学学习器 == | + | ==动力学学习器== |
| 动力学学习器 <math>f_\beta</math> 是一个带有参数的常见前馈神经网络,它在宏观层面上学习有效的马尔可夫动力学。用 <math>f_\beta</math> 替换方程{{EquationNote|2}}中的 <math>\hat{f}_{\phi_q}</math>,并使用 <math>dt = 1</math> 的欧拉方法求解方程 (2)。假设噪声是加性高斯分布(或拉普拉斯分布),则可以将方程{{EquationNote|5}}简化为: | | 动力学学习器 <math>f_\beta</math> 是一个带有参数的常见前馈神经网络,它在宏观层面上学习有效的马尔可夫动力学。用 <math>f_\beta</math> 替换方程{{EquationNote|2}}中的 <math>\hat{f}_{\phi_q}</math>,并使用 <math>dt = 1</math> 的欧拉方法求解方程 (2)。假设噪声是加性高斯分布(或拉普拉斯分布),则可以将方程{{EquationNote|5}}简化为: |
| {{NumBlk|:|<blockquote><math>\mathbf{y}(t+1) = \mathbf{y}_t + \int_t^{t+1} f_\beta (\mathbf{y}(\tau), \xi') d\tau \approx \mathbf{y}_t + f_\beta (\mathbf{y}_t)+\xi'</math></blockquote>|{{EquationRef|11}}}} | | {{NumBlk|:|<blockquote><math>\mathbf{y}(t+1) = \mathbf{y}_t + \int_t^{t+1} f_\beta (\mathbf{y}(\tau), \xi') d\tau \approx \mathbf{y}_t + f_\beta (\mathbf{y}_t)+\xi'</math></blockquote>|{{EquationRef|11}}}} |
第121行: |
第138行: |
| 其中 <math>l = 1</math> 或 <math>2</math>。接下来使用随机梯度下降技术来优化方程{{EquationNote|14}}。 | | 其中 <math>l = 1</math> 或 <math>2</math>。接下来使用随机梯度下降技术来优化方程{{EquationNote|14}}。 |
| | | |
− | ===选择一个最优的尺度 === | + | ===选择一个最优的尺度=== |
| | | |
| 在上一步中,经过大量的训练周期可以得到有效的 <math>q</math> 粗粒化策略和宏观状态动力学,但训练结果依赖于 <math>q</math>。 | | 在上一步中,经过大量的训练周期可以得到有效的 <math>q</math> 粗粒化策略和宏观状态动力学,但训练结果依赖于 <math>q</math>。 |
第249行: |
第266行: |
| 通过对整个网络进行 50,000 次状态转换的采样(每次采样包含 100 个从可能状态空间均匀随机采样的不同初始条件),将这些数据输入 NIS 模型。通过系统搜索不同的 <math>q</math> 值,发现维度平均因果涌现峰值出现在 q = 1 处(图 8a)。可视化结果显示出粗粒化策略(图 8b),其中 <math>x</math> 坐标是微观状态的十进制编码,<math>y</math> 坐标表示宏观状态的编码。数据点根据其 <math>y</math> 值可以清晰地分为四个簇,这表明 NIS 网络发现了四个离散的宏观状态。与参考文献5中的示例相似,16 个微观状态与四个宏观状态之间存在一一对应关系。然而,NIS 算法在处理此问题时并不知道任何先验信息,包括节点分组方法、粗粒化策略和动力学信息。这个示例验证了信息瓶颈理论与信道互信息之间的关系(图 8c, d)。 | | 通过对整个网络进行 50,000 次状态转换的采样(每次采样包含 100 个从可能状态空间均匀随机采样的不同初始条件),将这些数据输入 NIS 模型。通过系统搜索不同的 <math>q</math> 值,发现维度平均因果涌现峰值出现在 q = 1 处(图 8a)。可视化结果显示出粗粒化策略(图 8b),其中 <math>x</math> 坐标是微观状态的十进制编码,<math>y</math> 坐标表示宏观状态的编码。数据点根据其 <math>y</math> 值可以清晰地分为四个簇,这表明 NIS 网络发现了四个离散的宏观状态。与参考文献5中的示例相似,16 个微观状态与四个宏观状态之间存在一一对应关系。然而,NIS 算法在处理此问题时并不知道任何先验信息,包括节点分组方法、粗粒化策略和动力学信息。这个示例验证了信息瓶颈理论与信道互信息之间的关系(图 8c, d)。 |
| | | |
− | =[[有效信息]]的度量= | + | =有效信息的度量= |
− | | + | 本部分在[[有效信息]]词条的5.2节中有详细描述,为NIS框架解决的问题之一。 |
− | == '''前馈神经网络的有效信息定义''' ==
| |
− | 一般而言,如果神经网络的输入为 <math>X =(x_1,x_2,··· ,x_n) \in [-L,L]^n</math>,即 <math>X</math> 定义在大小为 <math>L</math> 的超立方体上(<math>L</math> 是大整数),则输出为 <math>Y = (y_1,y_2,··· ,y_m)</math> ,且 <math>Y = \mu(X)</math>。神经网络实现的确定性映射为 <math>\mu: \mathcal{R}^n \rightarrow \mathcal{R}^m</math> ,其在 <math>X</math> 处的雅可比矩阵为 <math>\partial_{X' \mu} \equiv \Bigl\{ \frac{\partial \mu_i (X')}{\partial X'_j}|_{X'=X}\Bigr\}_{nm}</math> . 若可以将神经网络视为给定 <math>X</math> 下的高斯分布,则:
| |
− | {{NumBlk|:|<blockquote><math>p(\mathcal{Y}|X) = \frac{1}{\sqrt{(2 \pi)^m |\Sigma|}} \exp\left( - \frac{1}{2}(\mathcal{Y}-\mu(X))^T \Sigma^{-1}(\mathcal{Y}-\mu(X)) \right)</math></blockquote>|{{EquationRef|15}}}}
| |
− | 其中,<math>\Sigma = diag (\sigma_1^2, \sigma_2^2, ···, \sigma_q^2)</math> 是协方差矩阵,<math>\sigma_i</math> 是第 <math>i</math> 维度的标准差(可由 <math>y_i</math> 的平均方差估计)。由此可计算有效信息 <math>EI</math>:
| |
− | | |
− | (i) 若存在 <math>X</math> 使 <math>\det(\partial_{X' } \mu(X)) \neq 0</math> ,则 <math>EI</math> 由如下式子导出:
| |
− | {{NumBlk|:|<blockquote><math>EI_L(\mu) = I(do(X \sim \mathcal{U}([-L,L]^n;\mathcal{Y}) \approx - \frac{m+m \ln(2\pi)+\Sigma_{i=1}^m \sigma_i^2}{2}+n \ln (2L)+ \mathbb{E}_{X \sim \mathcal{U}[-L,L]^n}(\ln | \det(\partial_{X' }\mu(X))|) </math></blockquote>|{{EquationRef|16}}}}
| |
− | 其中 <math>\mathcal{U}([-L,L]^n)</math> 表示 <math>[-L,L]^n</math> 上的均匀分布,<math>|\cdot|</math> 表示绝对值,<math>\det</math> 表示行列式。
| |
| | | |
− | (ii) 若对于所有 <math>X</math> 都有 <math>\det (\partial_{X'}\mu(X)) \equiv 0</math>,则 <math>EI \approx 0</math>。
| + | 对于前馈神经网络, 其EI的计算有一些不合理之处:首先EI的计算结果将会受到L的严重影响;其次,如果计算归一化的EI,即Eff,那么会遇到一个问题:对于连续变量来说,其状态空间的元素个数为无穷多个,如果直接使用,势必会引入无穷大量。 |
− | | |
− | 这个定义有如下新问题:(1)<math>EI</math> 容易受到输出维数 <math>m</math> 的影响,比较不同维动力学的 <math>EI</math> 将较为繁琐,但可通过计算维度平均有效信息解决;(2)<math>EI</math> 依赖于 <math>L</math>,当 <math>L</math> 很大时会发散,可通过计算维度平均因果涌现解决。
| |
− | | |
− | == '''维度平均有效信息 (<math>dEI</math>)''' ==
| |
− | 对于具有 <math>n</math> 维状态空间的动力学 <math>f</math>,则维度平均有效信息定义为:
| |
− | {{NumBlk|:|<blockquote><math>dEI(f)=\frac{EI(f)}{n}</math></blockquote>|{{EquationRef|17}}}}
| |
− | 此时如果动力学 <math>f</math> 连续且可被看作条件高斯分布,则根据 <math>EI</math> 的定义(式{{EquationRef|16}}),维度平均 <math>EI</math> 可以计算为(<math>m = n</math>):
| |
− | {{NumBlk|:|<blockquote><math>dEI_L(f)= -\frac{1+\ln(2\pi)+\Sigma_{i=1}^n \sigma_i^2/n}{2}+\ln(2L) + \frac{1}{n}\mathbb{E}_{X \sim \mathcal{U}([-L,L]^n)}(\ln | \det(\partial_{X'}f(X))|) \qquad (18)</math></blockquote>|{{EquationNote|18}}}}
| |
− | 式{{EquationRef|18}}中与维度 <math>n</math> 相关的所有项都已被消除。但是,等式中仍然存在 <math>L</math>,当 <math>L</math> 很大时可能导致 <math>EI</math> 发散。
| |
− | | |
− | 可以计算维度平均因果涌现(<math>dCE</math>)以消除 <math>L</math> 的影响。
| |
− | | |
− | == '''维度平均因果涌现 (<math>dCE</math>)''' ==
| |
− | 对于维度为 <math>n_M</math> 的宏观动力学 <math>f_M</math> 和维度为 <math>n_m</math> 的微观动力学 <math>f_m</math>,将维度平均因果涌现定义为:
| |
− | {{NumBlk|:|<blockquote><math>dCE(f_M,f_m)=dEI(f_M)-dEI(f_m)=\frac{EI(f_M)}{n_M}-\frac{EI(f_m)}{n_m}.</math></blockquote>|{{EquationRef|19}}}}
| |
− | 因此,如果动力学 <math>f_M</math> 和 <math>f_m</math> 连续且可以被视为条件高斯分布,则根据定义 7 和公式 (18),维度平均因果涌现符合如下公式:
| |
− | {{NumBlk|:|<blockquote><math> dCE(f_M,f_m)=\left(\frac{1}{n_M} \mathbb{E}_{X_M} \ln |\det\partial_{X_M}f_M| \right) - \left(\frac{1}{n_M}\sum_{i=1}^{n_M} \ln \sigma_{i,M}^2 - \frac{1}{n_m} \sum_{i=1}^{n_m} \ln \sigma_{i,m}^2 \right)</math></blockquote>|{{EquationRef|20}}}}
| |
− | 在式{{EquationNote|20}}中,<math>n</math> 维和 <math>L</math> 维的影响已被完全消除,结果只受方差的相对值和雅可比矩阵行列式的对数值的影响。数值计算中将主要使用式 20。Eff 因受 <math>L</math> 影响而弃用。
| |
− | 理论中讨论神经信息压缩器框架找出最具信息量的宏观动力学的原因,以及有效策略动力学随<math>q</math>的变化。由于理论结果与输入数据的分布无关,该理论同时适用互信息与有效信息。
| |
| | | |
| + | 此问题的解决方案是,用状态空间维数来归一化EI,从而解决连续状态变量上的EI比较问题,这一指标被称为'''维度平均的有效信息'''(Dimension Averaged Effective Information,简称dEI)。在离散的状态空间中,'''维度平均的EI'''和'''有效性'''指标(Eff)实际上是等价的。在这一定义中L并未消失,但在计算'''维度平均的因果涌现'''时,尽管在期望中仍然隐含地包含L,但所有显含L的项就都被消失了。这就展示出来引入维度平均EI的一定的合理性。 |
| =总结与展望= | | =总结与展望= |
| | | |
第287行: |
第278行: |
| | | |
| ===NIS的缺点=== | | ===NIS的缺点=== |
− | NIS框架的弱点如下。首先,由于可逆神经网络很难在大数据集上训练,它只能在小数据集上工作;其次,该框架仍然缺乏可解释性<ref>Williams, P.L.; Beer., R.D. Nonnegative decomposition of multivariate information. arXiv 2017, arXiv:1004.2515.</ref>;第三,该模型可预测的条件分布仅限于高斯或拉普拉斯分布。
| + | NIS框架的弱点如下。 |
| + | |
| + | 首先,由于可逆神经网络很难在大数据集上训练,它只能在小数据集上工作,目前的数值实验也集中在弹簧振子和简单布尔网络等环境下; |
| + | |
| + | 其次,该框架仍然缺乏可解释性<ref>Williams, P.L.; Beer., R.D. Nonnegative decomposition of multivariate information. arXiv 2017, arXiv:1004.2515.</ref>; |
| + | |
| + | 第三,该模型可预测的条件分布仅限于高斯或拉普拉斯分布。 |
| | | |
| ===未来展望:NIS+框架=== | | ===未来展望:NIS+框架=== |
| | | |
− | | + | 为解决这些问题,从NIS框架出发提出NIS+框架。在NIS的基础上,NIS+框架添加了反向动力学、由此产生一个新的损失函数,并对两个损失函数进行加权。其中,新的损失函数产生于神经网框架中添加的部分:通过对<math>t+1</math>时刻再次编码,在宏观上来训练一个反向动力学来去预测<math>t</math>时刻的一个<math>\hat{y}(t)</math>。将新的损失函数与NIS框架中原有的损失函数加权,可以直接最大化EI,解决了NIS框架无法直接最大化EI的问题。 |
| =参考文献= | | =参考文献= |
| | | |
| <references />此词条由因果涌现第五季读书会词条梳理志愿者LJR.json编撰,未经专家审核,带来阅读不便,请见谅。 | | <references />此词条由因果涌现第五季读书会词条梳理志愿者LJR.json编撰,未经专家审核,带来阅读不便,请见谅。 |