机器学习与因果推断的高级实践 | 数学建模

news2024/11/16 8:37:46

文章目录

  • 因果推断
  • 因果推断的前世今生
    • (1)潜在结果框架(Potential Outcome Framework)
    • (2)结构因果模型(Structual Causal Model,SCM)

身处人工智能爆发式增长时代的机器学习从业者无疑是幸运的,人工智能如何更好地融入人类生活的方方面面是这个时代要解决的重要问题。滴滴国际化资深算法工程师王聪颖老师发现,很多新人在入行伊始,往往把高大上的模型理论背得滚瓜烂熟,而在真正应用时却摸不清门路、抓不住重点,导致好钢没用到刀刃上,无法取得实际的业务收益。如果能有一本指导新人从入门到精通、从理论到实践的技术书籍,那该多好,这样不仅省去了企业培养新人的成本,也留给了新人自我学习成长的空间。

本着这个初心,王老师花了将近一年的业余时间来复盘总结了自己以及身边同事从小白成长为独当一面的合格算法工程师的成长历程和项目经验,最终以理论结合实践的方式写入《机器学习高级实践:计算广告、供需预测、智能营销、动态定价》这本书中,希望能通过他的经验,真正地帮助到对机器学习算法感兴趣的读者。请添加图片描述

《机器学习高级实践:计算广告、供需预测、智能营销、动态定价》

作者:王聪颖  谢志辉

因果推断

在这里插入图片描述
因果推断是近年来机器学习领域新兴的一个分支,它主要解决“先有鸡还是先有蛋”的问题。因此,因果推断和关联关系最主要的区别是:因果推断是试图通过变量X的变化推断其对结果Y带来的影响有多少,而关联关系则侧重于表达变量之间的趋势变化,如两个变量图片之间有相关性关系,如果图片随着图片的递增而递增,则说明图片和图片正相关,如果图片随着图片递增而下降,则说明两者负相关。因此因果性(Causality)和相关性(Correlation)有着本质的不同,为了帮助读者更好地理解,这里举个例子:
某研究表明,吃早饭的人比不吃早饭的人体重更轻,因此“专家”得出结论——吃早饭可以减肥。但事实上,吃早饭和体重轻很有可能只是相关性关系,而并非因果关系。吃早饭的人可能是因为三餐规律、经常锻炼、睡眠充足等等一系列健康的生活方式,最终导致了他们的体重更轻。图1所示为因果推断中的混杂因子,描述了健康的生活方式、吃早饭、体重轻三者的关系。
请添加图片描述
很显然,拥有健康的生活方式的人会吃早餐,健康生活方式同时也会导致体重轻,可见健康的生活方式是吃早餐和体重轻的共同原因。正是因为有这样的共同原因存在,导致我们不能轻易地得出吃早餐和体重轻之间存在因果关系,所以我们认为“专家”的结论是草率的。吃早餐和减肥之间只存在相关性,不存在因果性,并把这种阻断因果关系推断的共同原因称之为混杂因子。那么如图1右所示,消除混杂因子,寻找两个变量之间的因果关系,并量化出来某种自变量X的改变,影响了因变量Y的改变程度是因果推断主要探讨的内容。

因果推断的前世今生

在这里插入图片描述

(1)潜在结果框架(Potential Outcome Framework)

在介绍潜在结果框架之前,先列出两个需要声明的假设来描述个体因果效应,另外需要注意的是为了更快的帮助大家入门,本文只描述二元处理,即个体只有接受处理和不接受处理两种情况,并对应两种处理方式的结果。
请添加图片描述
但是在现实世界中,个体图片在同一时刻要么接受处理,要么不接受处理,不可能同时既接受处理又不接受处理,因此个体因果作用是不可识别的,个体的观测数据结果图片

在已知个体因果作用无法识别的情况下,如何进行因果推断呢?或许把因果作用的识别从个体转移到了总体身上是个行之有效的解决方案,于是便有了平均因果作用(ATE,
Average Treatment
Effect)的概念。平均因果作用不再比较个体的因果作用,而是比较两组群体在不同的处理下的潜在结果,这两组群体除了接受的处理不同之外,必须具有同质的属性,这样计算出的平均因果作用才能无偏,随机对照实验(Random
controlled Trial,RCT)是保证两组群里无偏性的基本实验方法。把全量数据随机分为实验组(Treatment
Group)和对照组(Control
Group),其中实验组的T=1,对照组的T=0,那么平均因果作用的公式如下:请添加图片描述

其中Y(1)和Y(0)分别是接受处理情况下实验组的结果和不接受处理情况下对照组的结果。至此,潜在结果框架下做因果推断的基本理论知识已经讲解完毕,归纳起来主要有以下两点。
1)随机对照试验保证组别的同质性。

2)从不可评估的个体因果作用转移向评估总体的平均因果效应。

(2)结构因果模型(Structual Causal Model,SCM)

