causalml

GitHub
5.8k 856 简单 1 次阅读 今天NOASSERTION开发框架
AI 解读 由 AI 自动生成,仅供参考

CausalML 是一款由 Uber 开源的 Python 工具包,专为利用机器学习算法进行因果推断和增益建模(Uplift Modeling)而设计。在传统的预测模型中,我们往往只能知道用户“是否会购买”,却难以判断这一行为是否真的由我们的营销动作引起。CausalML 正是为了解决这一痛点,它能够在不依赖强模型假设的前提下,从实验数据或历史观测数据中,精准估算出干预措施(如广告投放、优惠券发放)对特定个体产生的净效应(即条件平均处理效应,CATE)。

这款工具特别适合数据科学家、算法工程师以及从事因果推断研究的专业人员使用。通过 CausalML,企业可以优化营销策略,将资源精准投向那些“只有收到广告才会产生转化”的敏感人群,从而显著提升投资回报率(ROI);同时,它也支持构建个性化的推荐系统,帮助决策者在多种互动方式中为不同用户选择最优方案。其技术亮点在于提供了一套标准化的接口,集成了多种前沿的机器学习因果推断算法,让复杂的因果分析变得像调用常规机器学习模型一样便捷高效,是连接学术研究与工业界落地应用的有力桥梁。

使用场景

某大型电商平台的营销团队正试图优化“新用户首单立减”优惠券的发放策略,希望在预算有限的情况下最大化整体转化率。

没有 causalml 时

  • 盲目撒网导致预算浪费:团队只能依据历史转化率高低进行人群筛选,结果将大量优惠券发给了“无论发不发券都会购买”的自然转化用户,造成严重的资源冗余。
  • 误伤潜在流失用户:缺乏对因果效应的评估,无法识别那些“发了券反而觉得品牌廉价而放弃购买”的负面响应群体,导致部分用户体验下降。
  • 策略迭代依赖直觉:由于无法量化每个用户特征对干预效果的异质性影响(CATE),运营人员只能凭经验调整规则,A/B 测试周期长且难以定位具体失效原因。
  • ROI 提升遭遇瓶颈:传统的预测模型仅能预估用户购买概率,却无法区分“相关性”与“因果性”,导致营销活动的投资回报率长期停滞不前。

使用 causalml 后

  • 精准锁定敏感人群:利用 uplift modeling 算法估算个体层面的条件平均处理效应(CATE),成功识别出仅在收到优惠券后才会下单的“被说服者”,将预算集中投向该群体。
  • 自动规避负面效应:causalml 帮助团队提前发现并排除了对促销敏感的负向用户,避免了因不当干预导致的用户流失和品牌损害。
  • 实现千人千面决策:基于机器学习算法量化不同特征组合下的差异化治疗效果,支持系统为每位用户动态推荐最优的干预方式(如发券金额或渠道)。
  • 数据驱动高效迭代:通过直接观测干预带来的净增量收益,团队能快速验证假设并优化模型,显著缩短了策略调优周期,大幅提升了活动 ROI。

causalml 的核心价值在于将营销决策从“预测谁会买”升级为“判断谁因干预而买”,从而在复杂业务场景中实现真正的降本增效。

运行环境要求

操作系统
  • 未说明
GPU

未说明

内存

未说明

