赠书 | 发自暗处的光:你不知道的暗数据

2024-04-13 19:08

本文主要是介绍赠书 | 发自暗处的光:你不知道的暗数据,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

0bddb60a4028e589a22eefb7bd9c9d27.png

文中有数据派THU福利哦dda7d6ec9936dc8101366d138d2f940e.png

先给大家讲个笑话。

几天前,我在路上碰到一个老头儿。他正在往路中央撒粉末,每隔50 英尺a 撒一小堆。我问他在干什么。“这是驱象粉。”他回答,“大象最怕这个,所以我用它来防大象。”

“但是,这里没有大象啊。”我说。

“这就对啦!”他答道,“驱象粉真灵啊。”

看不见的传染病

麻疹是一种病毒引起的呼吸道急性传染病,每500个麻疹病人中有一个死于并发症,剩下的人会遭受永久性的听力丧失和大脑损伤。

全球每年有近10万人死于麻疹,但这种病并不常见。1999年美国只报告了99例,而在2019年1月,一场麻疹的爆发导致华盛顿州进入紧急状态,同时其他州也发现了大量增加的病例。

类似的情况在全球都有报道,比如2016年1月到2017年3月底,罗马尼亚报告超过4000例麻疹感染者和18个死亡病例;2019年2月乌克兰超过21000人被传染。

幸运的是麻疹是可以防控的,简单的疫苗就能让你获得免疫力。事实上在实施了这类防控的国家,绝大部分人从未见过或者经历过麻疹带来的可怕后果。

也正因为如此,当疾控中心建议家长给孩子接种麻疹疫苗时,家长们自然会将信将疑,因为疾控中心提到的这种疾病从未在他们身边的人身上看到或者听说过。

接种疫苗以预防某种疾病,但这种疾病在当地又不存在。这跟开篇段子里的驱象粉有什么区别?

然而与大象不同的是,得病的风险是真实存在的。仅仅因为那些家长赖以做出决定的信息和数据缺失了,所以风险才变得不可见。

我们把各种缺失的数据称为“暗数据”(dark data)。因为暗数据隐藏在我们的认知之外,意味着我们可能出现误解,得出错误的结论,做出糟糕的决定。简言之,我们的无知意味着犯错。

“暗数据”这个术语与物理学中的暗物质相似。宇宙中大约27%的部分由暗物质组成。暗物质与光或其他电磁辐射不发生作用,因此不可见。因为暗物质无法被看到,所以天文学家长久以来并未意识到它们的存在。

直到后来,对银河系旋转运动的观测揭示出这样的现象:较远处的恒星,并不比靠近中心的恒星转动得更慢。这与我们根据重力原理得出的预期不一致。这种异常转动可以用一种假设来解释:通过我们用天文望远镜能看到的恒星和其他天体来判断,银河系的质量比看起来的大得多。

我们看不见那些多出来的物体,所以称其为暗物质。然而,暗物质不是无意义的(我甚至认为它是很重要的):在我们所在的银河系中,暗物质的数量可能比普通物质的10 倍还多。

暗数据和暗物质有很多类似之处:我们看不到那些数据,它们没有被记录下来,但是它们仍然会对我们的判断、决定和行为产生重大影响。正如后来一些例子显示的那样,除非我们意识到这种可能性,即我们周遭一直潜伏着未被认知的事物,否则,后果可能是灾难性的,甚至是致命的。

消失的统计数据

许多城市都有路面坑洞问题。水流进路面的小裂缝,冬天结冰造成裂缝扩大,然后被汽车轮胎碾压进一步恶化,形成路面坑洞。

波士顿市政部门决定用现代科技解决这个问题,他们发布了一款手机APP,利用手机内部的加速器来监测汽车通过路面坑洞产生的震动,然后用GPS把路面坑洞的位置自动发送给城市管理部门,公路维护人员就知道要去哪里修补路面了。

这个建立在现代数据分析技术基础上的解决方案看起来很完美对吧?但它忽略了一个重要的事实:拥有汽车和智能手机的人,多数集中在富裕地区。因此,那些贫困地区的路面坑洞很可能不会被发现,一些地方的坑洞也许永远无法得到修复。

这种解决方法不但没有从整体上解决路面坑洞的问题,甚至可能加剧社会不平等。

摄影师迈克·约翰斯顿在《摄影师在线》他的专栏给到了另一个很好的例子,他写道:“每当读到一篇描述美国边境那些制作精良、坚固而漂亮的原木小屋的文章时,我就忍不住想笑。

