文章目录

  • 前言
  • 一、问题描述
  • 二、“必要性概率”PN的求解
    • 1. 单调性情况下
    • 2. 非单调性情况下
  • 三、案例分析
  • 总结

前言

考虑这样一个情景,A先生早晨来到工位上,边摘下口罩边看着昨日新增新冠确诊的新闻,不禁感慨,若不是自己每天都戴口罩注意防控,恐怕自己也已经感染了。“若没有戴口罩,恐怕已经感染”,这句话就暗含着因果推理中的一个重要知识——反事实。换句话说,“戴口罩”是“预防感染”的一个原因。发现“戴口罩”是“预防感染”的原因,并确定其影响程度,就是反事实推理中的归因问题。


一、问题描述

假设输入变量X和输出变量Y均为二值函数, X = 1 X=1 X=1和 Y = 1 Y=1 Y=1分别表示“戴口罩”和“未感染”, X = 0 X=0 X=0和 Y = 0 Y=0 Y=0分别表示“没戴口罩”和“感染”。归因主要关注两个问题:

  1. 在已知A先生常戴口罩( X = 1 X=1 X=1)且未感染( Y = 1 Y=1 Y=1)的情况下,如果之前他不戴口罩( X = 0 X=0 X=0)且被感染( Y = 0 Y=0 Y=0)的概率;
  2. 在已知B先生不戴口罩( X = 0 X=0 X=0)且感染( Y = 0 Y=0 Y=0)的情况下,如果之前他常戴口罩( X = 1 X=1 X=1)且未感染( Y = 1 Y=1 Y=1)的概率。

问题1中的概率可表示为

P N = P ( Y X = 0 = 0 ∣ X = 1 , Y = 1 ) PN = P(Y_{X=0}=0|X=1,Y=1) PN=P(YX=0​=0∣X=1,Y=1)

其中 Y X = 0 Y_{X=0} YX=0​是一个反事实概念,表示假设 X = 0 X=0 X=0且其他条件不变时 Y Y Y的值,它跟条件概率 P ( Y = 0 ∣ X = 0 ) P(Y=0|X=0) P(Y=0∣X=0)不同。 P N PN PN反映了如果 X X X没有发生,则 Y Y Y不会发生的概率,即反映了“戴口罩”和“感染”之间因果关系的必要性。因此 P N PN PN也称“必要性概率”。

问题2中的概率可表示为
P S = P ( Y X = 1 = 1 ∣ X = 0 , Y = 0 ) PS = P(Y_{X=1}=1|X=0,Y=0) PS=P(YX=1​=1∣X=0,Y=0)

相似地, P S PS PS反映了如果 X X X发生,则 Y Y Y也会发生的概率,即反映了“戴口罩”和“感染”之间因果关系的充分性。因此 P S PS PS也称“充分性概率”。

P N PN PN和 P S PS PS是反事实推理的重要组成部分,可以有效帮助我们确认事物发生的原因,即归因。但目前为止,这两个概率值无法直接求解,这是因为在已知 X = 1 X=1 X=1的前提下,无法保证其“穿越”到过去再做出 X = 0 X=0 X=0的选择。这里以“必要性概率”的求解为例,介绍一种目前常用的分析方法。


二、“必要性概率”PN的求解

1. 单调性情况下

对于 P N PN PN,研究人员引入了一种大多数情况下满足的单调性假设,即 Y X = 1 ≥ Y X = 0 Y_{X=1} \geq Y_{X=0} YX=1​≥YX=0​,可以理解为采取行动(戴口罩)的结果 Y X = 1 Y_{X=1} YX=1​不会比不采取行动(不戴口罩)的结果 Y X = 0 Y_{X=0} YX=0​更差。在单调性情况下, P N PN PN可以写为:

