GCF:在线市场异质治疗效果估计的广义因果森林

news2024/11/24 20:06:48

英文题目:GCF: Generalized Causal Forest for Heterogeneous Treatment Effects Estimation in Online Marketplace

中文题目:GCF:在线市场异质治疗效果估计的广义因果森林

单位:滴滴&美团

时间:2022

论文链接:https://arxiv.org/pdf/2203.10975.pdf

代码:GitHub - ehkennedy/npcausal

(该软件包提供了多种工具,可用于在各种设置中对因果关系进行非参数估计。这些方法基于影响函数理论,可以结合灵活的机器学习和高维回归工具,同时仍以置信区间和假设检验的形式产生推理。许多方法都倍加健壮。) 

摘要:

提升建模是一种快速增长的方法,它利用因果推理和机器学习方法直接估计异质治疗效果,近年来被广泛应用于各种在线市场来辅助大规模决策。现有的流行模型,如因果森林(CF),仅限于离散处理,或者对可能存在模型错误指定的结果处理关系提出参数假设。然而,连续处理(例如价格、持续时间)经常出现在市场中。为了缓解这些限制,我们使用基于核的双鲁棒估计器来恢复能够灵活建模连续治疗效果的非参数剂量响应函数。此外,我们提出了一种通用的基于距离的分裂准则来捕捉连续处理的异质性。我们将所提出的算法称为广义因果森林 (GCF),因为它将 CF 的用例推广到更广泛的设置。我们通过推导估计器的渐近性质并将其与合成数据集和真实数据集上流行的提升建模方法进行比较,证明了GCF的有效性。我们在Spark上实现了GCF,并在领先的拼车公司成功地将GCF部署到大规模在线定价系统中。在线 A/B 测试结果进一步验证了 GCF 的优越性。

关键词:效应估计、连续处理、提升建模、在线市场

1引言

DiDi、Uber 和 Lyft 等拼车平台的兴起有助于为乘客提供方便的移动服务,并为司机提供灵活的工作机会。然而,鉴于这种双边市场的高度动态性质,拼车平台有效地平衡需求和供应是非常具有挑战性的。例如,在短时间内,给定区域中空闲驱动程序的数量可以看作是一个常数,因为车辆重新定位需要时间。另一方面,由于价格的变化、ETA的干扰和道路拥堵的严重程度等各种原因,乘客的请求很容易转移。因此,调整需求是拼车平台策略的核心,经常引起更多的关注[19,26]。等待时间较长,此后损害了乘客的经验,恶化了市场的效率。在翻转方面,如果激励不够强,那么刺激足够的请求来平衡同一ODT上的空闲驱动程序可能是不够的。只有当准确估计需求价格曲线时,才能获得最佳折扣。然而,曲线在不同的 ODT 中可能存在显着差异。

例如,在图 2 中,我们展示了需求如何随着不同 ODT 的价格而变化。因此,不同 ODT 的相同折扣几乎没有意义。换句话说,平台应该通过利用 ODT 的特定信息和实时供需关系相应地为 ODT 分配适当的折扣,以识别折扣对需求曲线的影响。

更一般地说,问题是如何估计不同场景下对需求的折扣效应,正式描述为因果推理领域异质治疗效果(HTE)估计的问题,这对决策者在广泛的背景下的兴趣越来越大。它揭示了干预对亚组水平的影响,从而提供了高度量身定制的建议,而不是一刀切的策略。此外,对于在线拼车市场,(多个)连续处理很普遍,因为多个出行选项可用,如图1所示。在连续处理下估计因果效应对市场提出了挑战,同时保持了最大化其效率和性能的关键。

已经开发了一系列算法来解决 HTE 估计的问题。最早的解决方案可以追溯到隆升建模最吸引人的时候,如[23],最近被应用于在线市场,如[16,28]。然而,这些实现未能讨论如何减轻观测数据中普遍存在的混淆偏差。相比之下,统计和计量经济学方法,如因果森林(CF)[1,5]在混杂变量存在的情况下,直接考虑结果与治疗之间的关系。然而,估计量的理论性质建立在这样一个假设之上,即结果在治疗中部分是线性的。在实践中,折扣对请求的影响可以是任何处理的函数,如图2所示。为了解决这个问题,[2,6,18,27]提出使用非参数回归来解决非线性HTE估计。我们的工作建立在这些工作的理论结果之上。同时,该算法的可扩展性是将其部署到具有大量数据的在线市场的关键。近年来,还开发了基于神经网络的方法,例如 [22, 25],但它们缺乏可解释性,这在定价策略等高风险设置中很重要。

