二、一些问题

2.1如何从RCT随机样本过渡到观测样本因果建模?

对于RCT样本的情况,如果希望评估ATE指标,可以通过分组相减或DID(difference in difference)。如果希望评估CATE指标,可以通过uplift 建模。常见的方法比如有meta-learner,double machine learning,causal forest等等。这里需要注意必要的三大假设:SUTVA,Unconfoundedness和Positivity。最核心的假设为:不存在未观测混淆因子。

对于仅有观测样本的情况,无法直接获取treatment->outcome的因果关系,我们需要借助必要的手段切断covariates到treatment的后门路径。常见方法是工具变量法和反事实表示学习。工具变量法需要对具体业务抽丝剥茧,绘制业务变量中因果图。反事实表示学习则依靠成熟的机器学习,匹配covariates相似的样本做因果评估。

W:工具变量

Y:gmv

首先通过X预测T,与真实的T作差,得到一个T的残差,然后通过X预测Y,与真实的Y作差,得到一个Y的残差,预测模型可以是任何ML模型,最后基于T的残差和Y的残差进行因果建模。

2.2 反事实学习的核心思想

反事实学习的核心思想就是平衡不同treatment下的特征分布。

核心问题有两个:

1. 如何调整训练样本的权重?

2. 如何在表示空间中,使变换后的样本在实验组和对照组分布更加均衡?

本质思想是在变换映射后,为每个样本寻找它的反事实“双胞胎”。映射之后treatment组和control组X的分布比较相似。

2.3度小满的连续反事实额度模型 Mono-CFR

最后来介绍一下度小满的反事实额度模型,这里主要解决的是在观测数据上对连续型Treatment的反事实估计问题。

模型思想:给定期望额度μ(T|X),学习∆T与Y的单调性关系(Dose-Response Curve)。期望额度可以理解为模型学习到的连续性倾向额度,使得混淆变量C和额度T之间的关系能够断开,转换成∆T与Y的因果关系学习,从而对∆T下Y的分布进行较好的刻画。

2.4Mono-CFR代码实现(待补充)

2.5CFR学习

2.5.1TarNet

Pytorch版本

GitHub - patrickzoechbauer/TarNet

Tensorflow版本

GitHub - arnaud39/TARNet: TARNet Model with tensorflow 2 API.

治疗不可知论表征网络,是一种机器学习架构,其具有为特定子网络馈电的通用MLP。它可以帮助识别数据中的偏差,估计平均治疗效果或充当类似迁移学习的模型。

TARNet模型架构

此包将此模型实现为类似于keras的TensorFlow API模型。//

2.5.2CFR

Estimating individual treatment effect: generalization bounds and algorithms

https://openreview.net/pdf?id=HkxBJT4YvB

GitHub - clinicalml/cfrnet: Counterfactual Regression

摘要:将机器学习应用于医疗保健、经济学和教育等领域因果推理问题引起了人们的极大兴趣。特别是,个人层面的因果推理具有重要的应用,例如精准医学。我们给出了一种新的理论分析和算法家族,用于从观测数据中预测个体治疗效果(ITE),假设被称为强可忽略性。该算法学习“平衡”表示,使诱导处理分布和控制分布看起来相似,我们给出了一个新的直观的泛化误差界,表明表示的预期ITE估计误差受该表示的标准泛化误差和表示引起的处理分布和控制分布之间的距离之和的限制。我们使用积分概率度量来测量分布之间的距离,推导出 Wasserstein 和最大平均差异 (MMD) 距离的显式边界。对真实数据和模拟数据的实验表明,新算法匹配或优于最先进的算法。

在TarNet加入IPM后就是我们所说的 CounterFactual Regression Network (CFRNet)。

2.5.3 DR-CFR

Learning Disentangled Representations for CounterFactual Regression

