• 假设检验的学习和理解


    本文目的

    最近在Coursera上学习Data Analysis,结合前一阵子阅读的《Head First Statistics》,发现好多计算方法都涉及了假设检验(Hypothesis Test,又称“显著性检验”,Significance Test),用于检验模型的显著性。如回归分析,检测估计量的系数;卡方检验(运用卡方分布)检验模型的优度拟合和变量独立性。所以,决定梳理一下相关知识,作为备忘。

    原理&方法

    个人理解,假设检验就是利用反证法和小概率事件对原假设(Null Hypothesis)和备选假设(Alternative Hypothesis)进行选择。首先,假设原假设成立,那么就可以利用原假设的一些条件,如统计量的概率分布。然后,选定显著性水平α和对应的拒绝域(一个区间),一般选择α = 5%或α = 1%。接下来,根据样本和假设的统计量,计算P值(P Value)。如果P值对应的统计量在显著性水平以内,那么就拒原假设。直观的理解,因为α比较小,属于小概率事件,一般不可能发生,但是现在却发生了,那么原假设有问题,所以拒绝原假设,接受备选假设。

    需要指出的是,无论是否拒绝原假设,都不能保证100%正确,只能在一定程度上估计这件事情可能性。而且检验结果很大程度上取决于样本,所以一旦样本出现偏倚(Biased),会直接影响检验结果。

    假设检验,形式化的可以总结为以下6步:

    1. 确定原假设H0和备选假设H1
    2. 根据H0,确定统计量的概率分布和相关参数
    3. 确定显著性水平α和拒绝域
    4. 根据步骤2的参数,求出P值
    5. 查看P值是否位于拒绝域以内
    6. 做出判断,如果P值在拒绝域以内,那么拒绝H0接受H1。否则接受H0拒绝H1

    检验结果

     

    H0正确

    H0错误

    接收

    PASS

    第二类错误

    (False Discovery)

    拒绝

    第一类错误

    (False Positive)

    PASS

    上面提到,假设检验不会100%确保检验结果正确,会出现上面的两类错误:

    • 第一类错误:错误的拒绝原假设。原假设正确,但是却错误的拒绝了,发生此事件的概率为α,也就是显著性水平。所以显著性水平越高,越容易发生。
    • 第二类错误:错误的接受原假设。原假设错误,但是却接受了原假设。发生此事件的概率需要根据统计量的分布,和被选项假设具有具体值来确定,这里先略过(《Head First Statistics》假设检验这一章中举了一个例子描述如何求解其概率)。

    如何选择显著性水平α

    显著性水平α一般为0.05,但是根据需要可以设为0.1或者0.01。当α较大时,第一类错误的概率增大,第二类错误的概率减少;α较小时,则相反。下面举几个例子:

    1 一个汽车制造商正在考核新零件,该零件对车辆安全至关重要。目前正在抽样检测,你觉得α应该如何指定。

    解答H0:新配件与原始配件的安全性能相同。H1:新配件比原始配件更安全。由于此配件关系用户声明安全,所以需要尽量使用较安全的配件,拒绝假设H0,那么可以设将α设置高一点,比如 0.1。

    例2 一个机器中,有一个配件,替换成本十分高,但是如果该配件损坏了,对机器影响不大,请问显著性水平应该如何选取。

    解答 H0:配件正常工作。H1:配件损坏。由于替换成本较高,所以需要确保零配件的确损坏才能替换,可以将α设置较小,比如0.01。

    多重测试(Multiple-testing)

    上面提到了假设检验可能出现问题,一个形象的例子可以参见这个漫画。主要意思是这样的,一妹纸问一技术宅:“吃软心豆粒糖会长痘痘吗?”为了回答妹子问题,技术宅就做了一次假设检验,P值大于0.05,所以回答妹子:“软心豆粒糖不会引起痘痘!”妹子又说:“好像吃了某种颜色的软心豆粒糖会长痘痘。”技术宅只好一边一边的将不同颜色的糖果进行显著性检验,最终发现在一次实验中,绿色的糖果的P值小于0.05,所以得出结论“吃绿色的软心豆粒糖会长痘痘”。

    这个故事说明了,显著性检验进行许多次后,出现错误的可能性会增大。特别的,第一类错误至少出现一次的的概率是P (第一类错误的次数>=1)= 1 – (1-α)m。这意味着,随着m的增大,P (第一类错误的次数>=1)会无限接近1。

    这个问题很严重,容易导致假设检验的滥用,所以需要多重测试修正这类问题。具体的方法,可以参见这里

    参考资料

  • 相关阅读:
    IaaS、PaaS、SaaS
    hyper-V 配置
    解决linux下创建用户时出现Creating mailbox file: File exists
    iframe层级关系调用
    js,jq新增元素 ,on绑定事件无效
    js中!和!!的区别与用法
    form表单禁止button 提交
    Thinkphp5终端创建控制器和模型
    TP5的目录常量和路径
    sublime安装package controlller
  • 原文地址:https://www.cnblogs.com/bourneli/p/2955728.html
Copyright © 2020-2023  润新知