统计推断——假设检验中 p 值的含义具体是什么?

article/2025/10/14 5:05:27

「假设检验」,顾名思义,就是通过概率统计的知识来判断一个命题(如「抛掷一枚硬币出现正反面的概率是均匀的」,如「\beta值大于0.75」)的真伪性。

这个命题便称作「零假设,null hypothesis」,我们通常可以将该命题用数学语言表达出来,比如:「抛掷一枚硬币出现正反面的概率是均匀的」可以定义为「硬币出现正面的概率\theta1/2,即\theta=1/2。」这个命题在统计学中通常用H_{0}来表示,所以我们需要检验的假设写成:
H_{0}\theta=1/2

然后问题就来了,在什么情况下,我们认为\theta=1/2这个假设是不正确的呢?我们需要给出一个判断条件,这个判断条件通常有三种给出方式:

1. \theta1/2大很多;
2. \theta1/2小很多;
3. \theta1/2大很多或小很多。

在统计学上,我们将这个判断条件称为「对立假设,alternative hypothesis」,通常用H_{1}来表示,以上三种情况可以分别写为:

1. H_{1}\theta>1/2;-----------单侧
2. H_{1}\theta<1/2;-----------单侧
3. H_{1}\theta\neq 1/2。-----------双侧

前两种对立假设下的检验被称为单侧检验,而第三种对立假设下的检验被称为双侧检验。

然而,「对立假设」的条件仍不是很明确,以第一种对立假设H_{1}\theta>1/2为例,究竟\theta偏离1/2多远,我们才认为零假设H_{0}\theta=1/2不成立,而对立假设成立呢?我们下一步要做的,就是要量化这个评判标准。很明显,我们的标准越严格,我们越有可能拒绝H_{0}而接受H_{1},在这一过程中,我们可能会犯两种错误:

第1类错误: H_{0}是真的,但是由于我们标准过于严格,把他拒绝掉了;
第2类错误: H_{0}是假的,但是由于我们标准过于宽松,没有把它拒绝掉;

这两类错误在医学上概括为「假阳性」错误和「假阴性」错误。

H_{0}:该患者无病。

H_{1}:该患者异常。

假阳性」例如把没病说成有病,把无效说成有效。

假阴性」例如把有病说成没病,把有效说成无效。

虽然我们永远不会知道我们假设检验是否犯了错误,但幸运的是,我们可以知道我们犯这两类错误的概率。在制定评判标准的时候,我们要在犯两类错误的概率之间有所权衡。

我们将犯第1类错误的概率,即「拒绝了一个真的假设」的概率称为「显著性水平,significance level」,通常用字母\alpha表示,即:

本来【该患者是没病的】,但检验之后我们认为【该患者是有病的】;显著性水平即为「被告」H_{0}被误诊的概率。通常情况下,我们不希望被误诊,所以我们会在进行假设检验之前,取定一个\alpha的值,而且这个值通常比较小。

在一定的\alpha的值的情况下,我们去考察犯第2类错误的概率,即「接受了一个假的假设」的概率,通常用字母\beta表示,

显然,我们希望这个概率越小越好,因为这个概率越小,我们的检验能力越厉害。我们用「检验的功效」来刻画我们检验的厉害程度,用\pi来表示:

也就是,在尽量不将【实际无病患者说成有病患者】(第一类错误越小)的情况下,我们越能找出【实际有病却说成无病的患者】,我们这个假设检验的势就越大。即控制两个错误出现的概率(\large \alpha\large \beta)都尽量小,但是在实际操作中,给定的\large \alpha小,则\large \beta就大,反之亦然。

P值的意义

之前说到,当我们进行一个假设检验之前,通常要先选定一个显著性水平,也就是你所能接受的假阳性(无病说有病)的概率。然而,每位医生在这一点上是有分歧的,有的人希望\large \alpha大一点儿,有的人希望\large \alpha小一点儿。(\large \alpha越大,意味着检验越严格,我们将无病患者说有病的概率就越大)

