为什么相关性不是因果关系?人工智能中的因果推理探秘

目录

一、背景

(一)聚焦当下人工智能

(二)基于关联框架的人工智能

(三)基于因果框架的人工智能

二、因果推理的基本理论

(一)因果推理基本范式:因果模型(Structure Causal Model)

(二)因果推理基本范式:潜在结果框架(Potential Outcome Framework)

三、因果发现和问题定义

四、总结

参考来源


干货分享,感谢您的阅读!

在科技飞速发展的今天,人工智能如同一位具有超能力的魔法师,能够在医疗、金融和司法等领域施展其魅力。然而,随着魔法的展开,潜藏在其背后的风险与挑战也开始逐渐浮出水面。你可能会想:人工智能难道也会搞砸事情吗?当然了!谁会想到一台超级智能的机器在给你做出“该不该吃这块蛋糕”的判断时,会毫不犹豫地告诉你:“你的身材和这块蛋糕不太合适,还是放弃吧!”

但这些问题可不仅仅是关于甜品的选择。随着法规日益严格,人工智能在互联网世界的表现受到了前所未有的关注,许多企业和用户都开始感到“它懂我吗?”“它真的可以信任吗?”诸如此类的问题层出不穷。在这个信息过载的时代,我们常常陷入了“只知其然,不知其所以然”的怪圈。我们知道这套系统给出的预测有时候非常靠谱,但却不知它背后的逻辑是什么。

所以,今天我们要一起探讨的是如何更好地理解因果推理,摆脱那些让人晕头转向的关联模型,进入一个因果关系的清晰世界。我们将揭秘因果推理的基本理论、方法和现实应用,努力让你在面对人工智能时,能够更像一位聪明的魔法师,而不是无助的小白鼠。准备好了吗?让我们一起启程,踏上这场充满趣味与挑战的因果之旅吧!

一、背景

(一)聚焦当下人工智能

未来十到二十年,人工智能技术将深入应用于医疗、司法、生产和金融科技等领域,但伴随而来的是日益增多的风险和挑战。长期以来,人工智能主要在互联网领域发展,但随着法律法规的出台,互联网平台逐渐处于监管的风口浪尖,引起了对潜在风险的关注。因此,人们迫切需要关注人工智能技术所带来的风险。

当我们面对人工智能风险的防控时,往往陷入了「只知其然,不知其所以然」的困境。虽然我们能够进行预测,但很难解释为何要做出某些决策,以及何时应该相信系统的判断。这种情况带来了一系列问题:

问题描述示例
不可解释性人工智能系统难以解释其决策的逻辑,限制了人机协同。在医疗行业,医生不清楚系统判断的依据。
数据分布不匹配主流人工智能方法要求训练数据和测试数据来自相同的分布,实际应用中难以保证。模型在不同数据分布下性能下降。
公平性风险人工智能技术可能引入公平性问题,如对不同背景的人做出不公平的判断。系统判断黑人犯罪率高于白人。
不可回溯性人工智能系统的推理和预测过程通常是不可回溯的,难以调整输入获取所需输出。无法理解系统决策的逻辑。

综上所述,解决人工智能风险需要系统化的方法。这包括发展可解释性的人工智能模型,研究数据分布适应性和领域自适应学习方法,制定公平性指标和约束,并提高系统的可调节性和可控性。只有这样,我们才能更好地应对人工智能技术所带来的风险,实现其安全、可靠地应用于各个领域。

(二)基于关联框架的人工智能

基于关联的框架是指通过观察数据中的相关性来推断变量之间的关系,而基于因果的框架则更注重确定某个变量是否直接导致了结果的变化。

基于关联的框架可能会错误地得出肤色和犯罪率之间存在强关联关系,因为黑人的收入普遍较低,而整体犯罪率也较高。然而,基于因果的框架更加谨慎地考虑了其他可能因素的影响,例如收入水平。通过在两组对照组中控制收入水平的情况下比较黑人和白人的犯罪率,我们可以更准确地判断肤色是否直接导致了犯罪率的差异。在基于关联的框架中,由于未能控制其他可能影响结果的因素,因此可能会产生偏差和误导性的结论。

注意:问题并不在于关联模型本身,而在于如何正确地使用机器学习方法。您指出了关联的三种产生方式:因果机制、混淆效应和样本选择偏差,其中只有因果机制产生的关联是稳定、可解释且可回溯的。

在现实世界中,确实存在许多数据相关性,但并不意味着这些关联就是因果关系。混淆效应和样本选择偏差可能会导致虚假关联,从而影响机器学习模型的性能和可靠性。

