写点什么

如何识别滥竽充数的“数据骗子”

2020 年 12 月 20 日

如何识别滥竽充数的“数据骗子”

本文最初发表于 Towards Data Science 博客,经原作者 Cassie Kozyrkov(柯凯茜) 授权,InfoQ 中文站翻译并分享。


数据骗子们都是放马后炮的事后诸葛亮。


你可能听说过分析学家机器学习 / 人工智能工程师统计学家,但你听说过这些领域也会有滥竽充数的“数据骗子”吗?让我们来认识一下数据骗子吧!


在高薪工作的诱惑下,这些数据骗子给真正的数据专业人员带来了不好的名声。


数据骗子无处不在


很有可能,多年来,你的组织里就一直潜伏着这样的数据骗子,但好消息是,如果你清楚要找什么,这些数据骗子还是很容易识别出的。


数据骗子非常善于隐藏在人们的视线中,以至于你可能都没有意识到自己已经成为其中一员。


第一个警告信号是没有理解分析学和统计学是非常不同的学科


我将在下一节做一个简要的概述,但如果你想更深入了解它的话,可以看看我专门写的一篇文章:《分析学和统计学有什么区别?》(What’s the difference between analytics and statistics?)。


不同的学科


统计学接受的训练是推断数据之外的内容,而分析学接受的训练是探索数据集的内容。换言之,分析学家对数据中的内容作出结论,而统计学家则对数据中没有的内容作出结论。


分析学家帮助你提出好的问题(假设生成),而统计学家帮助你得到好的答案(假设检验)。


也有花样百出的“混血”角色,他们能够同时戴上两顶帽子……但他们并不会在同一时刻戴上两顶帽子。为什么不这样做呢?那是因为,数据科学的一个核心原则是,如果要处理不确定性,那么在假设生成和测试时都使用相同的数据点,就是无效的。


当你的数据有限时,不确定性会迫使你在统计学或分析学之间做出选择。(你可以阅读这篇文章《数据科学中最有力的观点》(The most powerful idea in data science)来看看我对此作出的解释)


没有统计数据,你就无法知道自己刚刚形成的观点是否站得住脚。如果没有分析,你就会像无头苍蝇一样,几乎没有机会去驯服你未知的未知。


这是个艰难的选择。你是否一边为自己的灵感(分析)沾沾自喜,一边又因为新观点的不确定性而发誓要放弃它?又或者十分忐忑祈祷你问的问题(在没有数据支撑的情况下独自冥想)值得之寻求严谨的答案(统计)?


事后诸葛亮


数据骗子摆脱这种束缚的方法是选择忽略它,比如,在薯片中发现猫王的脸,然后假装惊讶于同样的薯片看起来像猫王。


统计假设检验的逻辑可以归结为:我们的数据是否足以让我们感到惊讶,从而改变我们的想法。如果我们已经看到数据,怎么还会对这些数据感到惊讶呢?)



你觉得这些图片看起来像兔子和猫王的脸吗?或者是美国总统的肖像?有关这一话题的乐趣,请参阅我相关的文章


每当数据骗子找到一个模式,得到启发,就会在相同模式测试相同数据,然后在他们的理论旁边加上一两个合法的P 值来发布结果时,他们实际上是在愚弄你(也许糊弄他们自己)。而这个 P 值并没有任何意义,除非你在查看数据之前,坚持自己的假设


真正的统计学家有决定权


多亏了统计学专业以严谨推理而近乎神秘的名声,数据科学领域滥竽充数的骗子们创下了历史新高。这样很容易作弊而不被发现,特别是如果你毫无戒心的受害者认为这一切都是关于方程式和数据的话。


数据集就是数据集,对吗?错了。你如何使用数据集很重要。


幸运的是,对于他们的潜在目标来说,你只需一条线索能抓住他们:数据骗子们都是放马后炮的事后诸葛亮。


数据骗子是放马后炮的事后诸葛亮——从数学上重新发现他们已经知道存在于数据中的现象——而统计学家却是提供前瞻性测试。


与数据骗子不同,优秀的分析学家是思想都很开放,他们鼓舞人心的见解中总能给人以提醒,让人们注意到他们观察到下现象背后有不同种解释,优秀的统计学家在做出决策前会认真权衡。


优秀的分析学家是思想开放的典范。与数据骗子不同的是,他们不会在数据之外得出结论。


分析学家产生灵感


只要分析学家不超出自己的数据范围,他们就不必拍板决定。如果他们想要宣称没见过的东西,那就是另一种工作了,他们应该摘下分析学家的帽子,换上统计学家的帽子。毕竟,不管你的正式职位是什么,并没有规定说你不能同时学这两种行业,但如果你想这样做的话,只要你不将它们搞混淆就行。


