因果AI如何发现因果

简介: 因果发现算法可以从数据中找到因果关系的线索。其中条件独立是众多算法找寻的关键证据。经典的因果发现算法分2类,一类是基于约束的算法,另一类是基于分数的算法。本文介绍了基于约束的算法中最经典的PC算法的算法思想,让大家能够直观理解算法是如何发现因果关系的,并给出了因果发现算法中的一些不足。

因果AI如何发现因果

21996fe5ef754779bdcbe650016b09af.jpeg

什么是因果发现

先看一个简单的例子。假设我们有一个数据集,这个数据集包含如下变量:冰激凌销量、鲨鱼袭击次数、温度和风速。

我们假设下列陈述都为真。夏季炎热的气候使得人们购买冰激凌和游泳潜水的次数增加,从而导致鲨鱼袭击事件增多。其他气象现象--比如风--驱使鲨鱼在近海岸活动也会增加鲨鱼袭击。

这些都是因果关系和因果效用。我们可以将其总结为一张因果图(如图1)。因果发现的目的是从数据中找到正确的因果结构,就像下图一样:

how_can_ai_discover_cause_and_effect_p1.png

图1. 鲨鱼袭击与冰淇凌销量的因果关联


因果知识如何获取

因果知识可以通过3中互补的方法获得:

  • 干预实验
  • 人类经验和直觉
  • 因果发现算法

实验是发现因果关系的黄金准则,但很多场景下干预实验是不道德的或无法操作的。比如我们无法将人们置于被鲨鱼攻击的危险中,我们也无法人为改变天气去观测对冰淇凌销量的影响。

我们先聚焦在因果发现算法上,后面再回过头来讨论这3种方法。

关联非因果

从观测数据中发现因果关系很难,因为相关不意味着因果。有关相关不等于因果的更多案例请参考 为什么相关不等于因果

例如,鲨鱼袭击和冰淇凌销量有相关性或者说他们在统计上彼此相关(如图2)。但二者之间没有直接的因果关系--是因为维度这个共因导致二者呈现出相关性。这里温度被称为混淆因子。

c25526e10ede4acba5942a385d1c63d2.png

图2. 关联不蕴含因果


如果因果能直接从关联中获取,那么因果发现就变得很容易了,现在的机器学习算法应该早就解决了这个问题。但是正如上面所说的那样,因果发现需要特别的技术去发掘隐藏在关联背后的数据产生过程。

0eddd57fa7f8414a92e53efbbb4086b7.png

图3. 因果关系产生数据中的相关性。因果AI能够发现这些潜在的因果关系,而机器学习只是分析相关性。


从数据中找寻因果证据

因果发现算法可以从数据中找到因果关系的线索。其中 条件独立 是众多算法找寻的关键证据。下面我们详细拆解一下这个概念。

如果两个变量之间没有任何关系,则说这两个变量独立。独立意味着一个变量的值不会告诉我们关于另一个变量的任何信息。比如特斯拉的股价跟鲨鱼袭击相互独立。

条件独立建立在这面这个概念之上:

当给定变量C的值时X和Y彼此独立,那么变量X,Y对给定的变量(或一组变量)C条件独立。

当给定温度后,鲨鱼袭击和冰激凌销量条件独立。因为如果我们已知气温,鲨鱼袭击的发生率不会对冰淇淋销量提供任何新的信息。

为什么条件独立能帮助因果发现?

直觉上,条件独立检验有点类似控制实验。在实验中,我们试图通过控制环境来隔离因果效用,然后调节我们感兴趣的变量。因果发现软件无法做到跟控制实验一样控制环境,但在所有背景因素上进行调节是次优的选择。

经典因果发现算法

接下来让我们宏观地看一下因果发现算法,去了解因果发现是如何工作的。

“基于约束”的算法是因果发现算法的一类,它采用条件独立关系作为约束,然后构建能够表示这些约束的因果结构。

bdd1597b6dcc465e90e57907825d11ff.png

图4. 基于约束的因果发现算法的流程。首先从数据中建立条件独立关系,然后因果发现算法发现能够表示这些条件独立约束的因果模型。算法最终输出一系列与数据匹配的候选因果结构,称之为“马尔可夫等价类”。


其中"PC算法"是一个经典的基于约束的因果发现算法,算法步骤如下:

  1. 第一步:假设所有变量之间都存在某种关联,我们不知道关联的方向;
  2. 第二步:进行一系列条件独立检验,找到独立变量,去掉相关的边。然后寻找一个变量对另一个变量的条件独立性,移除边的箭头。重复上述步骤,逐步增加参与条件独立检验的变量;
  3. 第三步:定向“对撞结构”(形如 X1 -> Y -> X2 的因果结构)。对撞结构在数据中具有独特的特征,因此可以利用它们来确定边的方向。

078e41258b914d36894e95cc94328dbf.png

图5. PC算法分解


应用因果发现的挑战

因果发现算法(例如PC算法)是人工智能在概念上超越传统机器学习的巨大飞跃。但不幸的是,传统算法在实际应用中存在局限性。

假设过强

许多流行的因果发现算法在大多数用例中都会做出过强的假设。例如,PC算法假设数据之外没有混杂因子,这通常是错误的,可能会带来不准确的因果模型。

e37997487f19482587bcfbf64d0064b0.png

图6. 某些标准算法假设不存在未观测的混杂因子。但现实中往往存在未观测的混杂因子。例如季节(数据中没有)是温度和风速的共因。