(三)基于因果框架的人工智能

从根本上突破当前机器学习的局限性,可能需要使用更严格的统计逻辑,如因果统计,来替代原来的关联统计。这种方法可能会面临一些挑战,因为因果推理主要应用于小数据控制环境下的统计研究,而机器学习往往涉及到大数据环境,其中数据的产生过程是不可控的。

在传统的因果推理框架中,我们通常能够控制数据的产生过程,从而更好地理解因果关系。例如,在一个行为学实验中,研究人员可以控制谁接受了疫苗,谁没有接受,以便推断疫苗的有效性。然而,在大数据的观测研究中,数据的产生过程是不可知的,这给因果推理带来了挑战。

此外,因果推理和机器学习的目标也存在差异。因果推理更注重理解数据产生的机制,而机器学习主要关注预测未来事件的发生。因此,在将因果推理应用于机器学习时,我们需要考虑如何适应大数据环境的特点,并调整方法以解决因果推理和机器学习之间的目标差异。

以下是一套方法体系,旨在解决这个问题:

  • 识别因果结构:在大规模数据中识别出因果结构是首要任务。这可能涉及到利用因果推断方法来确定变量之间的因果关系,包括因果图、因果图模型等技术。这可以帮助我们理解数据生成的机制,并揭示潜在的因果关系。
  • 因果启发的学习模型:一旦识别出因果结构,就需要将这些信息与机器学习模型进行融合。因果启发的学习模型旨在结合因果推断和机器学习方法,以提高模型的解释性、稳定性和准确性。这可能涉及到开发新的机器学习算法,考虑因果关系的约束和先验知识,以及设计适用于大规模数据的因果推断方法。
  • 设计决策机制:最终目标是利用识别出的因果结构来优化决策过程。这包括反事实推理和决策优化机制,以利用因果关系对决策进行指导和优化。这可能涉及到开发基于因果推断的决策模型,考虑潜在的因果效应并设计相应的决策策略。

通过以上方法体系,可以更好地利用因果推理的思想来指导机器学习模型的发展和应用,从而提高模型的解释性、稳定性和决策效果。这需要跨学科的合作和持续的研究努力,以解决因果推理和机器学习之间的鸿沟,并为实现智能决策系统的发展奠定基础。

二、因果推理的基本理论

(一)因果推理基本范式:因果模型(Structure Causal Model)

核心是在已知的因果图中进行推理,包括识别变量之间的因果关系以及影响程度的估计。目前已有一些成熟的方法和准则,如后门准则、前门准则等,用于处理混淆和进行因果估计。

然而,这种方法面临着一个核心问题,即在观测研究中无法定义完整的因果图。尽管在某些领域(如考古学)中可以通过专家知识来定义因果图,但这种方法可能会重蹈“专家系统”的老路,即过于依赖领域专家的主观判断,可能导致模型的局限性和不确定性。

在因果推理中,核心问题确实是如何有效地发现因果结构。因果结构的发现对于正确理解数据生成的机制、推断因果关系以及做出有效的决策至关重要。发现因果结构的挑战在于,它不仅需要考虑变量之间的关联性,还需要考虑因果关系的方向性和因果链条的复杂性。尤其是在大规模数据和高维度数据的情况下,因果结构的发现变得更加困难。

目前,针对因果结构的发现,有一些方法和技术正在不断发展和完善,包括基于因果图的方法、因果关系的因果发现算法、数据驱动的因果推断方法等。这些方法旨在从数据中推断出变量之间的因果关系,并构建因果图模型,以帮助我们更好地理解数据生成的机制和推断因果关系。

但是,尽管已经取得了一些进展,但在复杂的真实世界数据中,仍然存在许多挑战和困难。因此,继续研究和开发新的方法和技术,以更好地发现因果结构,并将其应用于实际问题中,是当前因果推理领域的重要任务之一。

(二)因果推理基本范式:潜在结果框架(Potential Outcome Framework)

潜在结果框架(Potential Outcome Framework)是因果推理的另一个重要范式,其核心思想是不需要了解所有变量的因果结构,而是关注某个特定变量对输出的因果影响,这个变量通常被称为处理(Treatment)或暴露(Exposure)。在这个框架下,我们假设了每个个体都有多个潜在结果,其结果取决于是否接受处理。然而,我们只能观测到其中一种结果,这称为个体的观测结果(Observed Outcome)。

