幸存者偏差

速读摘要
人们看到的,可能代表的只是人们能够看到的,同样还有更多人们看不到的东西。而人们如果只根据自己看到的现象,去分析其中的原因,而忽略了自己为什么能够看到这些现象的原因,就很可能会因此造成偏差。但必须明确的是,"简单逻辑"有一定的好处,比如可以节约精力等,但有时候也可能会让人做出错误的判断,在处理问题的时候,不妨多问自己一个为什么,多和别人进行一次交流。幸存者偏差"等逻辑谬误之所以会出现,一个很重要的原因是人们习惯于关注现存的、眼前的事物,即更相信"眼见为实",而忽略某些隐藏信息和细节。
原文约 2530   |  图片 1   |  建议阅读 6 分钟  |  评价反馈
  • 看法
经典的逻辑谬误
  • 定义
又称:“沉默的数据”、“死人不会说话”
幸存者偏差指的是当取得资讯的渠道,仅来自于幸存者时,此资讯可能会与实际情况存在偏差
人们看到的,可能代表的只是人们能够看到的,同样还有更多人们看不到的东西。而人们如果只根据自己看到的现象,去分析其中的原因,而忽略了自己为什么能够看到这些现象的原因,就很可能会因此造成偏差。
造成偏差的原因——许多不幸者或许已经永远失去了发言的机会,幸存者传递出的信息就是全部的信息,所以才会产生谬误
  • 来源
关于幸存者偏差(Survivorship Bias),有一个较知名的“飞机防护”案例。
1941年,第二次世界大战中,美国哥伦比亚大学,统计学沃德教授应军方要求,利用其在统计方面的专业知识来提供关于《飞机应该如何加强防护,才能降低被炮火击落的几率》的相关建议。沃德教授针对联军的轰炸机遭受攻击后的数据,进行研究后发现:机翼是最容易被击中的位置,机尾则是最少被击中的位置。

沃德教授的结论是“我们应该强化机尾的防护”,而军方指挥官认为“应该加强机翼的防护,因为这是最容易被击中的位置”。
沃德教授坚持认为:
(1)统计的样本,只涵盖平安返回的轰炸机;
(2)被多次击中机翼的轰炸机,似乎还是能够安全返航;
(3)而在机尾的位置,很少发现弹孔的原因并非真的不会中弹,而是一旦中弹,其安全返航的概率就微乎其微。

军方采用了教授的建议,并且后来证实该决策是正确的,看不见的弹痕却最致命!
这个故事有两个启示:

一是战死或被俘的飞行员无法发表意见,所以弹痕数据的来源本身就有严重的偏误;

二是作战经验丰富的飞行员的专业意见也不一定能提升决策的质量,因为这些飞行员大多是机翼中弹而机尾未中弹的幸存者。
俗语“死人不会说话”很好地解释了产生这种偏差的重要成因。当我们分析问题所依赖信息全部或者大部分来自“显著的信息”,较少利用“不显著的信息”甚至彻底忽略“沉默的信息”,得到的结论与事实情况就可能存在巨大偏差。
  • 数分案例
(1)亚裔学生案例

美国学生会发现亚裔同学在数学方面要超出其同龄孩子很多—— 

“幸存者偏差”:能到美国上学的孩子在中国的教育水平和成长环境通常都会相对优越,要是中国的母语是英文,想必语文成绩也会优于美国同龄学生

(2)住院研究案例

假如北京长庚医院对心脏病人住院病人的饮食习惯进行研究,从而发表一篇《心脏病与饮食习惯之间的关系》的论文,该论文是否有可信度?

答案是没有!因为长庚医院为北京高端私立医院,该院病人和普通病人的饮食习惯会存在差异,同时住院的病人也并非能代表所有病例(不住院就已经去世的、住不起院的等等),事实上,排除这些干扰因素是现代医学研究的基本准则。

(3)健身房案例

