1.1 辛普森悖论
辛普森悖论以第一位发表该悖论的统计学家E. H.辛普森(生于1922年)的名字命名。这个悖论是指存在着这样的一种数据(分布),其在总体上存在一种统计相关关系,但在各个子总体上却存在与之相反的统计相关关系。
例1.1 大学录取性别歧视问题
根据美国一所大学的两个学院(商学院和法学院)的新学期招生数据,人们怀疑在招生中有性别歧视。两个学院汇总的招生统计数据如表1.1所示。
表1.1 两个学院汇总的招生统计数据
从表1.1可见,女生的录取率为56.5%,明显低于男生的录取率68.8%,似乎确实存在性别歧视,但真的存在性别歧视吗?让我们再来看两个学院各自的招生统计数据。
从表1.2和表1.3可见,在两个学院各自的细化招生统计数据中,女生的录取率都高于男生的录取率。这与两个学院汇总统计数据中的结论正好相反。对于这样的结论,大家感觉难以置信,甚至很荒谬,因此,人们称之为悖论。通过深入分析可以看到,出现这样的情况主要有两个原因:
● 两个学院的录取率之间存在很大差距,法学院的录取率比商学院的录取率低得多。同时,不同性别的申请者数量在不同学院的分布相反,女性申请者大多分布在录取率低的法学院,而男性申请者大多分布在录取率高的商学院。在拒收率高的法学院,虽然女生的拒收率低于男生的拒收率,但由于申请的女生远远多于男生,因此拒收的女生数量(101人)仍然远远多于拒收的男生数量(45人),差距为56人。而在录取率高的商学院,虽然男生申请数量更多,但由于总体录取率高,导致男生被拒数量(50人)和女生被拒数量(9人)之间的差距(41)与法学院的被拒数量差距相比,并不是很大。因此最后的汇总结果中,申请数量中男生多于女生,而拒收数量中男生少于女生,男生总的录取率反而高于女生总的录取率。
● 可能存在其他潜在因素的影响。性别并非影响录取率的唯一因素,甚至可能对录取率毫无影响。或许是其他因素的作用,如入学成绩、教育背景等造成了录取率的差异,让人误以为是性别差异造成的。
表1.2 法学院招生统计数据
表1.3 商学院招生统计数据
这个例子告诉我们,简单地将分组数据加起来进行相关分析,有时候并不能反映真实情况,甚至可能会得出错误的结论,需要对数据进行深入的分析,以去伪存真。将数据按照一些重要变量进行分组,再进行相关分析,有时更能反映世界的真实情况。我们再来看一个类似的例子。
例1.2 新药效果的评估
下面观察患者服用一种新药的效果,相关统计数据如表1.4所示。
表1.4 按性别分组的新药效果统计数据
在表1.4中,第一行是男性患者的数据,第二行是女性患者的数据,第三行是不区分性别的所有患者的数据。根据第一行数据,在男性患者中,服用药物的患者比未服用药物的患者有更高的康复率(93%>87%)。根据第二行数据,在女性患者中,同样服用药物的患者比未服用药物的患者有更高的康复率(73%>69%)。但是,根据第三行数据,若以所有患者为统计对象,服用药物的患者却比未服用药物的患者的康复率更低(78%<83%)。也就是说,新药分别对男性患者和女性患者康复都有帮助,但对包含男性和女性的所有患者,结论正好相反。这是为什么?
首先我们知道,无论是服用药物的患者还是未服用药物的患者,总的康复率都等于男性康复率和女性康复率的加权平均。先看服用药物的患者,由于女性患者的比例远高于男性患者的比例,因此加权平均的康复率更接近于女性患者的康复率73%,为78%;对于未服用药物的患者,由于男性患者的比例远高于女性患者的比例,因此加权平均的康复率更接近于男性患者的康复率87%,为83%。只要服用药物的女性患者的康复率低于未服用药物的男性患者的康复率,就存在这样的可能性,虽然在分组统计数据中,无论男性还是女性,服用药物患者的康复率都高于未服用药物患者的康复率,但加权平均后,服用药物患者总的康复率低于未服用药物患者总的康复率。这是因为,只要我们让服用药物的患者中女性患者的比例足够大,就可以让服用药物患者的康复率无限接近于服用药物的女性患者的康复率;而只要我们让未服用药物的患者中男性患者的比例足够大,就可以让未服用药物患者的康复率无限接近于未服用药物的男性患者的康复率。由于此时服用药物的女性患者的康复率低于未服用药物的男性患者的康复率,因此,最终出现了服用药物患者总的康复率低于未服用药物患者总的康复率的现象。表1.4中的统计数据正好是这样的情况。出现了“新药分别对男性患者和女性患者康复都有帮助,但对包含男性和女性的所有患者,结论正好相反”的现象。
因此,在本例中要正确评估服用药物对康复率的影响,我们需要通过分组,在同一性别的条件下对目标对象进行比较,以避免由于总体样本中不同性别患者的比例不同,对分析结果的“扭曲”。在本例中,这个问题的正确答案无法直接从总体(未分组)数据的相关分析中得到。我们对样本数据进行分组,相应的分组数据较之未分组的数据,带有更多的细节信息,具有更大的信息量,因此需要采用分组数据进行研究。
但是,对样本数据进行分组就一定能避免样本分布比例对分析结果的“扭曲”吗?还是前面服用药物和康复的例子,还是同样的患者数据对象。我们对患者数据的统计不是按照性别分组,而是按照试验结束时患者的血压进行分组。重新整理后,我们将得到如表1.5所示的数据,表1.5中描述的患者对象数据与表1.4中的原始样本数据完全相同,不同之处在于两个表分组的变量不同。
表1.5 按血压分组的新药效果统计数据
根据这个数据,无论是分组数据还是总体数据,服用药物患者的康复率都要低于未服用药物患者的康复率。这个数据能够说明服用药物确实无助于患者的康复吗?这个结论显然是错误的,那么错误的原因在哪里呢?
事实上,分组数据也未必总能提供正确的信息,能否提供更为准确的信息来避免样本分布比例对分析结果的“扭曲”,还有赖于正确的分组方法,而正确的分组方法则取决于我们所看到的数据结果的生成机制,也就是数据中变量之间引起与被引起的关系。假设有如下两个方面的数据生成机制:
● 患者性别影响康复:患者的雌激素水平影响患者的康复,雌激素水平越高,患者的康复率越低,因此,无论是否服用药物,女性的康复率都要低于男性的康复率,这从表1.4的数据中可以看到。
● 服用药物影响康复:服用药物对患者康复的影响,是通过患者血压起作用的,服用药物导致患者血压降低,而患者血压降低导致患者康复率提高。
在了解了上述数据的生成机制后,我们对这个新药效果评价的分析思路将豁然开朗。由于患者性别对患者的康复有影响,因此,如表1.4所示,以性别作为分组变量将能够避免样本分布比例对分析结果的“扭曲”,从而得出正确的分析结论;而如表1.5所示,若以患者的血压作为分组变量,由于服用药物促进患者康复是通过降低患者的血压来实现的,试验结束后的患者血压情况和康复情况应该是一致的,按照试验结束后的血压来分组并不能提供更多的信息,因此无法避免样本分布比例对分析结果的“扭曲”。
从服用新药效果评估这个例子中我们看到,在数据分析中,具体应该以什么变量为依据来进行分组,才能提供更多的信息、避免分析结果偏差、得出正确的结论呢?这需要根据样本数据的生成机制,更准确地说是样本数据中变量之间引起与被引起的关系,来选取相应的变量作为分组变量,具体的变量选用准则将在第4章的调整表达式部分做进一步介绍。
从辛普森悖论现象可以看到,简单应用统计相关分析很可能会导致我们在数据分析中得出错误的结论。类似地,在机器学习应用中,不深入分析、应用数据中各个变量之间的相互作用机制,仅仅简单利用变量之间的统计相关分析结果,同样可能产生错误。下面是一个推荐系统的例子。
例1.3 推荐算法效果评估
某网站原有推荐算法A,为进一步提高网站的点击通过率(Click Through Rate, CTR),拟新上线推荐算法B。为评估新算法B的效果,以便决定是否正式用算法B代替算法A,公司从日志文件中提取数据对算法A和算法B的推荐效果进行了统计,相关数据如表1.6所示。
表1.6 新、旧推荐算法CTR统计数据
这个数据就能够说明推荐算法B(新算法)的效果确实优于推荐算法A(旧算法)的效果吗?
细心的算法研究人员注意到用户活跃度对其网站点击行为存在影响,网站访客中活跃用户和非活跃用户在行为特点上存在很大的不同,因此,对日志数据按照用户的活跃情况进行分组,相关数据如表1.7所示。
由表1.7可见,无论是活跃用户还是非活跃用户,旧推荐算法A的CTR都要高于新推荐算法B的CTR,虽然在包含所有用户的统计数据上新推荐算法B的CTR要高于旧推荐算法A的CTR,但我们并不能简单地根据表1.6就得出新的推荐算法B具有更好推荐效果的结论。
表1.7 按照用户活跃情况分组的新、旧推荐算法CTR统计数据