在潜在结果框架中,我们需要考虑干扰因素(Confounders),这些因素可能影响处理和结果之间的关系,而且通常是我们无法控制的。为了准确估计处理对结果的因果效应,我们需要假设已经观测到了所有的干扰因素,并且可以通过统计方法进行控制。

总体来说,潜在结果框架提供了一种简化因果推理的方法,特别是在处理因果关系的复杂性和观测限制时。通过关注处理对输出的直接影响,并控制潜在的干扰因素,我们可以更好地理解处理对结果的因果效应。

三、因果发现和问题定义

因果发现的定义是对于给定的一组样本,其中每个样本都由一些变量去表征,我们希望通过一些可观测数据去找到这些变量之间的因果结构。找到的因果图,可以认为是一个图模型,从生成式模型的角度来讲,我们希望找到一个因果图,使得它能够按照其中的因果结构去生成这样的一组样本,而且这组样本的似然性是最高的。

简而言之,因果发现的目标是通过观测数据找出变量之间的因果关系,并用图模型来表示这些关系。这样的因果图能够最好地解释数据的生成过程,即在给定因果结构下生成观测数据的概率最大。因此,因果发现旨在寻找一个最佳的因果图模型,使其能够最好地解释观测数据并揭示变量之间的因果关系。

这里引入因果推理中的一个重要概念Functional Causal Models (FCMs) ,它描述了变量之间的因果关系如何通过函数关系来实现。在一个有向无环图 (DAG) 中,每个变量都有其父节点,其值可以通过父节点和一个函数的作用再加上噪声来生成。

在线性框架下,这个问题可以转化为如何找到一组参数(通常表示为W),使得对于某个特定变量X的重构最为准确。换句话说,我们希望找到一组参数W,通过线性函数关系将X与其父节点之间的关系建模,以最优地重构X的值。

因此,Functional Causal Models 提供了一种将因果关系转化为函数关系的方法,通过寻找合适的函数和参数,可以更好地理解变量之间的因果关系,并进行因果推断和预测。

有向无环图的优化一直是一个开放性问题,2018年的一篇论文[Zheng, Xun, Bryon Aragam,Pradeep K. Ravikumar, and Eric P. Xing. DAGs with NO TEARS: Continuous Optimization for Structure Learning. Advances in Neural Information Processing Systems 31 (2018).]提出来了一个优化方法:可以在全空间的有向无环图内去做梯度优化,通过增加DAG限制和稀疏限制(l1或l2正则),使得最终X的重构误差最小。

四、总结

在这篇文章中,我们深入探讨了因果推理在人工智能领域中的重要性及其应用。从背景分析到基本理论,再到因果发现的挑战,我们逐步揭示了如何在海量数据中准确识别因果关系,并如何在复杂的现实世界中应用这些理论。

随着人工智能技术的迅速发展,单靠简单的相关性分析已无法满足我们对解释性和可控性的需求。因果推理为我们提供了一种更为严谨的方法,让我们能够理解因果关系背后的机制。这不仅有助于我们建立更为可信和可靠的人工智能系统,也为决策过程提供了重要的依据。

然而,因果推理在大数据环境下仍面临许多挑战,如数据的复杂性和不确定性,以及如何有效地发现和建模因果结构。因此,继续研究和发展因果推理方法与技术,将为我们在人工智能应用中的风险防控提供更为坚实的基础。

总之,因果推理不仅是理解和改进人工智能的关键,更是实现其安全、可靠应用的基石。随着我们不断探索这一领域的深度与广度,我们期待未来的智能决策系统能够以更高的水平为人类社会的可持续发展做出贡献。希望这篇文章能够激发读者对因果推理的思考,并在未来的实践中取得丰硕成果。

参考来源

美团内部讲座 | 清华大学崔鹏:因果启发的学习、推断和决策 - 美团技术团队

"Weapons of Math Destruction: How Big Data Increases Inequality and Threatens Democracy" by Cathy O'Neil: 探讨了人工智能和大数据时代所带来的社会风险,尤其关注了公平性和不可解释性问题。

"Artificial Unintelligence: How Computers Misunderstand the World" by Meredith Broussard: 作者从技术、文化和社会角度讨论了人工智能系统的局限性和风险,强调了数据质量、算法偏见等问题。

"The AI Does Not Hate You: Superintelligence, Rationality and the Race to Save the World" by Tom Chivers (Essay Collection): 这是一系列关于人工智能和超级智能的短文集,涵盖了伦理、公平性、不确定性等议题。