每周一三五中午都会去公司的健身房,这个习惯坚持了很长一段时间,然而有一段时间我一度沮丧——因为我发现公司健身房的同事基本上身材都比我好。

这其实就是典型的“幸存者偏差”——那些健身房的人身材好当然是大概率事件,身材不好也不锻炼的人通常很少去健身房。

(4)章鱼保罗案例

2010年世界杯最大的明星不是来自某个球员,而是来自德国奥博豪森海洋馆的章鱼”保罗“,它神奇地连续7次百发百中地预测了世界杯德国队的比赛结果,章鱼保罗成为那个夏天世界媒体热情追逐的对象。

然而事实上它就是一次典型的”幸存者偏差“,那年夏天其实有很多动物都参与了世界杯的预测:菲律宾的猴子、墨西哥的羊驼、非洲的大象、保加利亚的奶牛甚至还有中国的熊猫,只是因为这些动物预测失败了于是并没有媒体报道,而章鱼保罗成为那个幸运儿。

(5) 总统大选 案例

1936年,美国总统大选,《文学文摘》杂志通过140万人的电话调研显示兰登会赢得大选,这个调研有多大的可信度?
事实上, 1936年美国大选的调查,由于是电话调查,而电话在30年代的美国还是富人的专利,而这些富人并非美国选民的随机样本,最终罗斯福而不是杂志预测的兰登当选。

 

(6) 埃及 莎草纸 案例

在古埃及的文物中发现了莎草纸,而在同期其他地中海文明如腓尼基、古希腊、古罗马则没有发现莎草纸,能否说明该时期莎草纸在埃及应用广泛而在其他地中海文明则没有应用? 

事实上, 古埃及的发现了莎草纸而其他地方没有,真实原因是其他三个地方——腓尼基、古希腊、古罗马气候比古埃湿润,而埃及则比较干燥,而这些莎草纸在潮湿环境中并没有保存下来。

 

(7) 新游戏用户调研 案例

某新游戏上线一个月,游戏策划随机找了游戏中高度活跃用户进行调研,确定了游戏下一步迭代的核心方案,会不会存在致命缺陷?

事实上, 新游戏上线一个月,有留存用户,也有流失用户,关注留存用户需求固然重要,但对于一个新游戏而言更重要的是关注那些流失用户的流失原因。

 

(8) 新游戏用户调研 案例

某记者在网上搜出“民国小学生作文”,文采极好,于是记者总结道:现在的小学语文教育和民国时没法比啊!

事实上, 民国小学生作文之所以能流传到今天,必然是当时就是佼佼者,它是幸存者,代表不了当时民国小学生的整体水平。
  • 危害性 反思
1.遗漏有效数据

幸存者偏差会导致忽视缺乏可见性的样本,遗漏一些对分析结果有重大影响的有效数据。例如,数据科学家在对当前数据进行客户流失率分析时,可能会忽视一年前网站发生重大变化时客户流失的情况。

2.产生“相关性证明因果关系”的错误逻辑

幸存者偏差是一种倾向,关注在一个过程中成功“幸存”下来而忽略那些由于缺乏可见性而没有成功的人或事。这一性质会扭曲分析过程,导致一种错误的逻辑判断:“幸存的数据”具有特殊的特征(相关性证明因果关系)

 3.影响分析结果准确度

如果在数据分析中使用的样本是“幸存了某些经历”才被观察到的,会使分析结果产生向上的偏见,从而得出以偏概全的错误结论。[5]

  • 建议
如何才能避免陷入“幸福者偏差”呢?这里向大家提出以下几点建议:

 

1.建立概率论思维“概率论”告诉大家,在一段较长的时间内,一个事物的表现会趋于平均水平,即“"均值回归",根据这个理论,大家在做判断的时候应该避免盯着某些“小概率事件”不放,而要从更宏观、客观的角度思考问题。

 

