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. The Go tools for Windows + Assembler很好玩

    我想用python做个tiny BASIC编译器.赋值和加减乘除,IF和FOR. 语法分析python有ply包,用ply.lex和ply.yacc做个计算器很简单,我已经做了. 做个解释器应该也不难 ...

  2. Linux信号1

    信号(signal)是一种软中断,他提供了一种处理异步事件的方法,也是进程间唯一的异步通信方式.在Linux系统中,根据POSIX标准扩展以后的信号机制,不仅可以用来通知某进程发生了什么事件,还可以给 ...

  3. Android Loader异步装载

    一.Loader简介: (一).Loader的概念: 装载器从android3.0开始引进.它使得在activity或fragment中异步加载数据变得简单. 当成批显示数据的时候,为了使用户体验更好 ...

  4. Linux基础命令---lynx浏览器

    lynx lynx是一个字符界面的全功能www浏览器,它没有图形界面,因此占用的资源较少. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.Fedora.   1.语法     ...

  5. 【C/C++】最大连续子序列和/动态规划

    思路主要是看了晴神的算法笔记,实现是自己重新用vector实现了一下,对付逗号隔开的输入 #include <iostream> #include <string> #incl ...

  6. 【C/C++】n皇后问题/全排列/递归/回溯/算法笔记4.3

    按常规,先说一下我自己的理解. 递归中的return常用来作为递归终止的条件,但是对于返回数值的情况,要搞明白它是怎么返回的.递归的方式就是自己调用自己,而在有返回值的函数中,上一层的函数还没执行完就 ...

  7. C++11 关键字 const 到底怎么用?

    Const 的作用及历史 const (computer programming) - Wikipedia 一.历史 按理来说,要想了解一件事物提出的原因,最好的办法就是去寻找当时的历史背景,以及围绕 ...

  8. 培训班输出的大量学员,会对IT行业产生哪些影响?

    先说下会有哪些影响呢?   1 可能也就是些大城市的,规模比较大的,口碑比较好的培训学校输出的码农才能入行,而且能做长久.一些线上的所谓培训机构,或者小城市的培训学校,输出的能入行的码农,其实规模很有 ...

  9. SQL->Python->PySpark计算KS,AUC及PSI

    KS,AUC 和 PSI 是风控算法中最常计算的几个指标,本文记录了多种工具计算这些指标的方法. 生成本文的测试数据: import pandas as pd import numpy as np i ...

  10. 什么是token?

    一.简介 token的意思是"令牌",是服务端生成的一串字符串,作为客户端进行请求的一个标识. 当用户第一次登录后,服务器生成一个token并将此token返回给客户端,以后客户端 ...