【Python实战因果推断】73_图因果模型8

news2024/11/14 15:04:30

目录

Adjusting for Selection Bias

Conditioning on a Mediator


Adjusting for Selection Bias

不幸的是,纠正选择偏倚绝非易事。在我们一直在讨论的例子中,即使有随机对照试验,ATE也无法识别,仅仅是因为你无法在对那些回应了调查的人进行条件化后,关闭新功能与客户满意度之间的非因果关联流。为了取得一些进展,你需要做出进一步的假设,而这正是图形模型开始发挥作用的地方。它使你能够对这些假设非常明确和透明。

例如,你需要假设结果不会导致选择。在我们的例子中,这意味着客户满意度不会导致客户更可能或更不可能回答调查。相反,你将有一些其他可观察变量(或变量集合),它们既导致选择又影响结果。例如,唯一导致客户回应调查的因素可能是他们在应用程序中花费的时间和新功能。在这种情况下,治疗组和对照组之间的非因果关联通过在应用程序中花费的时间流动:

只有专家知识才能告诉你这是一个多么强烈的假设。但如果它是正确的,一旦你控制了在应用程序中花费的时间,新功能对满意度的影响就变得可识别了。

再一次,你在这里应用了调整公式。你只是将数据分割成由X定义的组,以便在这些组内,治疗组和对照组变得可比。然后,你可以简单地计算治疗组和对照组内部比较的加权平均值,使用每个组的大小作为权重。只是现在,你这样做时,同时对选择变量进行了条件化:

ATE=\sum_{x}\left\{(E[Y|T=1,R=1,X]-E[Y|T=0,R=1,X])P(X|R=1)\right\}

总的来说,为了调整选择偏倚,你必须调整导致选择的所有因素,同时还要假设结果或治疗既不直接导致选择,也不与选择共享隐藏的共同原因。例如,在以下图中,由于对S进行条件化打开了T和Y之间的非因果关联路径,存在选择偏倚:

你可以通过调整解释选择的可测量变量X3、X4和X5来关闭其中两条路径。然而,有两条路径你无法关闭(用虚线表示):Y->S<-T和T->S<-U->Y。这是因为治疗直接导致选择,而结果与选择共享一个隐藏的共同原因。你可以通过进一步对X2和X1进行条件化来减轻这条路径带来的偏倚,因为它们解释了U的一些变化,但这不会完全消除偏倚。这个图反映了在选择偏倚问题中你更可能遇到的更现实情况,就像我们刚刚作为例子使用的选择偏差。在这些情况下,你能做的最好的事情是对解释选择的变量进行条件化。这将减少偏倚,但不会完全消除它,因为如你所见,1)有导致选择的因素是你不知道或无法测量的,2)结果或治疗可能直接导致选择。

我也并不想给你错误的印象,以为仅仅控制导致选择的一切因素是一个好主意。在以下图中,对X进行条件化会打开一条非因果路径,Y->X<-T:

Conditioning on a Mediator

目前为止所讨论的选择偏倚是由不可避免地进入某个群体的选择引起的(你被迫对响应者群体进行条件化),但你也可以不经意间造成选择偏倚。例如,假设你从事人力资源工作,你想要查明是否存在性别歧视,即同等资质的男性和女性是否薪酬不同。为了进行这项分析,你可能会考虑控制资历等级;毕竟,你想要比较的是资质相同的员工,而资历似乎是一个很好的代理指标。换句话说,你认为如果同一职位的男性和女性薪资不同,你将有证据证明公司存在性别薪酬差距。

这种分析的问题在于,因果图可能看起来像这样:

资历等级是治疗(女性)与薪资之间的路径中的中介变量。直观上,女性和男性之间的薪资差异有一个直接原因(直接路径:女性->薪资)和一个间接原因,通过资历流动(间接路径:女性->资历->薪资)。这张图告诉你,女性遭受歧视的一种方式是她们升迁至更高资历的概率较低男性和女性之间的薪资差异部分是同一资历级别下的薪资差异,但也是资历级别的差异。简而言之,女性->资历->薪资路径也是治疗与结果之间的因果路径,你不应在分析中关闭它。如果你在控制资历的情况下比较男性和女性的薪资,你只会识别出直接歧视,即女性->薪资。

