当前位置: 首页 > news >正文

终于有人把辛普森悖论讲明白了

74a54c2aa0415a5414af4637c7d31dae.gif

cb3feb1691bf81f60368f32be7151135.png

导读:

困扰统计学家60多年的魔咒,时至今日也没有得到彻底解决。

b2108fb7bfa6a94c78d81f19d6333276.png

作者:徐晟

来源:大数据DT(ID:hzdashuju)

342bbcda3afceb4c620921c307b248fb.png

在做重大决策时,我们总会参考一些统计数据,比如高考前关注学校的录取率,择业时参考各个行业的就业率等。统计数字可以帮助我们比较这些对象的优劣,做出更加合理的决定。但有时,统计数字并不靠谱,基于统计数据的因果推断甚至会出错。

举例来说,假设张三想去医院看病。他收集到了附近两家医院的医疗数据,如表2-1所示。

根据数据,医院A最近治疗了1000个病人,有900人存活,100人死亡,存活率为90%。医院B最近也治疗了1000个病人,有800人存活,200人死亡,存活率为80%。从统计数据来看,似乎医院A比医院B更好一点。

现在我们把收集到的样本数据做一些细分,按照重症病人和非重症病人进行统计,如表2-2所示。

▼表2-2 重症和非重症病人统计

aa70fe1a43d29391f92bfb2ae8ae3fd7.png

我们只是进一步区分了病人病情的严重程度,结论就被变魔术般改变了。从表2-2中可以看出,无论是重症病人还是非重症病人,不管怎么看,最好的选择都是医院B,这与之前的情况大相径庭。一开始我们只关注整体的存活率,医院A明明是更好的选择,但是如果关心更细的病例存活率,医院B就变成了更好的选择。为何会出现这种情况?

这是因为数据中存在潜在变量(比如病情严重程度不同的病人占比),按照潜在变量分组后的数据是不均匀的。在上面的例子中,医院A和医院B对于不同分组病人的救治成功率差别很大。对于重症病人,存活率只有30%~50%,而对于非重症的病人,存活率超过了95%。

同时,两种病人去医院A和医院B就医的数据分布正好相反,大多数重症病人都去了医院B,大部分的非重症病人去了医院A就诊。这就导致医院B的总体救治率数据反而被拉低了,而医院A的统计数据反而更占优势。

在分组比较中占据优势的一方,在综合评估中却成为失势的一方,该现象被称为辛普森悖论。辛普森悖论最初是英国数学家辛普森(Edward Huge Simpson)于1951年发现并提出的。此悖论如同魔咒般,已困扰统计学家60多年,时至今日也没有得到彻底解决。它的出现揭示出一个令人震惊的事实——同一组数据的整体趋势和分组趋势有可能完全不同。

若使用数学语言,辛普森悖论可以表示为如下的关系式:

d70fb1d19e4ab7752c374c0639fc5193.png0b0de4dcd54686fe563e214b2589c65c.png时,我们不能得出b43ed307dd7a225ab08e5649a8d48e90.png的结论。反过来也一样,有兴趣的读者可以自行证明。

不少统计学家认为,由于辛普森悖论的存在,因此仅仅通过有限个统计数字,无法直接推导和还原事实真相。这是统计数据的致命缺陷。因为数据可以按照各种形式分类和比较,潜在变量无穷无尽,理论上总是可以用某个潜在变量得到某种结论。

对于那些不怀好意的人,他们很容易对数据进行拆分或归总,得到一个对自己有利的统计数据,从而误导甚至操纵别人。所以,为了避免辛普森悖论,我们应该仔细分析各种影响因素,不要笼统概括,更不能浅尝辄止地看问题。

关于作者:徐晟,某商业银行IT技术主管,毕业于上海交通大学,从事IT技术领域工作十余年,对科技发展、人工智能有自己独到的见解,专注于智能运维(AIOps)、数据可视化、容量管理等方面工作。

本文摘编自《大话机器智能:一书看透AI的底层运行逻辑》,经出版方授权发布。(ISBN:9787111696193)

RECOMMEND

推荐阅读

756c9d4f412fb3d76612d710d0e91034.png

01

8dbd7203ed4408b1e76e7ad10ce7c407.png

《大话机器智能:一书看透AI的底层运行逻辑》

推荐阅读