在这种情况下,我们就期望回答一个问题:对于面前的这个患者(假设其无病),我们拿到了他的数据,计算其不会误诊(无病说有病)他的最严格的检验水平(\large P),即最大的\large \alpha是多少?得到了这个问题的答案,我们就可以轻松完成在任意严格程度上的检验了,如果某位医生所希望的\large \alpha(实现确定的显著性水平)大于这个值(\large P),那么我们就认为患者存在异常,反之亦可。

如果 \large P\leq \alpha,,表明“不大可能”犯假阳性错误 (无病说有病),即推翻零假设。

如果 \large P> \alpha,,表明“颇有可能”犯假阳性错误 (无病说有病),推翻零假设的风险太大,保持原假设。

而这个最大的\large \alpha,就是我们的\large P值,即

所概括的:

假设检验正确(零假设成立)的情况下,得到当前情况乃至更差情况的概率。

【通俗理解】:

在零假设成立的条件(模型)下,当前情况及更差情况发生的概率(\large P)较大,大于我们可以允许的抽样误差范围(显著性水平\large \alpha),说明在当前假设下,仍有较大可能发生此情况,则保留原假设,拒绝备择假设。

当前情况及更差情况发生的概率(\large P)较小,远小于我们可以允许的抽样误差范围(显著性水平\large \alpha),说明当前假设下,不大可能发生此情况,则拒绝原假设。

对于一枚均匀的硬币来说,
投掷20次,得到18次正面是当前情况,
投掷20次,得到18次反面对于硬币的均匀性来说,是同样「差」的情况,
而投掷20次,出现19次正面、出现20次正面,出现19次反面,出现20次正面,对于硬币的均匀性来说,都是比当前情况「更差」的情况。
所以,\large P值就是将一枚均匀的硬币投掷20次,出现以下情况的概率:

18次正面,19次正面,20次正面,18次反面,19次反面,20次反面

注意,这是在「双侧检验」的前提下得到的结论,即我们的「对立假设」为通常意义下的「硬币不均匀」,即出现太多的正面与太多的反面是同样不好的情况。

如果我们换一个「对立假设」,采用「单侧检验」的方式,即允许均匀硬币出现更多的反面,即「硬币不均匀」是指「投掷硬币出现了异常多的正面」。「对立假设」意味着,即使我们投掷一枚硬币一亿次都是反面,我们仍旧认为它是「均匀的」。此时,\large P值就是将一枚均匀的硬币投掷20次,出现以下情况的概率:

18次正面,19次正面,20次正面

接下来我们通过代码来验证上面的理论。

假设我们投掷一枚硬币20次,结果得到18次正面和2次反面,基于这个结果,我们怀疑这个硬币质地不均匀,落地时正面朝上的可能性更大。

基于以上命题,可以进行验证,我们验证的思路是这样的:我们计算出当质地均匀时,出现这种情况的概率,根据小概率事件的原理,如果我们硬币质地均匀,我们抽到此种情况(18次正面,2次反面)的概率很低,那么我们认为这种情况(18次正面,2次反面)在质地均匀的条件下是很难发生的,我们就有理由认为硬币是不均匀的。

import collections
#模拟每组20次的投掷硬币结果,0表示正面,1表示反面
def RunModel(n): #n为样本单组投掷的次数sample=np.random.choice(2,n)counter=collections.Counter(sample)data=counter[0],counter[1]return data#计算每组投掷结果正面和反面差值的绝对值
def testStatistic(data):heads,tails=datadi=abs(heads-tails)return di#模拟1000组的结果
a=[testStatistic(RunModel(20)) for _ in range(1000)]
sorted(a,reverse=True) #对正反面差值出现的次数进行降序处理

输出:

 计算比当前情况(18次正面和2次反面)乃至更差情况出现的次数,及出现的概率。