事实更有可能是这样的:99.9% 的原木小屋都是粗制滥造的,只不过它们全都倒塌了。能完好无损地保存下来的极少数小屋的确是被精心建造的,但这并不意味着所有的小屋都是这样的。”

2017年12月29日的《泰晤士报》报道说:“警方数据显示,出租车车司机涉嫌对乘客实施性侵害的案件数量在3 年里攀升了1/5”。比较直白的解释是,更多的此类犯罪发生了。

但是,从暗数据的角度,还有另外一种解释:犯罪率本身其实保持不变,但犯罪的报告率上升了。由于社会习俗和社会规范的改变,此前隐藏的暗数据逐渐显现出来了。”

以上这种我们不知道的缺失数据尤其具有欺骗性,因为一般情况下我们没有理由怀疑它。

四舍五入的坑

测量不可能无限精确。在计数的时候,像一个家庭里的子女人数、海上的船只数这样的数字都可以采用方便的整数数字,但像长度这样的测量值需要四舍五入到某个水平。它们可能被四舍五入到厘米、毫米、微米(百万分之一米)、十分之一微米等,但是我们不可能取无限的小数位。

换句话说,在某种程度上,细节是不可知的。

当你看数据表格时,这种“四舍五入”是显而易见的。在表格里,你会看到70.3、0.04 或41.325 等数字,或者有时出现76.2±0.2等数值,其中±0.2 表示准确度的范围,潜在的准确数字被认为处于这个区间内。“±”这个符号非常清楚地表明,我们面临着暗数据。

四舍五入是必要的,而且我们对此非常熟悉,以至通常根本不会注意到它隐藏了数据。例如,人们的年龄往往用整数来记录,但事实上年龄不仅仅包括已经生存的年数,还包括天数、小时数、分钟数等等。

有时候,年龄固有的不精确性,还源于出生这个事件发生在一个时段之内,而不是在某个精确的瞬间,这意味着我们无法获得进一步的精确度。计算年龄的惯例是将实际数字四舍五入,把小数点后的数字舍去,这意味着年龄似乎是围绕着整数进行分组的,我们声称的年龄比我们实际生存的年数要小。

当数据由人直接收集时,四舍五入过程中的数据暗化会以一种特别隐蔽的方式发生。它甚至会导致错误的决策和行动。

西蒙·德·吕西昂和他的同事研究了8.5 万个血压值。他们发现了一个令人不解的现象,在这8.5万个数值中,有64%的收缩压读数(心脏收缩时的血压)和59% 的舒张压读数(心脏舒张时的血压)都以0 结尾。不仅如此,在非零的数值中,以偶数结尾的数值明显比奇数结尾的数值更普遍,而在那些以奇数结尾的数值中,5是最常见的末尾数。而真实的血压数值是不可能围绕某些特定数字产生奇怪的分组的!这些记录值是人们将数值四舍五入到某个便于记录的数字上的结果。

这很重要吗?《英国高血压指南》给出了血压的临界值,若高于这个值则建议采取药物治疗。收缩压的临界值是140 毫米汞柱,那些四舍五入到以零结尾的数值(例如,把137 四舍五入到140)意味着,在具有这种血压记录的病人中,有相当大比例的真实收缩压实际上低于140 毫米汞柱。

显然,在本例中,四舍五入是由测量仪器的性质所导致的。如果读数出自一个有刻度的物理测量仪器,如教具中的尺子,那么人们自然会倾向于把它们四舍五入到一个方便记录的数值上。当然,如果这些值是由电子测量设备得出,那么它们可能会被精确到更小的数位上。现代测量仪器朝向自动化和更精确的数字读数持续发展的态势是件好事,至少从暗数据的角度看是这样的。

暗数据的分类

由于可能导致暗数据产生的原因在本质上是无限多的,因此,了解哪些东西需要留意可以极大地帮助我们避免错误和失误。

这就是《暗数据》中论述的不同暗数据类型的功能。这些原因并非基本原因,但提供了更具普遍性的分类方法。

具备暗数据分类意识,有助于保护我们,让我们避免因为不了解自己不知道的事情而造成差错、失误和灾难。《暗数据》中所介绍的暗数据类型,详列如下:

第1 种暗数据:已知的缺失数据

第2 种暗数据:未知的缺失数据

第3 种暗数据:局部选择案例

