更改

跳到导航 跳到搜索
无编辑摘要
第18行: 第18行:  
=基于离散方法的有效信息计算=
 
=基于离散方法的有效信息计算=
 
=== 干预揭示因果关系 ===
 
=== 干预揭示因果关系 ===
−
干预(也称为“扰动”)是揭示因果关系的关键工具。前馈深度神经网络(DNN)的因果关系集合(也称为“因果结构”)由多个层、层之间的连接以及节点的激活函数组成。我们引入了一套工具,用于探索一个假设:DNN的泛化能力取决于其因果结构如何适应所训练的任务(详见 https://github.com/ei-research-group/deep-ei )。
+
干预(也称为“扰动”)是揭示因果关系的关键工具<ref>Scythia Marrow, Eric J. Michaud, and Erik Hoel. Examining the Causal Structures of Deep Neural Networks Using Information Theory. In Entropy, volume 22, pages 1429, 2020.</ref>。前馈深度神经网络(DNN)的因果关系集合(也称为“因果结构”)由多个层、层之间的连接以及节点的激活函数组成。我们引入了一套工具,用于探索一个假设:DNN的泛化能力取决于其因果结构如何适应所训练的任务(详见 https://github.com/ei-research-group/deep-ei )。
    
为了研究这一问题,我们采用了一种广泛用于因果分析的正式方法,其中干预被表示为对系统中的某个变量应用<math>do(x)</math>操作符<ref>Judea Pearl. Causality. New York: Cambridge, 2000. doi: 10.1017/CBO9780511803161.</ref>。通常,<math>do(x)</math>用于将一个变量设置为特定值,例如在有向无环图中,它可以用来对单个节点进行干预(例如,之前在DNN中已用于应用单个干预<ref>Judea Pearl. Causality. New York: Cambridge, 2000. doi: 10.1017/CBO9780511803161.</ref>。<math>do(x)</math>通常用于将给定系统中的单个变量(如有向无环图)设置为特定值(例如,它以前曾被用于在DNN中应用单个干预<ref>Michael Harradon, Jeff Druce, and Brian Ruttenberg.  Causal learning and explanation of deep neural networks via autoencoded activations. arXiv preprint arXiv:1802.00541, 2018.</ref><ref>Tanmayee Narendra,  Anush Sankaran,  Deepak Vijaykeerthy,  and Senthil Mani.  Explaining deep learning models using causal inference. arXiv preprint arXiv:1811.04376, 2018.</ref>)。然而,我们在这里引入了一种新的方法,即使用“干预分布”(Intervention Distribution, <math>I_D</math>),它是对<math>do(x)</math>操作符的概率分布描述。简单来说,<math>I_D</math>是对一系列干预的数学描述。当我们在一个网络层的输入上应用<math>I_D</math>时,会导致输出节点产生某种效应分布(<math>E_D</math>)<ref>Erik P. Hoel.  When the map is better than the territory. Entropy, 19(5):188, 2017.  ISSN 1099-4300.  doi:  10.3390/e19050188.</ref>。
 
为了研究这一问题,我们采用了一种广泛用于因果分析的正式方法,其中干预被表示为对系统中的某个变量应用<math>do(x)</math>操作符<ref>Judea Pearl. Causality. New York: Cambridge, 2000. doi: 10.1017/CBO9780511803161.</ref>。通常,<math>do(x)</math>用于将一个变量设置为特定值,例如在有向无环图中,它可以用来对单个节点进行干预(例如,之前在DNN中已用于应用单个干预<ref>Judea Pearl. Causality. New York: Cambridge, 2000. doi: 10.1017/CBO9780511803161.</ref>。<math>do(x)</math>通常用于将给定系统中的单个变量(如有向无环图)设置为特定值(例如,它以前曾被用于在DNN中应用单个干预<ref>Michael Harradon, Jeff Druce, and Brian Ruttenberg.  Causal learning and explanation of deep neural networks via autoencoded activations. arXiv preprint arXiv:1802.00541, 2018.</ref><ref>Tanmayee Narendra,  Anush Sankaran,  Deepak Vijaykeerthy,  and Senthil Mani.  Explaining deep learning models using causal inference. arXiv preprint arXiv:1811.04376, 2018.</ref>)。然而,我们在这里引入了一种新的方法,即使用“干预分布”(Intervention Distribution, <math>I_D</math>),它是对<math>do(x)</math>操作符的概率分布描述。简单来说,<math>I_D</math>是对一系列干预的数学描述。当我们在一个网络层的输入上应用<math>I_D</math>时,会导致输出节点产生某种效应分布(<math>E_D</math>)<ref>Erik P. Hoel.  When the map is better than the territory. Entropy, 19(5):188, 2017.  ISSN 1099-4300.  doi:  10.3390/e19050188.</ref>。
第135行: 第135行:  
下图展示了训练过程中神经网络各层EI和损失函数的变化。图(a)和图(c)分别显示了Iris任务中训练集和测试集的损失函数变化。可以看到,在训练初期,损失函数快速下降,同时图(b)和图(d)的EI也发生了显著变化。在过拟合阶段,损失函数趋于平缓,EI也基本保持不变。由于MNIST任务复杂度更高,EI的变化幅度更大,表明网络在复杂任务中需要更多的因果结构调整来适应任务需求。总体而言,EI的变化与损失函数的变化密切相关,尤其是在学习的关键阶段,这一发现有助于我们理解神经网络如何通过调整其内部因果结构来适应不同的任务。
 
下图展示了训练过程中神经网络各层EI和损失函数的变化。图(a)和图(c)分别显示了Iris任务中训练集和测试集的损失函数变化。可以看到,在训练初期,损失函数快速下降,同时图(b)和图(d)的EI也发生了显著变化。在过拟合阶段,损失函数趋于平缓,EI也基本保持不变。由于MNIST任务复杂度更高,EI的变化幅度更大,表明网络在复杂任务中需要更多的因果结构调整来适应任务需求。总体而言,EI的变化与损失函数的变化密切相关,尤其是在学习的关键阶段,这一发现有助于我们理解神经网络如何通过调整其内部因果结构来适应不同的任务。
   −
[[文件:互信息EI.png|500x500像素|thumb|center|少量样本提示中8个涌现现象的例子,引自<ref name=":0" />]]<br>
+
[[文件:互信息EI.png|500x500像素|thumb|center|MNIST和Iris任务中训练集和测试集的损失函数变化,引自<ref>Scythia Marrow, Eric J. Michaud, and Erik Hoel. Examining the Causal Structures of Deep Neural Networks Using Information Theory. In Entropy, volume 22, pages 1429, 2020.</ref>]]<br>
   −
[[文件:Fewshot.png|800px|thumb|center|少量样本提示中8个涌现现象的例子,引自<ref name=":0" />]]<br>
      
=基于连续方法观察神经网络EI变化=
 
=基于连续方法观察神经网络EI变化=
5,443

个编辑

导航菜单