P N = P ( Y = 1 ) − P ( Y = 1 ∣ d o ( X = 0 ) ) P ( X = 1 , Y = 1 ) PN = \frac{P(Y=1)-P(Y=1|do(X=0))}{P(X=1,Y=1)} PN=P(X=1,Y=1)P(Y=1)−P(Y=1∣do(X=0))​

式中, d o ( X = 0 ) do(X=0) do(X=0)表示干预,即指定人必须不戴口罩,一般只能通过随机试验获得。根据全概率公式,上式可进一步写为:

P N = P ( Y = 1 ∣ X = 1 ) − P ( Y = 1 ∣ X = 0 ) P ( Y = 1 ∣ X = 1 ) + P ( Y = 1 ∣ X = 0 ) − P ( Y = 1 ∣ d o ( X = 0 ) ) P ( X = 1 , Y = 1 ) PN = \frac{P(Y=1|X=1)-P(Y=1|X=0)}{P(Y=1|X=1)}+\frac{P(Y=1|X=0)-P(Y=1|do(X=0))}{P(X=1,Y=1)} PN=P(Y=1∣X=1)P(Y=1∣X=1)−P(Y=1∣X=0)​+P(X=1,Y=1)P(Y=1∣X=0)−P(Y=1∣do(X=0))​

上式中,第一项被称为过剩风险率(ERR),反映了对 X = 1 X=1 X=1和 X = 0 X=0 X=0的不同风险比率;第二项混杂因子(CF)表示需要为混杂偏差因素的校正,即 P ( Y = 1 ∣ X = 0 ) ≠ P ( Y = 1 ∣ d o ( X = 0 ) ) P(Y=1|X=0) \neq P(Y=1|do(X=0)) P(Y=1∣X=0)​=P(Y=1∣do(X=0))。换句话说,指定人群不戴口罩得到的感染情况与人们自愿不戴口罩的感染情况不同,比如自愿不戴口罩的人可能在其他方面也比一般人群更不注意防护(更容易感染),那么第二项CF会调整这个偏向。

2. 非单调性情况下

对于一般的非单调性问题, P N PN PN无法直接求得,有学者给出了 P N PN PN的上下界,即
m a x [ 0 , P ( Y = 1 ) − P ( Y = 1 ∣ d o ( X = 0 ) ) P ( X = 1 , Y = 1 ) ] ≤ P N ≤ m i n [ 1 , P ( Y = 0 ∣ d o ( X = 0 ) ) − P ( X = 0 , Y = 0 ) P ( X = 1 , Y = 1 ) ] max[0,\frac{P(Y=1)-P(Y=1|do(X=0))}{P(X=1,Y=1)}] \leq PN \leq min[1,\frac{P(Y=0|do(X=0))-P(X=0,Y=0)}{P(X=1,Y=1)}] max[0,P(X=1,Y=1)P(Y=1)−P(Y=1∣do(X=0))​]≤PN≤min[1,P(X=1,Y=1)P(Y=0∣do(X=0))−P(X=0,Y=0)​]

进一步推导,下界(LB)和上界(UB)可表示为:
L B = E R R + C F LB=ERR+CF LB=ERR+CF U B = E R R + q + C F UB=ERR+q+CF UB=ERR+q+CF

其中, E R R ERR ERR和 C F CF CF分别表示过剩风险率和混杂因子, q = P ( Y = 0 ∣ X = 1 ) / P ( Y = 1 ∣ X = 1 ) q=P(Y=0|X=1)/P(Y=1|X=1) q=P(Y=0∣X=1)/P(Y=1∣X=1)表示 X = 1 X=1 X=1群体中负面结果与正面结果的比率。可以看出, E R R ERR ERR和 q q q均可以通过观测数据(常通过问卷调查得到)估计,而 C F CF CF则必须通过试验数据估计,因为里面包含干预项。


三、案例分析