b=sum(1 for x in a if x>=18-2) #计算比当前情况乃至更差情况出现的次数
b/1000

输出:

2
0.002

在质地均匀硬币的1000次试验当中,仅有两次出现了比当前情况更极端的现象,出现的概率为0.002,概率极低,我们认为在质地均匀的条件下发生此情况的可能性极低,我们更倾向去相信硬币是不均匀的。

 

 


http://chatgpt.dhexx.cn/article/SJYZd5r1.shtml

相关文章

统计——假设检验与p值

假设检验&#xff0c;是基于给定的样本对假设做出判定&#xff0c;分为参数假设检验&#xff08;假设可以用一个参数的集合表示&#xff09;和非参数假设检验&#xff08;比如&#xff1a;假设总体服从某种分布&#xff09;。 假设检验的步骤&#xff1a; 1、建立假设&#xff…

STM32———高级定时器的死区时间计算方法

STM32———高级定时器的死区时间计算方法 1.定时器的时钟分频因子和预分频系数的区别&#xff1a; 1.1 时钟分频因子(Clock division),决定定时器的工作时钟频率. tDTSfDTS ; tCK_INTfCK_INT 1.2 预分频系数决定计数器的工作时钟的&#xff0c;配合自动重装载值Period完成…

暂时性死区以及函数作用域

暂时性死区 暂时性死区也就是变量声明到声明完成的区块&#xff0c;这个区块是一个封闭的作用域&#xff0c;直到声明完成。 如果在变量声明之前使用该变量&#xff0c;那么该变量是不可用的&#xff0c;也就被称为暂时性死区。 var 没有暂时性死区&#xff0c;因为var存在变…

STM32-互补输出带死区和刹车断路笔记

互补输出带死区控制 比如说&#xff0c;高级控制定时器&#xff08;TIM1 和 TIM8&#xff09;可以输出两路互补信号&#xff0c;并管理输出的关断与接通瞬间。这段时间通常称为死区&#xff0c;由于硬件设备的延迟和一些设备转换的用时&#xff0c;这时候进行操作可能会导致比…

es6中的暂存性死区

暂存性死区 暂存性死区是相对于某一个变量来说的&#xff0c;就是在定义该变量之前的区域就是暂存性死区 const i 1{//死区开始console.log(i) //死区里边拿不到外边的i&#xff0c;也拿不到本代码块内的i//死区结束const i 2 console.log(i) //直到这里才能正常使用 i }来看…

STM32实战-高级定时器带死区的互补PWM输出

前言&#xff1a; 平时我们设计点击驱动电路时&#xff0c;一般会采用npn和pnp三极管&#xff0c;来控制电机的导通和关闭&#xff0c;但是三级管内部自带电容&#xff0c;断电后不会立马断掉&#xff0c;会经过很小的一段时间才会放电完毕&#xff0c;这时候要留有死区给电容…

暂时性死区(TDZ)

常见js面试题之一&#xff1a; 提示&#xff1a;又是一道常见的前端面试题&#xff0c;什么是暂时性死区&#xff1f; 问题描述&#xff1a; console.log(a);var a 1; 日志输出&#xff1a;undefined console.log(a);let a 1; 下面我们可以看到这里的日志输出出现了报错&am…

PWM死区(Dead Zone)的作用和意义

PWM输出时的Dead Zone(死区)作用是在电平翻转时插入一个时间间隔&#xff0c;避免关闭前一个设备和打开后一个设备时因为开关速度的问题出现同时开启状态而增加负荷的情况(在没有彻底关闭前打开了后一个设备)&#xff0c;尤其是电流过大时容易造成短路等损坏设备&#xff0c;如…

死区时间和消隐时间

1 死区时间 PWM是脉冲宽度调制&#xff0c;常用到整流和逆变&#xff0c;这就需要用到整流桥和逆变桥。对于三相电&#xff0c;需要三个桥臂。以高低电平为例&#xff0c;每个桥臂上有两个电子器件&#xff0c;比如IGBT&#xff0c;大致如下图所示&#xff1a; 这两个IGBT不能同…

