问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

假设检验与两类错误

创作时间:
作者:
@小白创作中心

假设检验与两类错误

引用
CSDN
1.
https://blog.csdn.net/cl2010abc/article/details/137084643

假设检验是统计学中一个重要的概念,用于判断某个假设是否成立。本文将通过具体例子,详细介绍假设检验的步骤、两类错误以及如何计算这些错误。

假设检验的定义

什么是假设检验

首先从一个例子引出假设检验的思想:假设一个盒子装了红白球共100个,张三说里面有99个是白球,现在从盒子中任取一球,结果取出的是红球,问张三的说法对吗?

对于这个问题,我们可以采取如下的思路来解决:先假定张三说的对,那么取出红球的概率 (p(红球) = \frac{1}{100}),也就是一次抽样取出红球是小概率事件,但现在一次抽样抽出红球,与小概率事件实际不符,所以我们认为原来的假定为假,这个盒子中不可能有99个白球。

假设检验先假设总体具有某种特征,例如总体的参数为多少,然后再通过对样本的加工,即构造统计量,推断出假设的结论是否合理。假设检验依据的是小概率思想,即小概率事件在一次试验中基本上不会发生。

假设检验的步骤

下面以一个案例来说明假设检验的步骤:假设某车间用一台包装机包装葡萄糖。已知每袋糖的净重是一个随机变量,且服从标准差为 0.015 kg 的正态分布。某日随机抽取它所包装的9袋糖,称得净重为(kg):

0.497,0.506,0.518,0.524,0.498,0.511,0.520,0.515,0.512

问每袋糖的净重的均值 (\mu) 是不是0.5kg?

  1. 提出原假设与备择假设

本例中原假设和备择假设分别为:(H_0: \mu = 0.5 kg),(H_1: \mu \neq 0.5 kg)

  1. 从所研究总体中出抽取一个随机样本

本例中从总体中随机抽取了9个样本,通过经验我们知道样本的均值 (\overline{X}) 与总体的均值 (\mu) 的差值不会太大,如果相差太大,我们就可以拒绝原假设 (H_0)

  1. 构造检验统计量

统计量 (Z = \frac{\overline{X} - \mu}{\delta/\sqrt{n}})(其中 (\delta) 为总体标准差,(n) 为样本数量)服从标准正太分布。

  1. 根据显著性水平确定拒绝域临界值

选择一个阈值 (k),根据标准正太分布的性质,当 (Z > k) 或 (Z < -k) 时,拒绝原假设 (H_0),当 (-k <= Z <= k) 时不拒绝原假设 (H_0)。一般阈值的选择是由统计量落在拒绝域的概率确定,它叫做置信水平,用 (\alpha) 表示,一般取值为5%。

  1. 计算检验统计量与临界值进行比较

根据抽样的样本,计算出统计量 (Z = \frac{(0.497+0.506+0.518+0.524+0.498+0.511+0.520+0.515+0.512) / 9 - 0.5}{0.015 / 3} = 2.24)

根据5%的置信水平计算出两端的阈值分别是-1.96和1.96,因为 (Z > 1.96),所以在置信度水平5%的情况下,拒绝原假设 (H_0),即总体样本的均值不等于0.5kg。

假设检验的相关概念

假设检验的两类错误

拒绝 (H_0)
不拒绝 (H_0)
(H_0) 为真
第一类错误 ((\alpha))
正确 ((1 - \alpha))
(H_0) 为假
正确 ((power = 1 - \beta))
第二类错误 ((\beta))
  • 第一类错误:原假设为真,但我们却拒绝了它,对应假设检验的显著性水平,一般用 (\alpha) 表示。
  • 第二类错误:原假设为假,但我们却没有拒绝它,一般用 (\beta) 表示。
  • 功效:当原假设为假,我们正确拒绝原假设的概率,它等于 (1 - \beta)。
  • p值:当原假设为真时,比所得到的样本观察结果更极端的结果出现的概率,如果 (p < \alpha) 表明原假设发生的概率很小,但却发生了,根据小概率事件,那么拒绝 (H_0),如果 (p >= \alpha) 表明原假设发生的概率较大,那么不能拒绝 (H_0)。

两类错误的计算

假如有如下假设检验,原假设 (H_0: \mu = 0),备择假设 (H_1: \mu = 10),下图所示,该假设检验的置信水平 (\alpha) 为红色横线填充的部分,功效 (\beta) 为蓝色斜线填充的部分。

下面用代码演示下两类错误的计算:

from scipy.stats import norm

if __name__ == '__main__':
    alpha = 0.05
    rv = norm(loc=0, scale=10)
    zright = rv.ppf(1 - alpha)
    power = 1 - norm(loc = 10, scale = 10).cdf(zright)
    beta = 1 - power
    print("power = {:.2f}, beta = {:.2f}".format(power,beta))

运行结果:

power = 0.26, beta = 0.74

本文原文来自CSDN

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号