学习反事实回归的解纠缠表征
摘要:我们考虑从观察数据中估计治疗效果的挑战;指出,一般来说,只有一些基于观察到的协变量 X 的因素有助于选择治疗 T ,只有一些因素来确定结果 Y。我们通过考虑 {X, T, Y } 的三个潜在来源来模拟这一点,并表明显式建模这些来源为指导设计更好地处理观察数据集中的选择偏差的模型提供了很好的见解。本文试图概念化这一思路,并提供进一步探索它的路径。在这项工作中,我们提出了一种算法(1)从任何给定的观察数据集 D 和(2)中识别上述潜在因素的分离表示,并利用这些知识来减少选择偏差对从 D 估计治疗效果的负面影响。我们的实证结果表明,所提出的方法在基于个人和人口的评估措施中都实现了最先进的性能。

  1. 因果推断 之 DeR-CFR - 知乎
  2. DML-因果推断 - 知乎
  3. 因果推断5--DML(个人笔记)_dml因果_飞翔的七彩蜗牛的博客-CSDN博客
  4. 基于反事实因果推断的度小满额度模型
  5. 因果推断深度学习工具箱 - CounterFactual Regression with Importance Sampling Weights - 简书
  6. 因果推断综述及基础方法介绍(二)
  7. 因果推断|反事实推断|经典论文解读|SITE模型-基于表示学习 - 知乎
  8. 因果推断|反事实推断|经典论文解读|TargetNet&CFR模型-基于表示学习 - 知乎
  9. 因果推断 之 DeR-CFR - 知乎
  10. 因果推断笔记 | 因果推断中的表示学习 TarNet & CFRNet - 知乎
  11. 大白话谈因果系列文章(四)估计uplift--深度学习方法 - 知乎
  12. [转]增益模型(Uplift Modeling)的原理与实践_Just Jump的博客-CSDN博客
  13. uplift model增益模型相关术语概念名词汇总_Just Jump的博客-CSDN博客
对于仅有观测样本的情况,无法直接获取treatment->outcome的因果关系,我们需要借助必要的手段切断covariates到treatment的后门路径。首先通过X预测T,与真实的T作差,得到一个T的残差,然后通过X预测Y,与真实的Y作差,得到一个Y的残差,预测模型可以是任何ML模型,最后基于T的残差和Y的残差进行因果建模。期望额度可以理解为模型学习到的连续性倾向额度,使得混淆变量C和额度T之间的关系能够断开,转换成∆T与Y的因果关系学习,从而对∆T下Y的分布进行较好的刻画。 试图利用一个近期的或容易得到的中间指标来替代远期的或难以得到的终点指标。 抑制心律失常能降低发生心脏骤停的可能性,曾将[抑制心律失常]作为评价[治疗猝死药物]的替代指标。 因为混杂因子而造成了很多的悖论: Yule-Simpson 悖论:吸烟分别对男性和对女性都有害,但是吸烟对人类有益 替代指标悖论:临床试验将心律失常作为猝死的替代指标。但是,一些能有效纠正心律失常的药物,后来发现不但不能减少猝死, 而导致数万人过早死亡 http://www.engin KDD2021论文推荐:盒马-融合 事实 预测与MDP 模型 的清滞销定价算法 Markdowns-in-E-Commerce-Fresh-Retail-A-Counterfactual-Prediction-and-Multi-Period-Optimization-Approach 利用 机器学习 因果 推理进行弹性定价 数据分析36计(29):价格需求弹性和 因果 推断 简单版:DML.ipynb 数据集:Association Rules and Market Basket Analysis 论文地址:
文章很长,建议收藏起来慢慢读! 疯狂创客圈 总目录 为您奉上珍贵的 学习 资源 : 免费赠送 经典图书:《Java高并发核心编程(卷1)》 面试必备 + 大厂必备 +涨薪必备 加尼恩免费领 免费赠送 经典图书:《Java高并发核心编程(卷2)》 面试必备 + 大厂必备 +涨薪必备 加尼恩免费领 免费赠送 经典图书:《Netty Zookeeper Redis 高并发实战》 面试必备 + 大厂必备 +涨薪必备 加尼恩免费领 免费赠送 经典图书:《SpringCloud Nginx高并发核心编
推断 数据间存在的 因果 关系是很多科学领域中的一个基础问题,然而现在暂时还没有快速有效的方法对缺失数据进行 因果 推断 。为此,提出一种基于加性噪声 模型 下适应缺失数据的 因果 推断 算法。该算法是基于加性噪声 模型 下利用最大似然估计法结合加权样本修复数据的思想构造以似然函数形式的 模型 评分函数,并以此 模型 相对于缺失数据集的优劣程 ,通过迭代 学习 确定 因果 方向,每次迭代 学习 包括使用参数修复数据和在修复后的完整数据集下估计参数。该方法既解决了加性噪声 模型 中映射函数的参数 学习 困难性问题,又避免了现有 学习 方法所存在的主要问题。实验表明,在数据缺失比例扩大的情况下该算法仍具有较高的识别能力。
在MATLAB中,有许多 因果 推断 模型 可以使用。以下是一些常用的 因果 推断 模型 : 1. Granger 因果 模型 :可以使用MATLAB中的grangercausality函数实现。 2. 动态 因果 模型 (DAG):可以使用MATLAB中的Bayesian Network Toolbox实现。 3. 因果 关系发现:可以使用MATLAB中的Causal Discovery Toolbox实现。 4. 因果 分析:可以使用MATLAB中的CausalImpact函数实现。 这些 模型 都可以用于 因果 推断 ,但使用的方法和技术会有所不同。具体使用哪种 模型 取决于你的具体应用场景和数据类型。