在本文中,我们通过提出广义休闲森林 (GCF) 来克服上述挑战,这是一种为连续治疗提供非参数 HTE 估计的方法。GCF 在合成数据集和真实数据集上都显示出与现有基线相比的优势,并展示了它在领先的拼车公司的在线部署方面的高性能。此外,我们在Spark上实现了GCF,并通过分布式计算获得了更高的计算效率,这为大规模在线市场的广泛应用铺平了道路。本文的其余部分安排如下。第 2 节介绍了初步符号和背景。然后在第 3 节中,我们正式提出了 GCF。我们通过将其应用于第 4 节中的合成数据集和真实数据集来验证 GCF 的性能。最后,在第 5 节中,GCF 的实际有效性通过其在在线实验中的卓越性能来证明。本节还简要介绍了GCF的Spark实现。我们在第 6 节中进行了一些讨论来结束本文。

2 初步

2.1 符号和假设

2.2剂量-响应函数

Dose-Response Function

2.3核回归和双/去偏估计器 

3 广义 CAUSAL FOREST

在本节中,我们正式介绍了所提出的算法,即 GCF。它通过考虑具有非参数DRF的新分裂准则并使用基于核的双鲁棒估计器对其进行估计,放宽了CF中处理响应关系的部分线性假设。在下文中,我们展示了 GCF 在训练阶段和预测阶段的工作流程,然后详细说明拆分标准 CATE 估计器及其渐近属性。补充部分给出了GCF的实际调整和Spark实现的细节。

我们的算法是在Spark上实现的,用于大规模数据处理,树增长过程的机制与CF的机制不同。准确地说,数据存储在主机器上,树被克隆到每个分支机器上。数据随机分布到分支机器进行并行计算,重新收集到主机器进行集成。树将由每个分支机器上的集成标准更新。该分布式框架利用了多台机器的计算效率并加快了训练过程。

3.1分裂准则

4实验

 

n:样本

t: treatment

pehe:

pmse:

4.2模拟

4.3 Real-world Datasets

评估

文章开始介绍了增益直方图,但是现在基本很少人用了,我这里就只介绍下常用的指标。

auuc和qini

Qini曲线和Uplift曲线有些类似 

5实施与部署

我们将我们的算法部署到领先的拼车公司的在线定价系统中。该系统旨在提供最佳定价策略,该策略支持超过 5 亿个乘客和数以万计的司机每天。鉴于如此大量的数据,我们在Spark上实现了GCF,通过分布式计算来加速模型训练。如图 4 所示,系统首先从实验系统中收集真实世界的数据。在下文中,数据被发送到模型训练模块,其中训练 GCF 和其他基线模型。随后,定制评估指标(例如,Qini 分数)选择的最佳模型为策略优化模块提供治疗效果预测,该模块为在线服务生成全局最优定价策略。为了检查我们模型的经验有效性,我们使用在线 A/B 测试比较了 GCF 和 CF 在两种业务设置下产生的折扣策略。我们通过将 ODT 随机分成两组来进行在线 A/B 测试。请注意,这里考虑的数据只占整个市场的一小部分,这意味着可以忽略网络效应。性能评估的关键指标是完成订单 (FO) 的增量,其结果如下。与 CF 相比,GCF 在单移动性选项策略和双移动性选项策略中分别提高了 15.1% 和 25.2%。结果表明,我们的模型可以更好地估计对复杂系统的治疗效果。

6结论

本文提出了一种新的基于森林的非参数算法,即广义因果森林,以解决连续处理的HTE估计问题。我们通过引入具有通用基于距离的分裂准则的DRF来扩展CF,该准则最大化连续治疗效果的异质性。为了估计DRF,我们使用基于核的双鲁棒估计器来保证双鲁棒性。为了处理大量的数据,我们在Spark上实现了GCF,并在领先的拼车公司成功地将GCF部署在在线定价系统中。实证结果表明,我们的方法明显优于竞争方法。在本文的范围内,我们只涵盖了一维连续处理的情况。但是我们建议的内容可以扩展到多维情况,而无需付出额外的努力。还值得一提的是,当处理空间较高且稀疏时,内核回归可能会受到维度诅咒的影响。更鲁棒的高维处理 HTE 估计算法有望成为未来的研究领域。