2.避免陷入“简单逻辑”。研究证明,因为大脑每天都要处理很多信息,所以其更喜欢按照简单、省力的方式来运作,而“简单逻辑”便是一个人在面对某件事情时,不假思索就能出现的思维方式。但必须明确的是,“简单逻辑”有一定的好处,比如可以节约精力等,但有时候也可能会让人做出错误的判断,因此,在处理问题的时候,不妨多问自己一个为什么,多和别人进行一次交流。

 

3.学会拆分任务。“幸存者偏差”等逻辑谬误之所以会出现,一个很重要的原因是人们习惯于关注现存的、眼前的事物,即更相信“眼见为实”,而忽略某些隐藏信息和细节。对此,大家可以通过拆分任务的方式,让自己对任务更加明确,比如在制定目标的时候,可以将大目标拆分成一个个小目标;在完成任务的时候,可以将大任务拆分成一个个具体的步骤。

 

4. 在分析数据、决策判断时要想避免“幸存者偏差”,必须确保从总体中抽取的样本是完全随机的,样本和剩余样本不存在显著差异。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
以下是使用Jupyter Notebook进行泰坦尼克号幸存者分类的步骤: 1. 导入必要的库和数据集 ```python import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns %matplotlib inline train_data = pd.read_csv('train.csv') test_data = pd.read_csv('test.csv') ``` 2. 数据探索和可视化 ```python # 查看数据集前5行 train_data.head() # 查看数据集信息 train_data.info() # 查看数据集中数值型特征的统计信息 train_data.describe() # 查看数据集中各特征之间的相关性 sns.heatmap(train_data.corr(), annot=True, cmap='coolwarm') # 查看幸存者和未幸存者的数量 sns.countplot(x='Survived', data=train_data) # 查看不同性别的幸存者和未幸存者的数量 sns.countplot(x='Survived', hue='Sex', data=train_data) # 查看不同船舱等级的幸存者和未幸存者的数量 sns.countplot(x='Survived', hue='Pclass', data=train_data) # 查看不同年龄段的幸存者和未幸存者的数量 sns.histplot(x='Age', hue='Survived', data=train_data, kde=True) ``` 3. 数据清洗和特征工程 ```python # 填充缺失值 train_data['Age'].fillna(train_data['Age'].median(), inplace=True) test_data['Age'].fillna(test_data['Age'].median(), inplace=True) test_data['Fare'].fillna(test_data['Fare'].median(), inplace=True) # 将性别和登船港口转换为数值型特征 train_data['Sex'] = train_data['Sex'].map({'male': 0, 'female': 1}) test_data['Sex'] = test_data['Sex'].map({'male': 0, 'female': 1}) train_data['Embarked'] = train_data['Embarked'].map({'S': 0, 'C': 1, 'Q': 2}) test_data['Embarked'] = test_data['Embarked'].map({'S': 0, 'C': 1, 'Q': 2}) # 创建新特征FamilySize和IsAlone train_data['FamilySize'] = train_data['SibSp'] + train_data['Parch'] + 1 test_data['FamilySize'] = test_data['SibSp'] + test_data['Parch'] + 1 train_data['IsAlone'] = np.where(train_data['FamilySize'] == 1, 1, 0) test_data['IsAlone'] = np.where(test_data['FamilySize'] == 1, 1, 0) # 删除无用特征 train_data.drop(['PassengerId', 'Name', 'Ticket', 'Cabin', 'SibSp', 'Parch'], axis=1, inplace=True) test_data.drop(['PassengerId', 'Name', 'Ticket', 'Cabin', 'SibSp', 'Parch'], axis=1, inplace=True) ``` 4. 模型训练和预测 ```python from sklearn.model_selection import train_test_split from sklearn.linear_model import LogisticRegression from sklearn.metrics import accuracy_score X = train_data.drop('Survived', axis=1) y = train_data['Survived'] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) model = LogisticRegression() model.fit(X_train, y_train) y_pred = model.predict(X_test) print('Accuracy:', accuracy_score(y_test, y_pred)) ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Burt的路在脚下

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值