第4 种暗数据:自我选择

第5 种暗数据:关键因素缺失

第6 种暗数据:或可存在的数据

第7 种暗数据:因时而变

第8 种暗数据:数据定义

第9 种暗数据:数据汇总

第10 种暗数据:测量误差与不确定性

第11 种暗数据:反馈与博弈

第12 种暗数据:信息不对称

第13 种暗数据:故意屏蔽的数据

第14 种暗数据:编造与合成的数据

第15 种暗数据:推理僭越数据

09f68f5c4388c4471eaaae9042c44ea9.png

《暗数据》

[英] 戴维·汉德(David Hand

中信出版集团

2022年1月

4658e16820cd38aabb669ba62a25ae54.png数据派THU独家福利!dfa54919ebb1c7450d06e73b2d8509db.png

点点为数据派THU的粉丝们争取了3本赠书福利!欢迎小伙伴儿在下方留言区说出想要获得赠书的理由,我们将为点赞数最高(截止到2022年1月28日早8点)的3位读者免费送上此书~小编会联系你们哦!(之前获得过赠书的粉丝不能参与)

a6d6a98d341af1a01a5b6c165b8bbb84.png

这篇关于赠书 | 发自暗处的光:你不知道的暗数据的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/900968

相关文章

Linux下利用select实现串口数据读取过程

《Linux下利用select实现串口数据读取过程》文章介绍Linux中使用select、poll或epoll实现串口数据读取,通过I/O多路复用机制在数据到达时触发读取,避免持续轮询,示例代码展示设... 目录示例代码(使用select实现)代码解释总结在 linux 系统里,我们可以借助 select、

C#使用iText获取PDF的trailer数据的代码示例

《C#使用iText获取PDF的trailer数据的代码示例》开发程序debug的时候,看到了PDF有个trailer数据,挺有意思,于是考虑用代码把它读出来,那么就用到我们常用的iText框架了,所... 目录引言iText 核心概念C# 代码示例步骤 1: 确保已安装 iText步骤 2: C# 代码程

Pandas处理缺失数据的方式汇总

《Pandas处理缺失数据的方式汇总》许多教程中的数据与现实世界中的数据有很大不同,现实世界中的数据很少是干净且同质的,本文我们将讨论处理缺失数据的一些常规注意事项,了解Pandas如何表示缺失数据,... 目录缺失数据约定的权衡Pandas 中的缺失数据None 作为哨兵值NaN:缺失的数值数据Panda

C++中处理文本数据char与string的终极对比指南

《C++中处理文本数据char与string的终极对比指南》在C++编程中char和string是两种用于处理字符数据的类型,但它们在使用方式和功能上有显著的不同,:本文主要介绍C++中处理文本数... 目录1. 基本定义与本质2. 内存管理3. 操作与功能4. 性能特点5. 使用场景6. 相互转换核心区别

python库pydantic数据验证和设置管理库的用途

《python库pydantic数据验证和设置管理库的用途》pydantic是一个用于数据验证和设置管理的Python库,它主要利用Python类型注解来定义数据模型的结构和验证规则,本文给大家介绍p... 目录主要特点和用途:Field数值验证参数总结pydantic 是一个让你能够 confidentl

JAVA实现亿级千万级数据顺序导出的示例代码

《JAVA实现亿级千万级数据顺序导出的示例代码》本文主要介绍了JAVA实现亿级千万级数据顺序导出的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 前提:主要考虑控制内存占用空间,避免出现同时导出,导致主程序OOM问题。实现思路:A.启用线程池

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

PHP轻松处理千万行数据的方法详解

《PHP轻松处理千万行数据的方法详解》说到处理大数据集,PHP通常不是第一个想到的语言,但如果你曾经需要处理数百万行数据而不让服务器崩溃或内存耗尽,你就会知道PHP用对了工具有多强大,下面小编就... 目录问题的本质php 中的数据流处理:为什么必不可少生成器:内存高效的迭代方式流量控制:避免系统过载一次性

C#实现千万数据秒级导入的代码

《C#实现千万数据秒级导入的代码》在实际开发中excel导入很常见,现代社会中很容易遇到大数据处理业务,所以本文我就给大家分享一下千万数据秒级导入怎么实现,文中有详细的代码示例供大家参考,需要的朋友可... 目录前言一、数据存储二、处理逻辑优化前代码处理逻辑优化后的代码总结前言在实际开发中excel导入很

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本