擅长统计并不意味着你擅长分析,反之亦然。如果有人试图告诉你不是这样,那么请想想是不是被骗了。如果有人告诉你,你可以在你已经探索过的数据上进行统计推断,请再确认你是不是被骗了。


隐藏在花哨的解释背后


如果你仔细观察那些数据骗子,你会发现他们喜欢编造花哨的故事来“解释”所观察到的数据。这故事听起来越学术越好。别忘了,这些故事只不过是事后才会符合数据。


当数据骗子这样做的时候,让我来直截了当告诉你吧,他们就是在胡说八道。再多的方程式或漂亮的论断也无法弥补这样一个事实:即他们根本没有提供任何证据来表明他们除了数据之外还知道自己在谈论的是什么。


不要被他们花哨的解释所打动。如果是统计推断,他们必须在看到数据之前作出决定。


这就相当于炫耀他们的“通灵”能力,先偷看你手中的牌,然后预测你正拿着的是什么牌……而不管你手中拿的是什么牌。准备好看看他们是怎么表演吧,他们的表演是如何因为你的表情泄露而执行的。这就是放马后炮的事后诸葛亮,连累数据科学专业因此饱受诟病。



分析学家说,“你刚才拿的是方块 Q。”统计学家说,“在我们开始之前,我就在这张纸写下了我的假设。让我们打牌,观察一些数据,看看我说的对不对。”而数据骗子说,“我就知道你会出方块 Q,因为……”(而机器学习说:“我要提前不断地叫牌,一遍又一遍地看看我做得如何,我可能会调整我的反应,以适应一个有效的策略。但我会用算法来做,因为手动跟踪一切都很烦人。”)


提防数据骗子


当没有太多数据时,你将不得不在统计学和分析学之间做出选择。


数据分割是每个人都需要的文化权宜之计。


幸运的是,如果你有大量的数据,你就有一个绝佳的机会来利用分析学和统计学,而不用作弊。你也有完美的保护措施来对付数据骗子。这叫做数据分割,在我看来,这是数据科学中最强大的想法。


永远不要把未经检验的意见当回事。相反,要使用藏匿的测试数据来找出谁知道它们在说什么。


为了保护自己免受数据骗子的忽悠,你所要做的就是确保你把一些测试数据放在他们窥探不到的地方,然后将其他的东西都当做分析数据(不要当真)。当你面对你有可能相信的理论时,用它来拍板决定,然后打开你的秘密测试数据,看看这个理论是不是瞎扯。就这么简单!



要确保在探索阶段不允许任何人查看测试数据。为此,请坚持使用探索性数据。测试数据就不应用于分析。


这与人们在“小数据”时代所习惯的做法相比是一个很大的文化转变,在“小数据”时代,你必须解释你是如何知道你所知道的东西的,以便让人们相信你可能确实知道一些东西。


同样的规则也适用于机器学习 / 人工智能


一些冒充机器学习 / 人工智能专家的“数据骗子”很容易被识破。你揪出他们的方式和抓住其他糟糕的工程师的方式是一样的:他们试图构建的“解决方案”都是无法交付的。(早期的警告标识是缺乏行业标准编程语言和库的经验。)


但是,那些生产出似乎可以工作的系统的人呢?你怎么知道里面是不是有什么猫腻呢?同样的规则也是使用的!骗子是一个阴险的角色,他向你展示他们的模型在制作模型时所用的相同数据上的表现是多么优异。真是不忍直视啊


如果你已经构建了一个极其复杂的机器学习系统,那你怎么知道它能不能起作用呢?你没有办法的。除非你证明它能处理之前从未见过的新数据


如果你在制作模型之前就看过这些数据,那就不算是预测了。


当你有足够的数据可以分割时,你无需虚张声势地拿着漂亮的公式来证明你的项目完美(这仍然是一个随处可见的旧式习惯,不仅仅是在科学领域)。你可以说,“我之所以知道它是有效的,是因为我可以拿一个我从未见过的数据集进行验证,可以准确地预测那里会发生什么……并且是正确的。一遍又一遍。”


在新数据中测试你的模型 / 理论是建立信任的最好基础。


统计数据,或者保持谦逊


套用经济学家 Paul Samuelson 的一句俏皮话:


在过去的五次经济衰退中,骗子成功地预测到了九次。


我对数据骗子没有耐心。你以为你“知道”什么样的薯片长得跟猫王的脸一样吗?我才不管你的观点有多适合你的老薯片呢。甭管你的解释有多么花哨,我都不以为然。让我看看你的理论 / 模型在一堆你以前从未见过的新数据中是不是能起作用(并且一直都起作用)。这才是对你观点的真正考验。