有向无环图是由节点和有向边组成的,有向边的上游是父节点,有向边指向的方向是子节点。在DAG中的某个节点的父节点与其非子节点都独立,根据全概率公式和条件独立性,一个有向无环图中的所有节点的联合概率分布可以表达为:
在这里插入图片描述
其中图片是所有指向图片的父节点,为了更好地帮助读者理解有向无环图中的联合分布表达,这里给出一个具体的DAG实例,如图2所示。请添加图片描述
根据有向无环图的条件独立性和联合概率分布的公式,图2的联合分布可以表达为:请添加图片描述
每一个有向无环图产出了唯一的联合分布,但是一个联合分布不一定只对应着一个有向无环图,比如图片的联合概率分布有可能是图片,也可能是图结构图片,而两种图结构的因果关系完全相反,这也正是贝叶斯网络不适合做因果模型的原因。为了把DAG改造成可以表达因果关系的因果图,需要引入do算子。这里的do算子就表达的是一种干预,图片表示将指向节点图片的有向边全部切除掉,并且节点图片赋值为常数,在do算子干预后,DAG的联合概率分布有了变化,表达为如下的形式:请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

在图3的链式、叉式、反叉式三种路径结构中,反叉式结构中的A、C天然相互独立,B又被称为对撞子,链式或者叉式结构,以B为条件可以阻断A和C之间的关联关系,从而实现A、C相互独立。d-分离就是为了达到变量独立的目的,而对不同的路径结构采取的阻断的操作,具体的d-分离法则归纳起来如下。
1)当某条路径上有两个箭头同时指向某个变量时,那这个变量称之为对撞子,并且这条路径被对撞子阻断。
2)如果某条路径含有非对撞子,那么当以非对撞子为条件时,这条路径可以被阻断。
3)当某条路径以对撞子为条件时,这条路径不仅不会被阻断,反而会被打开。

这里需要注意的是,以某个变量为条件指的是指定某个变量的值,比如以年龄这个变量为条件,就是指定年龄为0或者1。
在了解d-分离法则是可以通过以某个变量为条件进行阻断,从而实现变量间的独立之后,便可以结合后门准则消除混杂因子对未知结构的因果图进行因果推断了。在弄清楚后门准则之前,需要了解后门路径、前门路径的概念。从变量X到变量Y的后门路径就是连接X到Y,但是箭头不从X出发的路径,与之相应的前门路径是连接X到Y且箭头从X出发的路径,后门准则的定义是可以通过d-分离阻断X和Y之间所有的后门路径,那么我们认为可以识别从X到Y之间的因果关系,并把阻断后门路径的因子称之为混杂因子。至此,知道了后门准则的方法无须观测到所有的变量,只需要观测到以哪个变量为条件可以消除后门路径,从而使得X到Y之间的因果关系可识别。
在这里插入图片描述
请添加图片描述

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

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

相关文章

LeetCode OJ循环队列(C语言)

1.题目的初步分析 我们分析上述题目的时候会发现题目非常的长,不好整理思路,我这里可以大致的将本题的几个核心点说出来: 1.队列的思路 循环队列说来说去不还是队列嘛,那么队列的基本操作增删查改、以及队列的基本结构肯定都是不能…

京东家用电器商品电子说明书在哪里能找到怎么查看产品电子说明书?草柴返利APP如何查询领取京东优惠券拿京东购物返利?

京东商品电子说明书是一种便捷、高效的说明工具,为消费者了解和使用商品提供了重要帮助。京东商品电子说明书是一种以电子文档、图文、视频的形式提供的商品使用说明书。它通常由商家上传至京东平台,以供消费者在购买商品后下载查看。与传统的纸质说明书…

计算机编程零基础编程学什么语言,中文编程工具构件简介软件下载

计算机编程零基础编程学什么语言,中文编程工具构件简介软件下载 给大家分享一款中文编程工具,零基础轻松学编程,不需英语基础,编程工具可下载。 这款工具不但可以连接部分硬件,而且可以开发大型的软件,象如…

Leetcode—94.二叉树的中序遍历【简单】