依赖
notesREADME 中未直接列出具体的运行环境需求(如操作系统、GPU、内存、Python 版本及依赖库),仅提供了安装文档的链接。用户需参考官方安装文档(https://causalml.readthedocs.io/en/latest/installation.html)获取详细配置信息。该项目由 Uber 开发,主要用于提升建模和因果推断,支持多种机器学习算法。
python未说明
未说明
causalml hero image

快速开始


PyPI Version Build Status Documentation Status Downloads CII Best Practices

免责声明

本项目目前处于稳定状态,并正在孵化以实现长期支持。它可能包含新的实验性代码,其API可能会发生变化。

Causal ML:用于提升建模和基于机器学习的因果推断的Python库

Causal ML 是一个基于最新研究[1]的Python库,提供了一系列利用机器学习算法进行提升建模和因果推断的方法。它提供了一个标准接口,允许用户从实验或观察性数据中估计条件平均处理效应(CATE)。本质上,它在不对模型形式做强假设的情况下,估计干预变量 T 对结果变量 Y 在具有观测特征 X 的个体上的因果影响。典型的使用场景包括:

  • 营销活动目标受众优化:提高广告投放投资回报率的一个重要手段是将广告精准投放给那些在特定关键绩效指标(如互动或销售额)上会有积极反应的客户群体。通过A/B实验或历史观察性数据,CATE可以在个体层面估算广告曝光对KPI的影响,从而识别出这些高响应客户。

  • 个性化用户互动:企业与客户之间存在多种互动方式,例如在追加销售中提供不同的产品选择,或在沟通中使用不同的消息渠道。可以利用CATE来估计每个客户与每种互动方式组合下的异质性处理效应,从而构建最优的个性化推荐系统。

文档

文档可在以下网址查阅: https://causalml.readthedocs.io/en/latest/about.html

安装

安装说明请参见: https://causalml.readthedocs.io/en/latest/installation.html

快速入门

包含代码片段的快速入门指南请参见: https://causalml.readthedocs.io/en/latest/quickstart.html

示例笔记本

示例笔记本请参见: https://causalml.readthedocs.io/en/latest/examples.html

贡献

我们欢迎社区开发者参与本项目的贡献。在开始之前,请先阅读我们的行为准则并查看贡献指南

版本管理

我们在变更日志中记录了版本及变更信息。

许可证

本项目采用Apache 2.0许可证授权——详细信息请参阅LICENSE文件。

参考文献

文档

研讨会、演讲及出版物

引用

若在出版物中引用CausalML,可参考以下来源:

白皮书: CausalML:用于因果机器学习的Python库

BibTeX:

@misc{chen2020causalml, title={CausalML: Python Package for Causal Machine Learning}, author={Huigang Chen and Totte Harinen and Jeong-Yoon Lee and Mike Yung and Zhenyu Zhao}, year={2020}, eprint={2002.11631}, archivePrefix={arXiv}, primaryClass={cs.CY} }

文献

  1. 陈慧刚、托特·哈里宁、李正允、迈克·容和赵振宇。“Causalml:用于因果机器学习的Python软件包。” arXiv预印本arXiv:2002.11631(2020)。
  2. 拉德克利夫,尼古拉斯·J.,和帕特里克·D·萨里。“基于显著性检验的提升树在现实世界中的提升建模。” Stochastic Solutions白皮书TR-2011-1(2011):1–33页。
  3. 赵燕、方晓和大卫·辛奇-列维。“具有多处理和一般响应类型的提升建模。” 2017年SIAM国际数据挖掘会议论文集。工业与应用数学学会,2017年。
  4. 汉索蒂亚,贝赫拉姆,和布拉德·鲁克斯塔尔斯。“增量价值建模。” 交互营销杂志16.3(2002):35–46页。
  5. 扬尼克·罗斯勒、理查德·古塞和德特列夫·肖德尔。“两全其美:利用提升建模和异质性处理效应的最新进展优化目标定位策略”。信息系统国际会议(2022)。
  6. 苏晓刚等。“通过递归划分进行亚组分析。” 机器学习研究杂志10.2(2009)。
  7. 苏晓刚等。“为大型观察性研究提供评分和因果推断树。” 机器学习研究杂志13(2012):2955页。
  8. 阿西和圭多·伊姆本斯。“用于异质性因果效应的递归划分。” 美国国家科学院院刊113.27(2016):7353–7360页。
  9. 昆泽尔,索伦·R.等。“使用机器学习估计异质性处理效应的元学习器。” 美国国家科学院院刊116.10(2019):4156–4165页。
  10. 倪欣坤和斯特凡·韦格尔。“异质性处理效应的准oracle估计。” arXiv预印本arXiv:1712.04912(2017)。
  11. 邦,熙静和詹姆斯·M·罗宾斯。“缺失数据和因果推断模型中的双重稳健估计。” 生物计量学61.4(2005):962–973页。
  12. 范德兰,马克·J.和丹尼尔·鲁宾。“目标最大似然学习。” 国际生物统计学杂志2.1(2006)。
  13. 肯尼迪,爱德华·H.:“异质性因果效应的最优双稳健估计。” arXiv预印本arXiv:2004.14497(2020)。
  14. 卢伊佐斯,克里斯托斯等。“基于深度潜在变量模型的因果效应推断。” arXiv预印本arXiv:1705.08821(2017)。
  15. 施,克劳迪娅、戴维·M·布莱和维克多·维奇。“将神经网络应用于处理效应估计。” 第33届神经信息处理系统大会(NeurIPS 2019),2019年。
  16. 赵振宇、张玉敏、托特·哈里宁和迈克·容。“提升建模的特征选择方法。” arXiv预印本arXiv:2005.03447(2020)。
  17. 赵振宇和托特·哈里宁。“考虑成本优化的多处理提升建模。” 2019年IEEE数据科学与高级分析国际会议论文集,第422–431页。IEEE,2019年。

相关项目

  • uplift:R语言中的提升模型
  • grf:包含异质性处理效应估计的广义随机森林,适用于R语言
  • rlearner:实现R-Learner的R语言包
  • DoWhy:基于朱迪亚·珀尔的do演算的Python因果推断工具
  • EconML:实现来自计量经济学和机器学习方法的异质性处理效应估计器的Python软件包

版本历史

v0.112021/07/29
v0.10.02021/02/19
v0.9.02020/10/23
v0.8.02020/10/21
v0.16.02026/02/06
v0.15.52025/07/09
v0.15.42025/05/15
v0.15.32025/02/20
v0.15.22024/10/01
v0.15.12024/04/19
v0.15.02024/02/22
v0.14.12023/08/28
v0.14.02023/07/08
v0.13.02022/09/02
v0.12.32022/03/14
v0.12.22022/02/18
v0.12.12022/02/05
v0.12.02022/01/14
v0.11.12021/08/02

常见问题

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|4天前
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|5天前
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

149.5k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

108.3k|★★☆☆☆|今天
开发框架图像Agent

gemini-cli

gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。

100.8k|★★☆☆☆|昨天
插件Agent图像

markitdown

MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器

93.4k|★★☆☆☆|4天前
插件开发框架