计算量大

因果发现算法需要大量计算。例如,随着数据越来越大,PC需要运行的条件独立检验数量会急剧增大。经典的“基于分数”算法是另一种直接搜索可能的因果结构空间的核心方法,但也存在效率低下的问题。这使得大多数因果发现算法在解决实际问题时都显得太慢了。

模型漂移

我们研究发现,因果发现算法不能保证有稳定的模型输出。例如我们发现在基于分数的算法上,修改数据的单位会带来完全不同的因果模型输出。这显然不合理,因果模型不应该因为温度数据是用摄氏度表示还是华氏度表示而不同。

选择困难

对于任何给定的应用,都有大量的因果发现算法可供选择。有些算法比其他算法更适合某些用例。如何选择正确的算法需要大量专业知识和经验。

目录
相关文章
|
机器学习/深度学习 人工智能 Cloud Native
助力 AI 技术共享,蚂蚁开源又一核心技术“因果学习系统 OpenASCE”
技术开源是蚂蚁集团的重要技术战略,我们希望通过开源建立起开放、包容的技术生态,让更多人共享技术红利。
助力 AI 技术共享,蚂蚁开源又一核心技术“因果学习系统 OpenASCE”
|
机器学习/深度学习 人工智能 算法
AI搞了半天只是曲线拟合?贝叶斯网络之父力荐因果关系应用
作者 | Kurt Marko译者 | 核子可乐 AI 前线导读: 人工智能只是优秀的曲线拟合?近两年,关于这一观点的讨论从未停止,图灵奖获得者、贝叶斯网络之父 Judea Pearl 也参与其中,他一直自嘲自己是 AI 社区的反叛者,认为由于人类对智能的真正含义不完全理解而阻碍了人工智能的发展,他曾经在多个场合表达过这样的观点:人工智能领域的技术水平只不过是上一代机器已有功能的增强版——在大量数据中发现隐藏的规律性,所有令人印象深刻的深度学习成果都只是曲线拟合。
AI搞了半天只是曲线拟合?贝叶斯网络之父力荐因果关系应用
|
机器学习/深度学习 人工智能
图灵奖得主Judea Pearl:机器学习无法成为强AI基础,突破口在“因果革命”
图灵奖得主、贝叶斯网络之父Judea Pearl日前在arXiv上传了他的最新论文,论述当前机器学习理论局限,并给出来自因果推理的7大启发。Pearl指出,当前的机器学习系统几乎完全以统计学或盲模型的方式运行,不能作为强AI的基础。
6524 0
|
9月前
|
消息中间件 人工智能 安全
云原生进化论:加速构建 AI 应用
本文将和大家分享过去一年在支持企业构建 AI 应用过程的一些实践和思考。
2261 88
|
10月前
|
人工智能 安全 中间件
阿里云 AI 中间件重磅发布,打通 AI 应用落地“最后一公里”
9 月 26 日,2025 云栖大会 AI 中间件:AI 时代的中间件技术演进与创新实践论坛上,阿里云智能集团资深技术专家林清山发表主题演讲《未来已来:下一代 AI 中间件重磅发布,解锁 AI 应用架构新范式》,重磅发布阿里云 AI 中间件,提供面向分布式多 Agent 架构的基座,包括:AgentScope-Java(兼容 Spring AI Alibaba 生态),AI MQ(基于Apache RocketMQ 的 AI 能力升级),AI 网关 Higress,AI 注册与配置中心 Nacos,以及覆盖模型与算力的 AI 可观测体系。
1756 91
|
9月前
|
人工智能 运维 Kubernetes
Serverless 应用引擎 SAE:为传统应用托底,为 AI 创新加速
在容器技术持续演进与 AI 全面爆发的当下,企业既要稳健托管传统业务,又要高效落地 AI 创新,如何在复杂的基础设施与频繁的版本变化中保持敏捷、稳定与低成本,成了所有技术团队的共同挑战。阿里云 Serverless 应用引擎(SAE)正是为应对这一时代挑战而生的破局者,SAE 以“免运维、强稳定、极致降本”为核心,通过一站式的应用级托管能力,同时支撑传统应用与 AI 应用,让企业把更多精力投入到业务创新。
863 30
|
9月前
|
设计模式 人工智能 自然语言处理
3个月圈粉百万,这个AI应用在海外火了
不知道大家还记不记得,我之前推荐过一个叫 Agnes 的 AI 应用,也是当时在 WAIC 了解到的。
894 2
|
9月前
|
存储 人工智能 NoSQL
AI大模型应用实践 八:如何通过RAG数据库实现大模型的私有化定制与优化
RAG技术通过融合外部知识库与大模型,实现知识动态更新与私有化定制,解决大模型知识固化、幻觉及数据安全难题。本文详解RAG原理、数据库选型(向量库、图库、知识图谱、混合架构)及应用场景,助力企业高效构建安全、可解释的智能系统。
|
9月前
|
人工智能 算法 Java
Java与AI驱动区块链:构建智能合约与去中心化AI应用
区块链技术和人工智能的融合正在开创去中心化智能应用的新纪元。本文深入探讨如何使用Java构建AI驱动的区块链应用,涵盖智能合约开发、去中心化AI模型训练与推理、数据隐私保护以及通证经济激励等核心主题。我们将完整展示从区块链基础集成、智能合约编写、AI模型上链到去中心化应用(DApp)开发的全流程,为构建下一代可信、透明的智能去中心化系统提供完整技术方案。
549 3