2023每日刷题(四十) Leetcode—94.二叉树的中序遍历 C语言实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/ /*** Note: The returned array mus…

Java实现—数据结构 1.初识集合框架

一、什么是集合框架 Java集合框架,又被称为容器,是定义在java.util包下的一组接口interfaces和其实现类classes 其主要表现为将多个元素element置于一个单元中, 集合框架是由若干个类组成的,每个类的背后就是一种数据结构&…

2023.11.25更新关于mac开发APP(flutter)的笔记与整理(实机开发一)

我自己写的笔记很杂,下面的笔记是我在chatgpt4的帮助下完成的,希望可以帮到正在踩坑mac开发APP(flutter)的小伙伴 目标:通过MAC电脑使用flutter框架开发一款适用于苹果手机的一个APP应用 本博客的阅读顺序是&#xf…

2022年06月 Scratch(三级)真题解析#中国电子学会#全国青少年软件编程等级考试

Scratch等级考试(1~4级)全部真题・点这里 一、单选题(共25题,每题2分,共50分) 第1题 点击绿旗,舞台上的角色会说出? A:2022年5月1日 B:1日5月2022年 C:2022年05月01日 D:05月01日2022年 答案:C 输出为:2022年05月01日。 第2题 观察规律,请问橙色方块应填…

小程序项目:node+vue基于微信小程序的校园盲盒小程序的设计与实现

项目介绍 随着信息技术和网络技术的飞速发展,人类已进入全新信息化时代,传统管理技术已无法高效,便捷地管理信息。为了迎合时代需求,优化管理效率,各种各样的管理系统应运而生,各行各业相继进入信息管理时…

frp V0.52.3 搭建

下载 https://github.com/fatedier/frp/releases/ 此版本暂时没有windows的,想在windows使用请下载v0.52.2 简易搭建 frps.toml的配置文件,以下12000、8500需要在云服务器中的防火墙中开放tcp # bindPort为frps和frpc通信的端口,需要在防…

QT已有项目导入工程时注意事项

文章目录 从qt其他版本上开发的工程导入另一qt版本时 从qt其他版本上开发的工程导入另一qt版本时 这里以之前在qt5.12.2上开发的项目为例,现在到在qt6.5.3上运行。 不能直接导入IDE上,否则会报各种莫名奇妙的错误。 首先要把扩展名位.pro.user文件 删掉…

电子学会C/C++编程等级考试2021年03月(二级)真题解析

C/C++等级考试(1~8级)全部真题・点这里 第1题:石头剪刀布 石头剪刀布是常见的猜拳游戏。石头胜剪刀,剪刀胜布,布胜石头。如果两个人出拳一样,则不分胜负。 一天,小A和小B正好在玩石头剪刀布。已知他们的出拳都是有周期性规律的,比如:“石头-布-石头-剪刀-石头-布-石头…

[JVM] 京东一面~说一下Java 类加载过程

系统加载 Class 类型的文件主要三步:加载->连接->初始化。连接过程又可分为三步:验证->准备->解析。 通过全限定名来加载生成 class 对象到内存中,然后进行验证这个 class 文件,包括文件格式校验、元数据验证&#xf…

【超强笔记软件】Obsidian如何实现免费无限流量无套路云同步?

【超强笔记软件】Obsidian如何实现免费无限流量无套路云同步? 文章目录 【超强笔记软件】Obsidian如何实现免费无限流量无套路云同步?一、简介软件特色演示: 二、使用免费群晖虚拟机搭建群晖Synology Drive服务,实现局域网同步1 安…

AssembleRH850.dll未能加载或找不到

AssembleRH850.dll未能加载或找不到 省流解决方案 省流 经过卸了反复重装、杀毒、系统dll修复,百般折腾,是这一堆东西在搞鬼。解决方案 下载DirectX修复工具(增强版),专门修复上述的C问题。

微信小程序 基于Android的共享付费自习室座位选座系统uniAPP

题目: 基于Android的共享自习室APP设计与实现 (学校要求:数据库不少于有逻辑关系的20个表,系统功能不少于60个功能点) 技术: 功能: 1. 用户端: 一、首页: (1&…

群晖(Synology)NAS 存储池修复需要的时间

群晖(Synology)NAS 存储池的处理可以说是非常耗时的。 根据官方文档的说明和算法: 一个 10TB 的存储池修复将会差不多 24 个小时。 如果你更换硬盘后对存储池进行处理的话,通常需要等上个几天时间吧。 群晖(Synology…

XShell新建会话指南

XShell新建会话 我们先登录我们的xshell,连接我们的远程服务器 为了方便我们以后的使用,我们可以新建一个会话记住用户 新建好后,我们可以打开这个会话 我们选择记住用户名 然后继续输密码就可以了 之后我们每次打开xshell的时候&#xff0c…

在mathtype输入花体,如L,I, K等

在mathtype输入“\mathcal{L}"就OK了 \mathcal{K} \mathcal{I}

webrtc AEC 线性滤波 PBFDAF(均匀分块频域自适应滤波)介绍

计算一个脉冲响应和输入信号的卷积,除了使用原始的时域卷积以外,还有如下方法: FFT卷积的方法:对输入信号(长度M)和脉冲响应(长度N)分别补零到K(K>MN-1),…

YOLOv8改进 | 2023 | FocusedLinearAttention实现有效涨点

论文地址:官方论文地址 代码地址:官方代码地址 一、本文介绍 本文给大家带来的改进机制是Focused Linear Attention(聚焦线性注意力)是一种用于视觉Transformer模型的注意力机制(但是其也可以用在我们的YOLO系列当中从而提高检测…