值得一提的是,对中介节点的后代进行条件化也会引起偏倚。这种选择并没有完全关闭因果路径,但部分阻塞了它:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2091331.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【精选】基于Django开发的静思阁自习预约管理系统(全网最新项目,独一无二)

博主介绍&#xff1a; ✌我是阿龙&#xff0c;一名专注于Java技术领域的程序员&#xff0c;全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师&#xff0c;我在计算机毕业设计开发方面积累了丰富的经验。同时&#xff0c;我也是掘金、华为云、阿里云、InfoQ等平台…

视频结构化从入门到精通——视频结构化技术应用难点

视频结构化技术应用难点 随着视频数据在智能安防、智能交通、零售分析等领域的广泛应用&#xff0c;视频结构化技术成为了提取视频信息的关键。然而&#xff0c;在实际应用中&#xff0c;这项技术面临着诸多挑战。本文将深入探讨这些难点&#xff0c;并提供可能的解决方案和未…

saas收银系统源码(附部分代码截图)

随着时代不断发展&#xff0c;很多连锁品牌不断涌现&#xff0c;门店数量也日益增多&#xff0c;但连锁品牌在选收银系统时&#xff0c;如果选择传统的SaaS模式合作&#xff0c;按门店数量、按功能模块收取服务费&#xff0c;门店数量如果多&#xff0c;每年也会是一笔不小的开…

SQL进阶技巧:近N指标如何精确计算并扩充?

目录 0 场景描述 1 数据准备 2 问题分析 3 小结 0 场景描述 假设表price 有三个字段 用户: user_id 日期:dt 订单金额 price,求每个用户的近N天的消费金额 近N指标的种类多,且日期跨度近期密,远期大。表price : 结果: 近N:rds(recent_days) dt user_id rds…

8月31日微语报,星期六,农历七月廿八

8月31日微语报&#xff0c;星期六&#xff0c;农历七月廿八&#xff0c;周末愉快&#xff01; 一份微语报&#xff0c;众览天下事&#xff01; 1、川渝地区正经历同期罕见高温&#xff0c;与高压天气系统和地形有关。 2、全国超六成GDP增量产自59城&#xff0c;深圳超京沪居…

缓存:浅谈双写导致的数据一致性问题

从理论上来说&#xff0c;给缓存设置过期时间&#xff0c;是保证最终一致性的解决方案。这种方案下&#xff0c;我们对存入缓存的数据设置过期时间&#xff0c;所有的写操作以数据库为准&#xff0c;对缓存操作只是尽最大努力更新即可。也就是说如果数据库写成功&#xff0c;缓…

爬虫入门urllib 和 request (一)

前言 在开始进行爬虫的知识之前&#xff0c;我们需要明白web网页是怎么工作的&#xff1f;浏览器工具是怎么使用的&#xff1f;反爬虫的手段手段是那些&#xff1f; 一.web请求全过程解析 我们浏览器在输入完网址到我们看到网页的整体内容, 这个过程中究竟发生了些什么? 我…

JavaEE 第21节 UDP数据报结构剖析

目录 前言报文结构1、源端口号&目的端口号2、UDP长度3、校验和概念校验和计算方法 前言 本篇文章会围绕UDP报文的结构&#xff0c;对此协议展开详细的讲解&#xff0c;比如报文中每个字段的作用、以及填写方式。 阅读完这篇文章&#xff0c;你会对UDP数据报结构有个透彻的…

不知道电脑驱动软件哪个好,试试这几款免费不限速的驱动安装软件

每一台电脑都需要安装相关的驱动才能保证设备的正常运行&#xff0c;然而&#xff0c;很多用户搜索下载的驱动安装软件不是捆绑各类软件就是限速下载或者需要开通会员。下面小编就来和大家分享几款免费且不限速的驱动安装软件&#xff0c;帮助大家找到最适合自己的驱动管理工具…

idea使用maven

文章目录 IDEA集成Maven配置Maven环境 全局配置&#xff1a;创建Maven项目POM配置详解 IDEA集成Maven 我们要想在IDEA中使用Maven进行项目构建&#xff0c;就需要在IDEA中集成Maven 配置Maven环境 当前工程设置 1、选择 IDEA中 File > Settings > Build,Execution,Dep…