给数据科学专业人士的意见


数据科学专业人士,如果你想被任何理解这种幽默的人认真对待,就不要再躲在花哨的方程式后面来支撑你的人性偏见了。让我们看看你到底有什么本领。如果你想让那些“明白”的人将你的理论 / 模型看作是一首鼓舞人心的诗歌,那么你就有勇气在一个全新的数据集上,当着人们的面前,展示它是如何工作的!


给领导的建议


领导要做到拒绝认真对待任何数据“见解”,除非它们已经在新的数据上进行了测试。不想付出努力吗?那就坚持分析,但不要依赖于这些见解,它们是脆弱的,而且也没有经过检查以确保可信度。此外,当你的组织拥有大量数据时,将数据分割作为你数据科学文化的核心部分,甚至通过控制对指定用于统计的测试数据的访问来在基础架构级别实施这种做法,也没有什么坏处。这是一个伟大的好方法,可以将数据骗子企图扼杀在萌芽状态!


总结


当数据太少而无法进行数据分割时,只有数据骗子才会试图用“严谨”的态度追随灵感,通过数学方式重新发现他们已经知道数据中存在的现象,并称他们的惊喜具有统计学意义,从而放马后炮,当事后诸葛亮。这就把他们与开明的分析学家和细致的统计学家区别开来,前者以灵感处理问题,而后者提供前瞻性的证据。


当数据充足时,要养成数据分割的习惯,这样,你就可以在不作弊的情况下实现两全其美了!一定要确保对原始数据的不同子集分别进行分析和统计。


  • 分析学家为你提供思想开放的灵感。

  • 统计学家为你提供严格的测试。

  • 数据骗子是放马后炮的事后诸葛亮,假装是分析和统计。


作者介绍:


Cassie Kozyrkov,Google 决策职能主管。热衷统计学、机器学习 / 人工智能、数据科学、双关语、艺术、戏剧和决策科学。


原文链接:


https://towardsdatascience.com/how-to-spot-a-data-charlatan-85785c991433


2020 年 12 月 20 日 10:00893
用户头像
刘燕 InfoQ记者

发布了 484 篇内容, 共 150.7 次阅读, 收获喜欢 872 次。

关注

评论

发布
暂无评论
发现更多内容

【第五周】学习总结——缓存、消息队列、负载均衡

三尾鱼

极客大学架构师训练营

架构师训练营第五周作业

张明森

【第五周】命题作业——实现一致性 hash 算法

三尾鱼

极客大学架构师训练营

架构师训练营作业-Week5

wyzwlj

极客大学架构师训练营

实现一致性 hash 算法

不在调上

架构师训练营第 0 期第 5 周作业

Arthur

极客大学架构师训练营

架构师第5周-总结

上山砍柴

极客大学架构师训练营

Cypress与TestCafe WebUI端到端测试框架简介

软测小生

自动化测试 Cypress TestCafe Web UI 测试框架

区块链各行业应用案例

CECBC区块链专委会

产业落地 政策扶持 去中心化信任 防篡改不可逆 低廉高效

第五周总结

胡江涛

极客大学架构师训练营

架构师训练营 - 第 4 周命题作业

红了哟

JIT的Profile神器JITWatch

程序那些事

Java Profile JVM JIT JITWatch

架构师是怎样炼成的 05-1 分布式缓存,异步与集群

闷骚程序员

分布式缓存框架

王鹏飞

计算机操作系统基础(十二)---线程同步之自旋锁

书旅

php laravel 线程 操作系统 进程

架构师训练营第五周总结

一剑

架构师训练营 - 学习总结 第 5 周

水边

极客大学架构师训练营

一致性哈希

独孤魂

第五周总结

不在调上

区块链产业正开启“赛马”模式

CECBC区块链专委会

产业落地 政策扶持 赛马模式 技术革命

架构师训练营--第五周作业

花花大脸猫

极客大学架构师训练营

消息队列与异步架构||负载均衡架构

独孤魂

第五周-作业1

seng man

练习 05-1

闷骚程序员

为什么C++可以返回Vector局部变量

韩小非

c++ 内存泄露 函数调用 堆内存管理

架构师训练营 - 第 4 周学习总结

红了哟

第五周作业

胡江涛

极客大学架构师训练营

游戏夜读 | 数据分析的及时性

game1night

一致性算法实现

罗亮

一致性哈希

疫情防控加速数字化,亚洲普惠金融迎来大发展

CECBC区块链专委会

数字化 普惠金融 合作共赢

学习总结 - 第 5 周

饶军

NLP领域的2020年大事记及2021展望

NLP领域的2020年大事记及2021展望

如何识别滥竽充数的“数据骗子”-InfoQ