"Fairness and Abstraction in Sociotechnical Systems" by Timnit Gebru et al. (Research Paper): 这篇论文探讨了人工智能系统中公平性的概念和实现方法,提出了一些解决方案。

"The Malicious Use of Artificial Intelligence: Forecasting, Prevention, and Mitigation" (2018) by Future of Humanity Institute, University of Oxford: 这份报告涵盖了人工智能可能被恶意利用的各种情景,包括隐私侵犯、信息战等,提出了一些防范措施。

"Ethics and Governance of Artificial Intelligence: Evidence to the UK Parliament" (2017) by The Royal Society and The British Academy: 这份报告探讨了人工智能的伦理和治理问题,提出了一些建议和指导原则。

因果推断在机器学习中的实践前沿方向 - 知乎

Zheng, Xun, Bryon Aragam,Pradeep K. Ravikumar, and Eric P. Xing. DAGs with NO TEARS: Continuous Optimization for Structure Learning. Advances in Neural Information Processing Systems 31 (2018).

Yue He, Peng Cui, et al. DARING: Differentiable Causal Discovery with Residual Independence. KDD, 2021.

Yue He, Zimu Wang, Peng Cui, Hao Zou, Yafeng Zhang, Qiang Cui, Yong Jiang. CausPref: Causal Preference Learning for Out-of-Distribution Recommendation. The WebConf, 2022.

Zheyan Shen, Jiashuo Liu, Yue He, Xingxuan Zhang, Renzhe Xu, Han Yu, Peng Cui. Towards Out-Of-Distribution Generalization: A Survey. arxiv, 2021.

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

VMamba 安装教程(无需更改base环境中的cuda版本)

导航 安装教程导航 Mamba 及 Vim 安装问题参看本人博客:Mamba 环境安装踩坑问题汇总及解决方法(初版)Linux 下Mamba 及 Vim 安装问题参看本人博客:Mamba 环境安装踩坑问题汇总及解决方法(重置版)Windows …

FRP内网穿透0.61.1新版教程

在上一篇zerotier讲述了如何实现虚拟局域网搭建,这篇会讲述FRP内网穿透的使用教程 那么frp与zerotier的区别是什么呢?(说人话) FRP 主要用于内网服务向外网的单向暴露。 ZeroTier 用于构建一个虚拟的私有网络,实现多点…

如何使用MaskerLogger防止敏感数据发生泄露

关于MaskerLogger MaskerLogger是一款功能强大的记录工具,该工具可以有效防止敏感数据泄露的发生。 MaskerLogger旨在保护目标系统的日子安全,此格式化程序可确保你的日志安全并防止敏感数据泄露。例如使用此格式化程序,打印下列数据&#x…

React进阶之react.js、jsx模板语法及babel编译

React React介绍React官网初识React学习MVCMVVM JSX外部的元素props和内部的状态statepropsstate 生命周期constructorgetDerivedStateFromPropsrendercomponentDidMount()shouldComponentUpdategetSnapshotBeforeUpdate(prevProps, prevState) 创建项目CRA:create-…

【Python】JSON

文章目录 定义Json格式数据转化 定义 JSON是一种轻量级的数据交互格式,可以按照JSON指定的格式去组织和封装数据 JSON本质上是一个带有特定格式的字符串 JSON可以直接和Python的字典或列表进行无缝转换 【主要功能】 JSON就是一个在各个编程语言中流通的数据格…

.Net Core微服务入门全纪录(五)——Ocelot-API网关(下)

系列文章目录 1、.Net Core微服务入门系列(一)——项目搭建 2、.Net Core微服务入门全纪录(二)——Consul-服务注册与发现(上) 3、.Net Core微服务入门全纪录(三)——Consul-服务注…

【18】Word:明华中学-儿童医保❗

目录 题目​ NO2 NO3 NO4 NO5 NO6 NO7 NO8 NO9 题目 NO2 布局→页面设置对话框→纸张方向:横向→纸张大小:A3 ;页面设置对话框:直接输入纸张大小的宽度和高度即可→页面设置对话框:上下左右边距→版式&…

数据结构漫游记:动态实现栈(stack)

嘿,各位技术潮人!好久不见甚是想念。生活就像一场奇妙冒险,而编程就是那把超酷的万能钥匙。此刻,阳光洒在键盘上,灵感在指尖跳跃,让我们抛开一切束缚,给平淡日子加点料,注入满满的pa…

SpringBoot 搭建 SSE

参考链接 https://www.51cto.com/article/798001.html 了解一下SseEmitter&#xff08;一&#xff09;-CSDN博客 依赖 有默认的 springboot-web 依赖即可 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-start…