7,sql 基本的创建库表查询数据

-- 创建库 CREATE DATABASE IF NOT EXISTS test04_dql; 切换到这个库USE test04_dql;-- 创建员工表 DROP TABLE IF EXISTS t_employee; ---创建字段CREATE TABLE t_employee (eid INT NOT NULL COMMENT 员工编号,ename VARCHAR(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900…

网站建设完成后, 做seo必须知道的专业知识之--黑帽SEO

黑帽SEO是指通过不道德或不公平的手段&#xff0c;试图提高网站在搜索引擎中的排名。下面将详细探讨黑帽SEO的各个方面&#xff1a; 定义与原理 定义概述&#xff1a;黑帽SEO涉及使用作弊策略和技巧&#xff0c;目的在于快速提升网站的搜索引擎排名&#xff0c;而非通过正当的…

Django+Vue音乐推荐系统的设计与实现

目录 1 项目介绍2 项目截图3 核心代码3.1 需要的环境3.2 Django接口层3.3 实体类3.4 config.ini3.5 启动类3.5 Vue 4 数据库表设计5 文档参考6 计算机毕设选题推荐7 源码获取 1 项目介绍 博主个人介绍&#xff1a;CSDN认证博客专家&#xff0c;CSDN平台Java领域优质创作者&…

C语言试题生成与考试系统/在线考试系统/试题管理系统

摘要 学生考试实现智能化管理的帮手需要有试题生成与考试系统&#xff0c;这样能够提高管理员的管理效率&#xff0c;试题生成与考试系统需要提供给用户查询的功能。计算机网络如果结合使用信息管理系统&#xff0c;能够提高管理员管理的效率&#xff0c;改善服务质量。优秀的…

【Linux操作系统】重装系统配置文件一条龙

【Linux操作系统】重装系统配置文件一条龙 文章目录 【Linux操作系统】重装系统配置文件一条龙虚拟机网络配置安装net-tools工具解决屏幕自适应问题解决虚拟机与主机复制粘贴问题文件互通安装ssh服务vscode远程写代码改中文中文输入法支持apt更新源 下面一切案例均在ubantu22.0…

7个流行的开源数据治理工具

数字化时代&#xff0c;数据是已经成为最宝贵的资产之一。数据支撑着我们的政府、企业以及各类组织的所有流程&#xff0c;并为决策以及智能化服务提供支撑。大数据有大用途&#xff0c;但是也可能隐藏着巨大的风险&#xff0c;特别是如果我们对数据的情况不是很了解的时候&…

Java技术栈 —— Spark入门(三)之实时视频流

Java技术栈 —— Spark入门&#xff08;三&#xff09;之实时视频流转灰度图像 一、将摄像头数据发送至kafka二、Kafka准备topic三、spark读取kafka图像数据并处理四、本地显示灰度图像(存在卡顿现象&#xff0c;待优化) 项目整体结构图如下 参考文章或视频链接[1] Architectur…

RocketMQ学习(二)

文章目录 1. 案例介绍1.1 业务分析1&#xff09;下单2&#xff09;支付 1.2 问题分析问题1如何保证数据的完整性&#xff1f;使用MQ保证在下单失败后系统数据的完整性 问题2如何处理第三方支付平台的异步通知通过MQ进行数据分发&#xff0c;提高系统处理性能 2. 技术分析2.1 技…

Visual Studio 快速跳转至特定程序行的快捷键

Visual Studio 快速跳转至特定程序行的快捷键 linuxWindows在Visual Studio中在Visual Code中在Notepad中Win11中的普通记事本 总结 linux :numWindows Ctrl G在Visual Studio中 在Visual Code中 Ctrl G也是可以的 在Notepad中 Ctrl G也是可以的 Win11中的普通记事本…

模型 生产微笑曲线

系列文章 分享 模型&#xff0c;了解更多&#x1f449; 模型_思维模型目录。产业链中&#xff0c;研发设计和品牌营销环节附加值高&#xff0c;制造环节附加值低。 1 生产微笑曲线的应用 1.1 大杨集团的“微笑曲线”到“武藏曲线”转型 武藏曲线简介说明&#xff1a;在制造业…