当前位置: 首页 > 后端技术 > Python

Statistics系列中的StatisticalHypothesisTesting

时间:2023-03-26 12:28:09 Python

上次写了statistics中的confidencelevel和confidenceinterval后,文章反响不错。这次我会尝试写一下统计学中的假设检验。假设检验的核心其实就是反证法。反证法是数学中的一个概念,即如果要证明一个结论是正确的,首先假设该结论是错误的,然后在结论错误的前提下进行推理,结果为推理与假设相矛盾。时间证明这个假设是错误的,即这个结论是正确的。以上就是简单的反证法思想。了解了反证法之后,我们就开始正式的假设检验。这里举一个大家耳熟能详的例子,“品茗小姐”。贵妇品茶是一个非常古老的故事。讲述了很久很久以前一群人品茶的故事。这时,一位女士提出了一个有趣的观点,那就是在牛奶中加入茶叶。将其加入茶叶中得到的“奶茶”最终的味道是不同的。大部分人都觉得这个lady在胡说八道,只有一个男的提出用科学的方法来证明同一个区别(大佬觉得提问的角度总是那么独特,想想别人为什么这么说,而不是Rejection一开始没有考虑)。接下来,我们就仔细看看这个人是如何证明的。首先,他假设在牛奶中加入茶会使“奶茶”的味道与在茶中加入牛奶相同。然后将这两种“奶茶”随机端给女士,让女士品尝是先加牛奶还是先加茶。如果这位女士能正确地品尝出来,那说明确实有区别。如果味道不对,就说明没有区别。.这里涉及到一个问题,女士应该喝多少杯,喝一杯是绝对不能接受的,因为任何一杯猜对(盲)的概率都是50%。以下是不同杯数对应的猜对概率(注意,这里是猜对,不是品对)。从上表可以看出,连续4杯猜对的概率小于0.1,连续10杯猜对的概率小于0.001。如果在茶里加牛奶和在牛奶里加茶得到“奶茶”真的没有区别的话,那就是女性基本靠猜想喝对不对,但猜对10杯的概率就更小了小于0.001,我们把这个概率非常小的事件(这里需要定义,小概率事件有多小)称为小概率事件。我们认为小概率事件一般不会发生。如果发生了,说明我们的认知是错误的。也就是说,女人品茶不是靠猜的,就是给茶加奶,给奶加茶。里面得到的“奶茶”,确实与众不同。我们称上述过程为假设检验。了解了假设检验的思路之后,我们来看看具体步骤:step1:提出原假设和备择假设;原假设(H0)一般是我们要推翻的论证,备择假设(H1)是我们要证明的论证。以上面一位女士品尝茶为例。H0:在牛奶中加入茶得到的“奶茶”与在茶中加入牛奶是一样的。H0:在牛奶中加入茶叶得到的“奶茶”与在茶中加入牛奶不同。Step2:构造检验统计量,在H0假设成立的前提下,找出统计量的分布;检验统计量是根据样本观察结果计算出的样本统计量,并以此来比较原假设和备择假设做出的决定。上图中是三种不同的统计量及其对应的分布,分别称为Z-test、T-test和chi-squaretest。Z检验:一般用于检验大样本(即样本量大于30)均值差的方法。它利用标准正态分布的理论来推断差异的概率,从而比较两个均值之间的差异是否显着。国内也叫u-test。T检验:主要用于样本量较小(如n<30)、总体标准差σ未知的正态分布。T检验利用t分布理论推导出差异的概率,从而比较两个均值之间的差异是否显着。卡方检验:卡方检验是统计样本的实际观测值与理论推断值的偏离程度。实际观测值与理论推断值的偏离程度决定了卡方值的大小。卡方值越大,说明两者偏离程度越大;反之,两者偏差越小;如果两个值完全相等,则卡方值为0,说明理论值完全一致。下面是三种检验对应的分布图:根据不同检验的特点,我们可以根据下图选择合适的检验方法:step3:根据需要的显着性水平,找到临界值和拒绝域。还记得我们前面提到的是小概率事件吗?如果发生了小概率事件,说明我们的原假设是错误的,但是概率到底有多小呢?一般这个概率是0.05,也就是5%。如果某件事发生的概率小于或等于5%,我们认为它是小概率事件,0.05是显着性水平,用α表示。显着性水平将概率分布分为两个区间:拒绝区间和接受区间。如果最终计算结果落在拒绝区间内,我们就可以拒绝零假设;如果它落在接受区间内,我们需要接受零假设。1-α称为置信度(confidence)。既然我们知道了显着性水平,那么我们就可以根据显着性水平计算临界值和拒绝域。你怎么要求它?这里的临界值是z值(z值用于正态分布)或t值(t值用于t分布),以临界值为端点的区间称为拒绝域.z值和t值可以根据显着性水平直接在对应的z值表和t值表中查询。下图是双侧测试和单侧测试对应的α,1-α,临界值,拒绝域,接受域的情况,其中α是代表阴影部分的面积,不是x的值-轴。至此,计算出显着性水平对应的临界值和拒绝域。step4:计算检验统计量根据我们前面选择的检验统计量类型,计算相应检验统计量的值。此外,我们还可以根据样本量得到P值,P值是小概率事件在实际样本中的具体概率值。Step5:决策将计算出的检验统计量与临界值和拒绝域进行比较。如果该值落在拒绝域内,则我们拒绝原假设,否则接受原假设。将计算出的P值与显着性水平α值进行比较,如果P值小于或等于α,则拒绝原假设,否则接受原假设。以上两种方法分别称为统计检验和P值检验。以上就是假设检验的一般过程。此外,假设检验还存在两种错误。第一类错误称为放弃错误。通俗地说,就是漏诊。说明你生病了(假设是正确的),但是你没有发现,所以你拒绝了。第二种错误是误认错误。通俗点说就是误诊,就是你没病(假设错误),却被诊断为有病(假设正确),所以你接受了这个假设。第一类错误的取值一般为0.05,第二类错误的取值一般为0.1或0.2。另外,还有一个指标叫做幂(power),power=1-TypeIIerror的值,power表示你有多大把握能够正确拒绝你的原假设H0。关于假设检验我们就到此为止了,后面会分享其他统计学方面的知识。大家有什么想看的可以在评论区留言。