stm32关于带死区时间的互补PWM输出

1.互补PWM输出简介 在使用stm32输出PWM波形时,笔者所用的stm32f103zet6中的高级定时器TIM1和TIM8可以输出互补的PWM波形,使用互补的PWM波常见与一些半桥电路和全桥电路控制中,使用MCU自带的高级时钟可以简便的解决互补PWM输出问题。 笔者在控制半桥电路中应用了MCU自带的TIM1时…

PWM互补输出,以及死区时间计算

本文基于野火例程进行解说 实验内容 本次实验输出一对互补的pwm波&#xff0c;且进行死区时间的计算说明。 代码 互补输出对应的定时器初始化代码&#xff1a; bsp_advance_tim.c /********************************************************************************* fi…

死区补偿---学习笔记

最近调试中发现&#xff0c;死区补偿对电流谐波和电流带宽影响挺大&#xff0c;于是对死区补偿产生浓厚兴趣&#xff0c;找来几篇文章粗读并做一下笔记。 传统做法 无非就是根据电流方向补偿&#xff0c;假如svpwm计算出的A相理论导通实践为T1&#xff0c;死区时间是Td&#…

什么是PWM“死区”?

关注、星标公众号&#xff0c;不错过精彩内容 来源&#xff1a;传感器与检测技术 编辑整理&#xff1a;strongerHuang PWM是脉宽调制&#xff0c;在电力电子中&#xff0c;最常用的就是整流和逆变。这就需要用到整流桥和逆变桥。对三相电来说&#xff0c;就需要三个桥臂。以两电…

死区时间的分析与设置

出现死区的主要原因是因为MOS管的源极和栅极之间的结电容。现在在栅极加上一个门电路。当门电路输出的信号跳变的瞬间&#xff0c;电流是非常大的&#xff0c;会导致MOS管发热&#xff0c;所以需要在门电路后面再串联一个电阻&#xff0c;这个电阻很小&#xff0c;一般在10Ω左…

什么是暂时性死区(TDZ)?

常见js面试题之一&#xff1a; 提示&#xff1a;又是一道常见的前端面试题&#xff0c;什么是暂时性死区&#xff1f; 问题描述&#xff1a; console.log(a);var a 1;日志输出&#xff1a;undefined console.log(a);let a 1;下面我们可以看到这里的日志输出出现了报错&#…

2021-02-04

一、死区初认识&#xff1a; 死区又称不作用区&#xff0c;是指控制系统的传递函数中对应输出为零的输入信号范围。 也就是说&#xff0c;输入信号在这个范围内&#xff0c;输出始终为零。输入没法影响输出&#xff0c;没法发挥作用&#xff0c;所以叫不作用区&#xff0c;或者…

死区4个状态分析,以及死区时间计算

死区时间的作用主要在于两点&#xff1a; 1)通过上下开关的时间差防止了 H 桥直通问题。 2)为开关两端的缓冲电容提供一个充放电时间&#xff0c;来实现开关的零电压开通(ZVS)以降低传输功率过程中的损耗&#xff0c;提高传输效率。 现在注重死区分析的很大一部分原因是现在…

扇入和扇出系数

扇出系数是门电路输出低电平时允许带同类门电路的个数。&#xff08;输出电流能驱动负载数目&#xff09;扇入系数是指门电路允许的输入端数目。&#xff08;最大能承受电流条件下&#xff0c;能允许的输入负载数目&#xff09;

镂空数学符号空心体数学符号

https://www.zhihu.com/question/297453597 word 或 WPS里&#xff0c;插入 -> 符号 -> 其他符号&#xff0c;在字体里选择 Cambria Math&#xff0c;然后下拉到中部可以看到&#xff1a;