Hern\(\'{a}\)n M. and Robins J. Causal Inference: What If.

这一章介绍如何结合IP weighting 和 参数模型.

12.1 The causal question

12.2 Estimating IP weights via modeling

我们知道, IP weighting:

\[\frac{I(A_i=a)Y_i}{f(A_i|L)},
\]

相当于创建了一个伪集合, 即假设所有的人都进行了\(A=a\).

显然, 在这个伪集合中, \(A,L\)是相互独立的.

故我们有

\[\mathbb{E}_{ps}[Y|A=a]=\sum_l \mathbb{E} [Y|A=a,L=l] \mathrm{Pr}[L=l],
\]

当同时满足条件可交换性的时候, 我们就能够得到

\[\mathbb{E}_{ps}[Y|A=a] = \mathbb{E}[Y^a].
\]

所以我们只需要估计\(\hat{\mathbb{E}}_{ps} [Y|A=a]\)即可.

自然地, 我们可以假设其符合

\[\theta_0 + \theta_1 A
\]

的线性模型.

通过最小二乘法可以估计出上面的参数.

但是需要注意的是, 我们数据不是原始的数据, 而是在伪数据之上, 相当于每一个样本为

\[\frac{Y_i}{f(A_i|L)}.
\]

记\(W = 1 / f(A=1|L)\), 以及它的估计\(\hat{W}\)(因为\(f(A|L)\)我们也是不知道的, 我们同样可以用参数模型进行估计), 故

\[\hat{\mathbb{E}}_{ps}[Y|A=1] = \frac{1}{n}\sum_{A_i =1} \hat{W}_i Y_i.
\]

12.3 Stabilized IP weights

实际上, 我们不光可以设置\(W=1 / f(A|L)\), 实际上可以进一步为

\[\frac{p}{f(A|L)}
\]

只需要满足\(p\)与\(L\)无关即可.

书上说这种方式的选择会使得最后估计的置信区间更窄也就是跟robust.

12.4 Marginal structural models

\[\mathbb{E}[Y^a] = \beta_0 + \beta_1 a.
\]

注意到, 当满足条件可交换性的时候, 上面的推得的模型和这一节的是等价的.

12.5 Effect modification and marginal structural models

\[\mathbb{E}[Y^a|V] = \beta_0 + \beta_1 a + \beta_2 Va + \beta_3 V.
\]

这个时候, 我们可以通过\(SW^A (V) = \frac{f[A|V]}{f[A|V]}\)来估计.

12.6 Censoring and missing data

只需考虑\(Y^{a, c=0}\), 以及对应的\(W = W^A \times W^C\),

\[W^C = 1 / \mathrm{Pr} [C=0 | L, A].
\]

Fine Point

Setting a bad example

Checking positivity

Technical Point

Horvitz-Thomson estimators

我们常常会用

\[\hat{\mathbb{E}}[\frac{I(A=a)Y}{f(A|L)}]
\]

作为估计式子, 其等价于

\[\frac{\hat{\mathbb{E}}[\frac{I(A=a)Y}{f(A|L)}]}
{\hat{\mathbb{E}}[\frac{I(A=a)}{f(A|L)}]}.
\]

而且往往后者更稳定.

注: 在 stabilized IP weights中必须要用后者.

More on stabilized weights

\[SW^A = \frac{g(A)}{f[A|L]}.
\]
\[\frac{\hat{\mathbb{E}}[\frac{I(A=a)Y}{f(A|L)}g(A)]}
{\hat{\mathbb{E}}[\frac{I(A=a)}{f(A|L)}g(A)]}.
\]

Chapter 12 IP Weighting and Marginal Structural Model的更多相关文章

  1. 零元学Expression Blend 4 - Chapter 12 用实例了解布局容器系列-「Viewbox」

    原文:零元学Expression Blend 4 - Chapter 12 用实例了解布局容器系列-「Viewbox」 本系列将教大家以实做案例认识Blend 4 的布局容器,此章介绍的布局容器是Bl ...

  2. Think Python - Chapter 12 Tuples

    12.1 Tuples are immutable(元组是不可变的)A tuple is a sequence of values. The values can be any type, and t ...

  3. 西瓜书概念整理(chapter 1-2)

    括号表示概念出现的其他页码, 如有兴趣协同整理,请到issue中认领章节 完整版见我的github:ahangchen 觉得还不错的话可以点个star ^_^ 第一章 绪论 Page2: 标记(lab ...

  4. 西瓜书概念整理(chapter 1-2)熟悉机器学习术语

    括号表示概念出现的其他页码, 如有兴趣协同整理,请到issue中认领章节 完整版见我的github:ahangchen 觉得还不错的话可以点个star ^_^ 第一章 绪论 Page2: 标记(lab ...

  5. 《Java 8 in Action》Chapter 12:新的日期和时间API

    在Java 1.0中,对日期和时间的支持只能依赖java.util.Date类.同时这个类还有两个很大的缺点:年份的起始选择是1900年,月份的起始从0开始. 在Java 1.1中,Date类中的很多 ...

  6. Chapter 12 外观模式

    外观模式:为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个模式使得这一子系统更加容易使用. 外观模式三个阶段: 首先,在设计初期阶段,应该要有意识的将不同的两个层分离. 其次,在 ...

  7. 《算法导论》— Chapter 12 二叉查找树

    序 查找树是一种数据结构,它支持多种动态集合操作.包含Search.Minimum.Maximum.PreDecessor.Successor.Insert.Delete等.它既能够用作字典,也能够用 ...

  8. UNP总结 Chapter 12~14 IPv4与IPv6的互操作性、守护进程和inet超级服务器、高级I/O函数

    一.IPv4与IPv6的互操作性 1.IPv4客户与IPv6服务器 拥有双重协议栈的主机的一个基本特性就是:其上运行的IPv6服务器既能应付IPv4客户,又能应付IPv6客户.这是通过使用IPv4映射 ...

  9. C++ primer chapter 12

    动态内存:之前的程序使用对象有着严格定义的生存期,会自动销毁.C++支持动态分配对象,动态分配对象的生存期和他们在哪里创建是无关的,只有当显式的被释放,这些对象才会销毁.标准库定义了智能指针对象可以自 ...

随机推荐

  1. LeetCode移除元素

    LeetCode 移除元素 题目描述 给你一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,并返回移除后数组的新长度. 不需要使用额外的数组空间,你必须仅使用 O(1) ...

  2. 数仓day01

    1. 该项目适用哪些行业? 主营业务在线上进行的一些公司,比如外卖公司,各类app(比如:下厨房,头条,安居客,斗鱼,每日优鲜,淘宝网等等) 这类公司通常要针对用户的线上访问行为.消费行为.业务操作行 ...

  3. nodejs-Path模块

    JavaScript 标准参考教程(alpha) 草稿二:Node.js Path模块 GitHub TOP Path模块 来自<JavaScript 标准参考教程(alpha)>,by ...

  4. java面试--(生成随机数,获取重复次数最多,并且数是最大的一个,打印出来)

    import java.util.*; public class MaxRandom { public static void main(String[] args){ int[] num = new ...

  5. 看看线程特有对象ThreadLocal

    作用:设计线程安全的一种技术. 在使用多线程的时候,如果多个线程要共享一个非线程安全的对象,常用的手段是借助锁来实现线程的安全.线程安全隐患的前提是多线程共享一个不安全的对象 ,那么有没有办法让线程之 ...

  6. Snort 入侵检测系统

    Snort 入侵检测系统 一.实验目的 1.掌握snort IDS工作原理 2.应用snort 三种方式工作 二.实验环境 系统环境:Windows环境, kali环境 三.实验原理 1.snort ...

  7. 从Rest到Graphql

    一.引言 ok,如图所示,我在去年曾经写过一篇文章<闲侃前后端分离的必要性>.嗯,我知道肯定很多人没看过.所以我做一个总结,其实啰里八嗦了一篇文章,就是想说一下现在的大型互联网项目一般是如 ...

  8. setsockopt()用法及参数详解

    setsockopt()用法(参数详细说明) int setsockopt(SOCKET s,int level,int optname,const char* optval,int optlen); ...

  9. CF1093B Letters Rearranging 题解

    Content 有 \(t\) 次询问,每次询问给定一个字符串 \(s\).定义一个"好的字符串"为不是回文串的字符串.对于每一次询问,求出任意一个重新排列能够得到的"好 ...

  10. CF805B 3-palindrome 题解

    Content 给定一个整数 \(n\),请构造出长度为 \(n\) 的仅含 a.b.c 三个字母的字符串,使得其中没有长度为 \(3\) 的回文子串,并且 c 出现的次数尽可能少. 数据范围:\(1 ...