分析一个起诉药品制造商的诉讼案件。C先生买了一种止疼药来缓解疼痛,却在服药后死亡。C先生的家人(原告)提起诉讼,要求药品制造商(被告)承担责任。被告和原告分别提供药检结果(试验数据)和调查结果(非试验数据),见下表,其中 x x x和 x ′ x' x′分别表示服药和不服药, y y y和 y ′ y' y′表示死亡和存活。


被告的数据来自严格的药检,原告的数据则来自对自愿服药的患者的调查。被告称,该药品虽然会导致死亡率的轻微增加(从1.4%增加到1.6%),但与镇痛效果相比,这种增加在接受范围内。根据传统的过剩风险率的计算,被告需要承担的责任可用如下概率值 P 1 P_1 P1​衡量:
P 1 = P ( y ∣ x ) − P ( y ∣ x ′ ) P ( y ∣ x ) = 0.016 − 0.014 0.016 = 0.125 P_1=\frac{P(y|x)-P(y|x')}{P(y|x)}=\frac{0.016-0.014}{0.016}=0.125 P1​=P(y∣x)P(y∣x)−P(y∣x′)​=0.0160.016−0.014​=0.125

原告则辩称,被告的数据是在通过随机试验得到的,受试者并不都是自愿服药的,因此存在偏差,即试验设置和实际情况不同。鉴于C先生已死亡,应计算其当初如果没有服药且不会死亡的几率,即被告责任的计算应服从反事实理论。假设药品不会阻止死亡(即服药后要不维持现状,要不加剧死亡),则单调性成立,必要性概率可表示如下:
P 2 = P ( y ∣ x ) − P ( y ∣ x ′ ) P ( y ∣ x ) + P ( y ∣ x ′ ) − P ( y ∣ d o ( x ′ ) ) P ( x , y ) = 0.002 − 0.028 0.002 + 0.028 − 0.014 0.001 = − 13 + 14 = 1 P_2=\frac{P(y|x)-P(y|x')}{P(y|x)}+\frac{P(y|x')-P(y|do(x'))}{P(x,y)}=\frac{0.002-0.028}{0.002}+\frac{0.028-0.014}{0.001}=-13+14=1 P2​=P(y∣x)P(y∣x)−P(y∣x′)​+P(x,y)P(y∣x′)−P(y∣do(x′))​=0.0020.002−0.028​+0.0010.028−0.014​=−13+14=1

可以看出,根据调查数据观测到的 E R R ERR ERR为-13,给人的印象是药品能阻止死亡,但是偏差校正项(+14)修正了这种印象,使得必要性概率为1。另外,代入数据计算得到下界 L B = 1 LB=1 LB=1,因此可以得出结论:即使没有单调性假设,必要性概率也为1,即原告是正确的。如果抽样本身没有问题,数据提供了充分的支持,表明药品确实是C先生死亡的原因,药品制造商应对C先生的死亡承担全部责任。


总结

客观数据是实际工程中的重要组成部分,其主要包含试验数据和观测数据。一般情况下,观测数据更容易获得,更客观且成本更低,但是其中存在混杂因素,因此无法直接用于因果推断。混杂因素的发现并衡量,是反事实归因问题的重要部分。


参考文献
[1] Pearl J, Glymour M, Jewell NP. Causal inference in statistics: a primer. Hoboken: John Wiley & Sons; 2016.
[2] Kuang K, Li L, Geng Z, et al. Causal inference. Engineering, 2020.

因果推断学习笔记(一)——反事实推理中的归因问题相关推荐

  1. 因果推断(五)——反事实,后悔药?

    反事实推断一个词概括就是"后悔". 例子:"还是以小夏开店为例,小夏请了A明星代言后,销售量虽然有提升,但是由于该明星的代言费很贵,导致最终还是亏本了.于是,小夏想要是当 ...

  2. Sharepoint学习笔记---如何在Sharepoint2010网站中整合Crystal Report水晶报表(显示数据 二)...

    在Sharepoint学习笔记---如何在Sharepoint2010网站中整合Crystal Report水晶报表(显示数据一)中,解释了如何把Crystal Report整合到Sharepoint ...

  3. JavaScript学习笔记06【高级——JavaScript中的事件】

    w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...

  4. MySQL学习笔记(六)-MySQL中库和表的管理

    MySQL学习笔记(六)-MySQL中库和表的管理 作者:就叫易易好了 日期:2020/11/23 1 2 DDL即数据定义语言 创建:create 修改:alter 删除:drop 库和表的管理: ...

  5. Android学习笔记---22_访问通信录中的联系人和添加联系人,使用事物添加联系人...

    Android学习笔记---22_访问通信录中的联系人和添加联系

  6. Hadoop学习笔记—13.分布式集群中节点的动态添加与下架

    Hadoop学习笔记-13.分布式集群中节点的动态添加与下架 开篇:在本笔记系列的第一篇中,我们介绍了如何搭建伪分布与分布模式的Hadoop集群.现在,我们来了解一下在一个Hadoop分布式集群中,如 ...

  7. PhalAPI学习笔记拓展篇 ———ADM模式中NotORM实现简单CURD

    PhalAPI学习笔记拓展篇 ---ADM模式中NotORM实现简单CURD 前言 内容 ADM模式 ADM简单介绍 准备工作 PhalAPI提供的CURD操作方法 业务实现 结束语 前言 公司业务需 ...

  8. 假装认真的LaTeX学习笔记(1)—— Sublime中自动补全LaTeX命令(LaTeX-cwl安装教程)

    假装认真的LaTeX学习笔记(1)-- Sublime中自动补全LaTeX命令 简介 使用环境 如何在Sublime中获得LaTeX自动补全功能 安装Sublime插件--LaTeX-cwl 方法一: ...

  9. oracle复制另一个字段,【学习笔记】Oracle存储过程 表中列不同时动态复制表中数据到另一个表中...

    天萃荷净 分享一篇关于Oracle存储过程实现表之间数据复制功能.两表中列不同,动态的将一表中的数据复制到另一个表中案例 因为要用到回收站功能,删除一条记录,要先放到一个delete表中,以便以后恢复 ...

最新文章

  1. 关于Pulsar与Kafka
  2. python数据库-mysql
  3. 使用ThreadPoolExecutor并行化独立的单线程任务
  4. 【目标检测】单阶段算法--YOLOv3详解
  5. 通过AccessKey调用阿里云CDN接口刷新CDN资源案例
  6. Python数据类型(3)
  7. redis LRU和LFU
  8. Android Protect-0.luyten+jadx+simplify简单介绍
  9. ubuntu下gstreamer解码器
  10. L2-特立独行的幸福
  11. 《生命中不能承受之轻》读书笔记
  12. 用Java写一个简易五子棋游戏
  13. 将win7 firefox WebStorm PyCharm等JetBrains系列开发软件设置为豆沙绿护眼背景
  14. faxicon.ico制作(笔记)
  15. 找数据?这几个数据源网站就够用了?
  16. 第一章 程序设计入门--算法竞赛入门经典
  17. Windows battery report
  18. C语言中continue可以用于switch语句中吗?
  19. 【安卓笔记】如何设置模拟器的IP
  20. 探秘双“11”征服马云刘强东的电商架构 !

热门文章

  1. 前端将两张图片合为一张
  2. 论文推荐:CCNet用于语义分割的交叉注意力
  3. 国产14纳米芯片的推出,或代表着7纳米国产有了希望
  4. 中兴cxt路测软件mos测试,LTEMOS优化测试指导书.docx
  5. DID-M3D | 用于单目3D目标检测的解耦实例深度(ECCV2022)
  6. 【c语言】使用char数组实现对中文汉字的处理
  7. 您可以找到的 5 种最佳数据恢复软件
  8. js 获取一个月有多少天的方式
  9. Wondershare Recovery - 万兴数据恢复专家,恢复你 Mac 上的重要文件
  10. windows中tomcat查看和杀死进程