Judea Pearl. Direct and indirect effects. In Proceedings of the 17th conference on uncertainty in artificial intelligence. Morgan Kaufmann Publishers Inc., 2001.

CDE: Controlled Direct Effect;

NDE: Natural Direct Effect;

NIE: Natural Indirect Effect.

TDE: Total Direct Effect;

TIE: Total Indirect Effect;

PDE: Pure Direct Effect;

PIE: Pure Indirect Effect.

主要内容

graph LR
X(X) -->Z(Z) --> Y(Y)
X --> Y

设想, 药物\(X\)的影响通过俩种途径:

  1. 直接对身体产生的影响;
  2. 服用药物\(X\)会导致头疼, 故患者大概率会服用镇痛剂, 镇痛剂会利于(或者不利于)恢复.

如果我们直接计算causal effect, 则二者都会纳入其中, 但是往往我们所关心的只是单纯的\(X \rightarrow Y\)这一部分, 也即direct effect, 那么如何计算呢?

CDE

average CDE的计算是:

\[\mathbb{E}[Y|do(X=x), do(Z=z)]
-\mathbb{E}[Y|do(X=x^*), do(Z=z)],
\]

之所以被称之为controlled direct effect, 是因为我们认为的限定\(Z=z\).

用上面的例子来说就是, 我们限定所有人服用的镇定剂为\(z\).

NDE

average NDE的计算是:

\[\mathbb{E}[Y|do(X=x), do(Z=Z_{x*})]
-\mathbb{E}[Y|do(X=x^*)],
\]

相当于, 一个人服用了药物\(x\), 但是我们骗他说服用了药物\(x^*\), 导致其服用镇定剂的量是本应该服用药物\(x^*\)后的量.

不同于CDE, NDE的计算要略微复杂一点:

需要满足:

\[Y_{xz} \amalg Z_{x^*} | W,
\]

这里\(W\)是confounder.

此时:

\[NDE(x, x^*, Y) = \sum_{w, z}[\mathbb{E}[Y_{x,z}|w] - \mathbb{E}[Y_{x^*,z}|w]]P(Z_{x^*}=z|w)P(w).
\]

NIE

有些时候我们想要的是支线\(X \rightarrow Z \rightarrow Y\), 此时我们需要计算NIE:

average NIE的计算是

\[\mathbb{E}[Y|do(X=x^*), do(Z=Z_{x})]
-\mathbb{E}[Y|do(X=x^*)].
\]

类似的解释.

满足

\[Y_{x^*, z} \amalg Z_x | W,
\]

可以得到

\[NIE(x, x^*, Y) = \sum_{w, z}\mathbb{E}[Y_{x^*,z}|w][P(Z_{x}=z|w) - P(Z_{x^*}=z|w)]P(w).
\]

TDE, TIE, PDE, PIE

可以发现:

\[\begin{array}{rl}
\mathbb{E}[Y_{x}]
- \mathbb{E}[Y_{x^*}]
&=\mathbb{E}[Y_{xz}]
-\mathbb{E}[Y_{x^*z^*}] \\
&=\underbrace{(\mathbb{E}[Y_{xz}]-\mathbb{E}[Y_{xz^*}])}_{TIE} +
\underbrace{(\mathbb{E}[Y_{xz^*}]-\mathbb{E}[Y_{x^*z^*}])}_{PDE}\\
&=\underbrace{(\mathbb{E}[Y_{xz}]-\mathbb{E}[Y_{x^*z}]])}_{TDE} +
\underbrace{(\mathbb{E}[Y_{x^*z}]-\mathbb{E}[Y_{x^*z^*}])}_{PIE}.
\end{array}
\]