python_在钉钉群@人员发送消息

python_在钉钉群人员发送消息 1、第一种 企业内部机器人群聊实现人接入指南&#xff0c;适用于群机器人接收消息&#xff0c;处理完一系列的动作之后&#xff0c;将消息返回给发消息的人员&#xff0c;同时该人员。 需要在企微后台新建一个自建应用&#xff0c;在自建应用里…

macOS安装Gradle环境

文章目录 说明安装JDK安装Gradle 说明 gradle8.5最高支持jdk21&#xff0c;如果使用jdk22建议使用gradle8.8以上版本 安装JDK mac系统安装最新&#xff08;截止2024.9.13&#xff09;Oracle JDK操作记录 安装Gradle 下载Gradle&#xff0c;解压将其存放到资源java/env目录…

HTML之拜年/跨年APP(改进版)

目录&#xff1a; 一&#xff1a;目录 二&#xff1a;效果 三&#xff1a;页面分析/开发逻辑 1.页面详细分析&#xff1a; 2.开发逻辑&#xff1a; 四&#xff1a;完整代码&#xff08;不多废话&#xff09; index.html部分 app.json部分 二&#xff1a;效果 三&#xff1a;页面…

PostgreSQL的学习心得和知识总结(一百六十六)|深入理解PostgreSQL数据库之\watch元命令的实现原理

目录结构 注&#xff1a;提前言明 本文借鉴了以下博主、书籍或网站的内容&#xff0c;其列表如下&#xff1a; 1、参考书籍&#xff1a;《PostgreSQL数据库内核分析》 2、参考书籍&#xff1a;《数据库事务处理的艺术&#xff1a;事务管理与并发控制》 3、PostgreSQL数据库仓库…

使用 Parcel 和 NPM 脚本进行打包

使用 Parcel 和 NPM 脚本进行打包 Parcel Parcel 是一个零配置的网页应用程序打包工具&#xff0c;主要用于快速构建现代 JavaScript 应用。 我们可以使用npm直接安装它 npm install --save-dev parcel //这将把 Parcel 添加到 devDependencies 中&#xff0c;表明它是一个…

项目实战--网页五子棋(游戏大厅)(3)

我们的游戏大厅界面主要需要包含两个功能&#xff0c;一是显示用户信息&#xff0c;二是匹配游戏按钮 1. 页面实现 hall.html <!DOCTYPE html> <html lang"ch"> <head><meta charset"UTF-8"><meta name"viewport"…

网络安全VS数据安全

关于网络安全和数据安全&#xff0c;我们常听到如下两种不同声音&#xff1a; 观点一&#xff1a;网络安全是数据安全的基础&#xff0c;把当年做网络安全的那一套用数据安全再做一遍。 观点二&#xff1a;数据安全如今普遍以为是网络安全的延伸&#xff0c;实际情况是忽略数据…

React 中hooks之useDeferredValue用法总结

目录 概述基本用法与防抖节流的区别使用场景区分过时内容最佳实践 概述 什么是 useDeferredValue? useDeferredValue 是 React 18 引入的新 Hook&#xff0c;用于延迟更新某个不那么重要的部分。它接收一个值并返回该值的新副本&#xff0c;新副本会延迟更新。这种延迟是有…

浅谈 JVM

JVM 内存划分 JVM 内存划分为 四个区域&#xff0c;分别为 程序计数器、元数据区、栈、堆 程序计数器是记录当前指令执行到哪个地址 元数据区存储存储的是当前类加载好的数据&#xff0c;包括常量池和类对象的信息&#xff0c;.java 编译之后产生 .class 文件&#xff0c;运…

HTTP / 2

序言 在之前的文章中我们介绍过了 HTTP/1.1 协议&#xff0c;现在再来认识一下迭代版本 2。了解比起 1.1 版本&#xff0c;后面的版本改进在哪里&#xff0c;特点在哪里&#xff1f;话不多说&#xff0c;开始吧⭐️&#xff01; 一、 HTTP / 1.1 存在的问题 很多时候新的版本的…

使用vscode在本地和远程服务器端运行和调试Python程序的方法总结

1 官网下载 下载网址&#xff1a;https://code.visualstudio.com/Download 如下图所示&#xff0c;可以分别下载Windows,Linux,macOS版本 历史版本下载链接: https://code.visualstudio.com/updates 2 安装Python扩展工具 打开 VS Code&#xff0c;安装 Microsoft 提供的官…