AI是什么?机器如何拥有“智能”?“智能”如何起作用?本书以通俗易懂的方式,勾勒人工智能的全貌,展现AI的底层运行逻辑,即AI是如何工作的。

4acda47194df43a953ae12c851e06abe.gif

d6bf04831b677e70157124338f69e152.png

扫码关注【华章计算机】视频号

每天来听华章哥讲书

854d744070b4f99463c86f0571e756cc.gif

更多精彩回顾

干货 |C++都有哪些就业方向?是否应该学习C++?

书单 | 成为优秀Java开发者,我看了这几本书

上新 |《Core Java》作者亲授视频免费看,学习Java更轻松

资讯 |提升研发效能:抵制无效加班文化

资讯 | 又又叒更新,Win 12要来了?

干货 |一文带你掌握计算机体系结构核心内容

干货 | 机器人与人工智能的关系,终于有人讲明白了

书讯 | 2月书讯(下)| 新年到,新书到!

书讯 | 2月书讯 (上)| 新年到,新书到!

【赠书】【第96期】夯实基础,突破内卷,不被优化

33a9696529c140e32e7e5c2a3a90af97.gif

37eede779bd9db27a754a64f83118057.gif

点击阅读全文购买

相关文章:

  • 一文带你理解算法策略
  • AI 是否拥有意识?从意识的定义说起
  • 百万在线:大型游戏服务端开发
  • ​什么是bug?bug的源头在哪里?
  • 【第97期】2022 软件工程师状况报告:Go 最抢手
  • Web渗透测试实战:基于Metasploit 5.0
  • 详解六种常见的上下文切换场景
  • 终于有人把Knative讲明白了
  • 赵宏田:用户画像场景与技术实现
  • 商品中台的可视化微前端实践
  • 4月书讯(下)| 上新了,华章
  • 场景拆解六步设计法,手把手教你细化场景
  • 2021年图灵奖出炉!高性能计算鼻祖Jack Dongarra获奖
  • ​香农与信息论三大定律
  • 【第98期】终于有人把Flink设计理念与基本架构讲明白了
  • 11111111
  • css布局,左右固定中间自适应实现
  • egg(89)--egg之redis的发布和订阅
  • ES6核心特性
  • Java,console输出实时的转向GUI textbox
  • JS变量作用域
  • mysql 数据库四种事务隔离级别
  • Promise面试题,控制异步流程
  • Python十分钟制作属于你自己的个性logo
  • React Transition Group -- Transition 组件
  • Ruby 2.x 源代码分析:扩展 概述
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • Twitter赢在开放,三年创造奇迹
  • v-if和v-for连用出现的问题
  • Vue ES6 Jade Scss Webpack Gulp
  • vue中实现单选
  • 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  • 前端代码风格自动化系列(二)之Commitlint
  • 入门到放弃node系列之Hello Word篇
  • 视频flv转mp4最快的几种方法(就是不用格式工厂)
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 微信如何实现自动跳转到用其他浏览器打开指定页面下载APP
  • gunicorn工作原理
  • Java总结 - String - 这篇请使劲喷我
  • 进程与线程(三)——进程/线程间通信
  • 没有任何编程基础可以直接学习python语言吗?学会后能够做什么? ...
  • 新年再起“裁员潮”,“钢铁侠”马斯克要一举裁掉SpaceX 600余名员工 ...
  • ​Kaggle X光肺炎检测比赛第二名方案解析 | CVPR 2020 Workshop
  • ​二进制运算符:(与运算)、|(或运算)、~(取反运算)、^(异或运算)、位移运算符​
  • # 学号 2017-2018-20172309 《程序设计与数据结构》实验三报告
  • #LLM入门|Prompt#1.8_聊天机器人_Chatbot
  • #免费 苹果M系芯片Macbook电脑MacOS使用Bash脚本写入(读写)NTFS硬盘教程
  • #我与Java虚拟机的故事#连载04:一本让自己没面子的书
  • $forceUpdate()函数
  • (ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY)讲解
  • (编译到47%失败)to be deleted
  • (附源码)spring boot基于Java的电影院售票与管理系统毕业设计 011449
  • (九十四)函数和二维数组
  • (力扣记录)235. 二叉搜索树的最近公共祖先
  • (一)kafka实战——kafka源码编译启动