Direct and Indirect Effects的更多相关文章

  1. 【因果推断经典论文】Direct and Indirect Effects - Judea Pearl

    Direct and Indirect Effects Author: Judea Pearl UAI 2001 加州大学洛杉矶分校 论文链接:https://dl.acm.org/doi/pdf/1 ...

  2. 【论文笔记】用反事实推断方法缓解标题党内容对推荐系统的影响 Click can be Cheating: Counterfactual Recommendation for Mitigating Clickbait Issue

    Click can be Cheating: Counterfactual Recommendation for Mitigating Clickbait Issue Authors: 王文杰,冯福利 ...

  3. Manifesto of the Communist Party

    A spectre is haunting Europe – the spectre of communism. All the powers of old Europe have entered i ...

  4. Python中的内置函数

    2.1 Built-in Functions The Python interpreter has a number of functions built into it that are alway ...

  5. 美国政府关于Google公司2013年度的财务报表红头文件

    请管理员移至新闻版块,谢谢! 来源:http://www.sec.gov/ 财务报表下载↓ 此文仅作参考分析. 10-K 1 goog2013123110-k.htm FORM 10-K   UNIT ...

  6. Fancytree Javascript Tree的入门使用

    Fancytree Javascript Tree的入门使用 一.概念----是做什么的能干什么 Fancytree是一个Javascript控件,它依赖于: <script src=" ...

  7. Fancytree Javascript Tree TreeTable 树介绍和使用

    Fancytree是一个非常棒的Javascript控件,功能强大,文档健全.在做Javascript Tree控件选型时,主要基于以下几点选择了Fancytree 在Javascript Tree控 ...

  8. doxygen

    //commndline: doxygen Doxyfile /**comment /* /** time diff@pre precondition@post endcondition@throw ...

  9. Unity 5 Game Optimization (Chris Dickinson 著)

    1. Detecting Performance Issues 2. Scripting Strategies 3. The Benefits of Batching 4. Kickstart You ...

随机推荐

  1. 大数据学习day15----第三阶段----scala03--------1.函数(“_”的使用, 函数和方法的区别)2. 数组和集合常用的方法(迭代器,并行集合) 3. 深度理解函数 4 练习(用java实现类似Scala函数式编程的功能(不能使用Lambda表达式))

    1. 函数 函数就是一个非常灵活的运算逻辑,可以灵活的将函数传入方法中,前提是方法中接收的是类型一致的函数类型 函数式编程的好处:想要做什么就调用相应的方法(fliter.map.groupBy.so ...

  2. 【leetcode】986. Interval List Intersections (双指针)

    You are given two lists of closed intervals, firstList and secondList, where firstList[i] = [starti, ...

  3. Oracle—网络配置文件

    Oracle网络配置文件详解     三个配置文件 listener.ora.sqlnet.ora.tnsnames.ora ,都是放在$ORACLE_HOME/network/admin目录下. 1 ...

  4. redis入门到精通系列(五):redis的持久化操作(RDB、AOF)

    (一)持久化的概述 持久化顾名思义就是将存储在内存的数据转存到硬盘中.在生活中使用word等应用的时候,如果突然遇到断电的情况,理论上数据应该是都不见的,因为没有保存的word内容都存放在内存里,断电 ...

  5. 关于tensorflow无法使用gpu

    python3.6 无法使用tensorflow gpu 环境名称 test1 在控制台里进入环境 conda activate test1 使用python python 查看gpu能否使用 pri ...

  6. minikube metrics-server HPA 自动扩缩容错误

    minikube metrics-server pod 错误 启动 minikube addons enable metrics-server 之后查看 metrics-server pod 会有如下 ...

  7. 捷码:重塑DevOps,打造更流畅紧密的开发与服务交付业务链

    捷码Gemcoder 1周前如果有机会安排一场行业吐槽大会,熟悉软件开发.交付.服务业务各环节的业内人士,对开发中的各种扯皮.交付反反复复.运维服务中的提心吊胆,往往会有很多深刻的体验和刻骨铭心的案例 ...

  8. 从零开始写一个前端脚手架四、初始化进程提示(chalk)

    我们之前说过bin里面的index.js文件是作为入口文件存在的.实际上的初始化内容在.action里面操作的,为了方便管理,我们把实际操作的代码抽出来放一块儿管理 创建指令文件 在根目录创建一个co ...

  9. 转:ios delegate

    首先,大家应该都明白的是委托是协议的一种,顾名思义,就是委托他人帮自己去做什么事.也就是当自己做什么事情不方便的时候,就可以建立一个委托,这样就可以委托他人帮自己去实现什么方法. 其次,我简单的总结了 ...

  10. uniapp-uView表单中如何添加日期控件?

    环境:uniapp,uview-ui,Picker 选择器, 本次我们用uview中的Picker 选择器来写一个日期功能 此选择器有四种弹出模式 一是时间模式,可以配置年,日,月,时,分,秒参数二是 ...