参考

做因果推断最难的是什么。 崔鹏教授说:最难的是评估,因为这是很上帝视角的东西。

  1. 因果推断uplift模型-GCF - 知乎
  2. DESCN:用于个体治疗效果估计的深度全空间交叉网络-CSDN博客
  3. 因果推断(三)各种效应和它们之间的关系
  4. 弹性模型的评测指标AUUC - 知乎

Causal Inference and Uplift Modeling A review of the literature重读笔记 - 知乎

Causal Inference and Uplift Modeling A review of the literature论文笔记 - 简书

大白话谈因果系列文章(五)uplift模型评估 - 知乎

闲聊因果效应(4):离线评估 - 知乎

因果推断 | Uplift Model 评估指标 - 知乎

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

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

相关文章

[java]JAVA中文版API手册 -jdk_api_1.8

有mac和win版本 链接:https://pan.baidu.com/s/14WGXJYBICeSxgg6OxBVGRQ 提取码:c03p

MCU、MPU、SOC简介

文章目录 前言一、MCU二、MPU三、SOC总结 前言 随着处理器技术的不断发展,CPU(Central Processing Unit)的发展逐渐出现三种分支,分别是MCU(Micro Controller Unit,微控制器单元) 和MPU(Micro Processor Unit,微处理器…

软考高级系统架构设计师考试经验分享

文章目录 1. 软考介绍(1)什么是软考(2)软考的作用(3)软考各科目的难度(4)考试时间(5)考试形式 2.系统架构设计师备考经验(1)辅导资料&…

数据结构与算法(十)深度优先搜索与广度优先搜索

广度优先搜索 广度优先搜索:从一个顶点出发(由开始时顶点创造顺序优先决定),访问所有没有被访问过的临节点。然后在从被访问过的节点出发,重复之前的操作 如下为一个图 从1出发,先后访问2 3,之后…

String的(toCharArray\split)方法*

题目 class Solution {public int firstUniqChar(String s) {int[] sum new int[26];char[] num s.toCharArray();for(int i0;i<num.length;i) {sum[num[i]-a];}for(int j0;j<num.length;j) {if(sum[num[j]-a] 1) {return j;}}return -1; } }题目 …

我的1827创作纪念日

机缘 习惯性早上打开电脑&#xff0c;看看CSDN上的资讯&#xff0c;了解行业动态、当前新的技术和大佬的分享。自己动手写应该是2019 年 01 月 08 日&#xff0c;当时应该是在用安装和使用Oracle&#xff0c;遇到一些问题&#xff0c;写下第一篇博客 Oracle存储过程常见问题及…

【RK3399 PCIE调试——硬件信息资源获取】

一、1、 硬件接口 二、2、 PCB原理图 三、 官网地址&#xff1a; https://t.rock-chips.com/portal.php 相关资料和固件烧写可参考资料下载菜单

欧拉图及其应用

什么是欧拉图 提到欧拉图就要谈到哥尼斯堡七桥问题&#xff0c;最初有这样的一个问题的&#xff1a;18世纪中叶&#xff0c;东普鲁士哥尼斯堡城有一条贯穿全城的普雷格尔河&#xff0c;河中有两个岛&#xff0c;通过七座桥彼此相连&#xff0c;如下图所示 问题是这样的&…

(非常全面的干货)Python接口自动化测试框架实战开发

一丶叙述 1.项目介绍 整个项目分为四个部分&#xff1a;接口基础丶接口开发丶Unittest与接口测试结合以及接口自动化框架从设计到开发 接口基础包括&#xff1a;HTTP接口 / 常见接口 / 接口工具 / 接口基础知识 接口开发&#xff1a;通过Django来开发get/post接口 Unittes…

“器官短缺”将被打破 基因编辑猪成为人类的“二师兄”

器官移植被称为生命之灯。但是&#xff0c;受制于传统观念及对人体器官捐献意义的不了解&#xff0c;人体器官捐献的数量&#xff0c;还远远达不到需求。目前&#xff0c;全国有近30万的患者在等待器官移植&#xff0c;但每年只有近一万的患者能真正得到器官移植&#xff0c;缺…

银联扫码第三方支付接口申请:开启便捷支付新时代

随着移动支付的普及&#xff0c;越来越多的商家开始接受微信、支付宝等第三方支付平台的付款方式。然而&#xff0c;作为国内最大的银行卡组织&#xff0c;银联也在不断拓展其业务范围&#xff0c;推出了自己的扫码支付接口。本文将为您详细介绍银联扫码第三方支付接口的申请流…

【Azure 架构师学习笔记】- Azure Databricks (5) - Unity Catalog 简介

本文属于【Azure 架构师学习笔记】系列。 本文属于【Azure Databricks】系列。 接上文 【Azure 架构师学习笔记】- Azure Databricks (4) - 使用Azure Key Vault 管理ADB Secret 前言 DataBricks Unity Catalog&#xff08;UC&#xff09;是一个统一的对数据资产治理的解决方案…

【算法Hot100系列】有效的数独

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老导航 檀越剑指大厂系列:全面总结 jav…

GPS 模拟器

GPS 工具包&#xff1a;https://www.ni.com/es/support/downloads/software-products/download.gnss-test-toolkit.html#333303 GPS-SDR-SIM&#xff1a;https://github.com/osqzss/gps-sdr-sim GPS LabVIEW &#xff1a;http://mikioblog.dolphinsystem.jp/2017/08/gps-sdr-si…

FastApi-快速入门1

FastAPI 是一个用于构建 API 的现代、快速&#xff08;高性能&#xff09;的 web 框架&#xff0c;使用 Python 3.8 并基于标准的 Python 类型提示。 关键特性: 快速&#xff1a;可与 NodeJS 和 Go 并肩的极高性能&#xff08;归功于 Starlette 和 Pydantic&#xff09;。最快…

Exception sending a multicast message:Network is unreachable故障

出现这个故障就是没有连接到网络&#xff0c;如果虚拟机没有连接到本机&#xff0c;那么就会出现这个情况&#xff0c;当虚拟机连接到本机就会自动消失&#xff0c;同时如果是用电脑直接安装Ubuntu运行也会出现这个情况&#xff0c;应该是要连接到一个路由器里面这个情况才会消…

Java面向对象综合练习(拼图小游戏),用java图形化界面实现拼图小游戏

1. 设计游戏的目的 锻炼逻辑思维能力利用Java的图形化界面&#xff0c;写一个项目&#xff0c;知道前面学习的知识点在实际开发中的应用场景 2. 游戏的最终效果呈现 Hello&#xff0c;各位同学大家好。今天&#xff0c;我们要写一个非常有意思的小游戏 —《拼图小游戏》 我们…

Filter Options in Select Field

Filter Options in Select Field 假设有两个下拉字段State和City。邦有两个值卡纳塔克邦和马哈拉施特拉邦&#xff0c;城市有四个值&#xff0c;班加罗尔&#xff0c;迈索尔&#xff0c;孟买和浦那。如果希望根据State中选择的值过滤City中的选项&#xff0c;可以编写如下所示的…

EtherCAT主站SOEM -- 13 --Qt-Soem通过界面按键控制 EtherCAT IO模块的io输出

EtherCAT主站SOEM -- 13 --Qt-Soem通过界面按键控制 EtherCAT IO模块的io输出 一 mainwindow.c 文件函数:1.1 自定义PDO配置2.2 主站初始化2.3 去motrorcontrol界面二 motrorcontrol.c 文件三 allvalue.h 文件该文档修改记录:总结一 mainwindow.c 文件函数: mainwindow主界…

JavaScript高级程序设计读书记录(六):定型数组,Map

1. 定型数组 定型数组&#xff08;typed array&#xff09;是 ECMAScript 新增的结构&#xff0c;目的是提升向原生库传输数据的效率。实际上&#xff0c;JavaScript 并没有“TypedArray”类型&#xff0c;它所指的其实是一种特殊的包含数值类型的数组。 1.1 历史 随着浏览器…