因果图中的重要概念

发布于:2022-11-27 ⋅ 阅读:(487) ⋅ 点赞:(0)

因果图中的重要概念

变量 = 节点 = 顶点

在这里插入图片描述

因果推断是个科学发现问题,所以随机变量是最基本的概念。在因果图中,变量以节点顶点的形式存在。

在其他图工具中,一般是先构建图,然后再填入节点。如果图不存在了节点也随之消失。与这些图工具不同,bcoz将节点视为基本对象。
你可以用同一组节点构建多个图。这与我们处理科学问题的思路一致:先知晓变量,然后从中获得因果关系。

变量可以是离散值也可以是连续值,不同数值类型对应不同的搜索算法。

当导入数据时变量会自动创建,或者手动创建图时手动创建变量。

数据集

在这里插入图片描述

数据集分为2部分:第一部分是变量集合 V V V,第二部分是这些变量的观测值集合 X X X 或这些变量的协方差矩阵 Σ \Sigma Σ

数据集在导入数据时创建。

在这里插入图片描述

G G G 由节点集合 V V V 和边集合 E E E 组成。每条边有4部分信息:一对节点和一对端点。
例如边 ( A , B , − , > ) (A, B, -, >) (A,B,,>) 表示 A → B A \rarr B AB,边 ( B , C , > , > ) (B, C, >, >) (B,C,>,>) 表示 B ↔ C B \leftrightarrow C BC
这使得图的表示非常灵活:既可以表示无向边,也可以表示双向边,甚至一些特殊边。
A → B A \rarr B AB 也以描述为“A对B存在直接因果效应”。

背景知识

在这里插入图片描述

在因果发现算法中,往往需要背景知识(先验知识)作为输入辅助搜索。
背景知识由一组变量、禁忌边列表和必要边列表组成。

构建背景知识时你可以将背景知识视为独立内容–这也就是为什么称其为背景知识。
但是背景知识不能脱离输入的变量,只有这样才能建立禁忌边和必要边,也就是“关于什么的知识”。

搜索算法

在这里插入图片描述

因果发现问题可以简单理解为,首先我们有一组变量,然后在这些变量能组成的 所有 图中,找到一个能够正确描述这些变量之间因果关系的图。

到底要搜索多少图呢?

变量数 有向无环图数
1 1
2 3
3 25
4 543
5 29281
6 3781503
20 超过宇宙中原子的数量

这就是为什么我们需要一个算法来搜索,而不是人眼来检查。搜索算法会用很多技巧快速找到答案,不会一个一个图去分析。

搜索算法是一个函数,有对应的输入和输出。输入项为:

  • 数据集(必选)
  • 背景知识
  • 算法设置,不同算法设置参数不同

输出为一个图或与数据相容的一组图(也叫图的“等价类”)。图的类型根据算法不同而不同。

参数化模型和实例化模型

概率图只能给我们定性信息,它回答变量之间的因果影响,但不会告诉我们定量的因果效应有多大。
他们对图中变量的概率分布施加约束,但不会完全指定概率分布。因此我们需要模型。

因果模型向图中添加这些缺失的信息:模型指定概率分布,如果我们对某些变量施加干预可以得到其概率分布。

模型适用于如下几个不同任务:

  1. 给定我们确信的图和数据,我们可以你和模型学习因果效应的大小;
  2. 给定我们想要评估的图和数据,我们可以训练并测试模型来衡量图对数据描述的质量;
  3. 给定图,我们可以指定模型来生成该图的模拟数据,用于评估搜索搜索算法。

有两类令人混淆的模型,他们的区别整理在下表:

贝叶斯模型(Bayes Model) 结构方程模型(SEM)
参数化模型 图(DAG)中的节点是离散变量,每个变量有一组可选值 图(DAG)中的节点是连续变量(均值和方差以初始化但未赋值),外加一系列线性参数(系数已初始化但未赋值)
实例化模型 根据图中每个变量的父节点,给每个变量赋予其可能值的概率 值赋给线性结构方程所有参数(均值、方差和边系数)

我们区分参数化模型和实例化模型。参数模型只是 初始化 对象,这里我们决定用哪种模型(贝叶斯还是结构方程模型)。
然后实例化模型对模型参数赋值。

贝叶斯参数化模型和实例化模型

在这里插入图片描述

“贝叶斯模型” 仅意味着模型适配 离散数据。他与贝叶斯推断没有特殊关系。这里用“贝叶斯模型”仅仅是因为处理离散数据的DAG被称为“贝叶斯网络”。

一个贝叶斯参数化模型对象包含一个图、图中每一个变量的可选值。图必须是有向无环图(DAG)。

在这里插入图片描述

一个贝叶斯实例化模型对象包含贝叶斯参数化模型的一切,外加一组条件概率表–每张表对应一个节点,基于图中它的父节点。

结构方程参数化和实例化模型

在这里插入图片描述

结构方程模型用于在某种变量间关系假设下拟合连续数据。既可以拟合标准结构方程模型也可以拟合广义结构方程模型。

线性模型意味着变量间的关系可以用线性方程描述。例如,假设我们有图 X → Y ← Z \mathit{X \rarr Y \larr Z} XYZ,我们可以将其描述为标准参数化结构方程模型:

X = ϵ 1 \mathit{X = \epsilon_1} X=ϵ1

Z = ϵ 2 \mathit{Z = \epsilon_2} Z=ϵ2

Y = α X + β Z + ϵ 3 \mathit{Y = \alpha X + \beta Z + \epsilon_3} Y=αX+βZ+ϵ3

其中 ϵ 1 , ϵ 2 , ϵ 3 \epsilon_1, \epsilon_2, \epsilon_3 ϵ1,ϵ2,ϵ3是满足高斯分布的独立随机变量。

结构方程参数化模型包含一个图,外加需要指定概率分布的所有变量的列表。在上面的例子中,参数是
α , β , μ ϵ 1 , μ ϵ 2 , μ ϵ 3 , σ ϵ 1 , σ ϵ 2 , σ ϵ 3 \mathit{\alpha, \beta, \mu_{\epsilon1}, \mu_{\epsilon2}, \mu_{\epsilon3}, \sigma_{\epsilon1}, \sigma_{\epsilon2}, \sigma_{\epsilon3}} α,β,μϵ1,μϵ2,μϵ3,σϵ1,σϵ2,σϵ3
然而在结构方程参数化模型对象中,这些参数的值是待定的;这些值通过实例化模型指定(见实例化模型)。

如果选择广义结构方程参数化模型,你可以指定父子变量间的非线性关系,并且每个变量可以是非高斯分布的。
例如你可以指定某个变量与其父变量满足二次方程关系: Y = α X + β X 2 + ϵ \mathit{Y = \alpha X + \beta X^2 + \epsilon} Y=αX+βX2+ϵ
你可以指定误差项 ϵ \epsilon ϵ具有均匀(0, 1)分布。

注意:尽管广义结构方程模型相比标准结构方程给了你更大的自由,同时也需要你做更多的约束。你必须给出分布的参数化形式,否则无法通过数据训练出模型。
目前没有非参数化模型拟合方法。

在这里插入图片描述

结构方程实例化模型为所有参数赋值–在上面的例子中,需要给参数 α , β \mathit{\alpha, \beta} α,β赋值,同时给出误差项 ϵ \mathit{\epsilon} ϵ的均值和方差。


网站公告

今日签到

点亮在社区的每一天
去签到