当前位置: 首页 > article >正文

ML 系列:第 41节 - 假设检验简介

假设检验的基本原理及其在机器学习中的重要性

一、说明

   在我们这个数据驱动的世界里,决策通常基于数据。假设检验在这个过程中起着至关重要的作用,无论是在商业决策、医疗保健领域、学术界还是质量改进的背景下。如果没有明确的假设和严格的假设检验,就有可能得出错误的结论并做出次优的决策。

   在这篇博文中,我们将探讨假设检验的关键概念,包括零假设(H0)、备择假设(H1)、重要性水平(α)、p 值、错误类型,并提供使用 Python 的实际示例。我们还将涉及不同类型的假设检验,为后续教程中更详细的讨论奠定基础。

二、假设检验的关键概念

2.1 H0和H1检验

  •    零假设 (H0):
    零假设是默认假设,即没有影响或没有差异。它代表现状或没有变化的陈述。例如,在测试一种新药时,零假设可能表明该药物与安慰剂相比没有效果。

  •    备择假设 (H1):
    备择假设是与零假设相矛盾的陈述。它代表研究人员想要证明的效果或差异。继续以药物为例,备择假设会指出该药物与安慰剂相比具有显著效果。

  •    显著性水平 (α):
    显著性水平是确定在零假设下观察到的数据是否足够不可能的阈值。它是当零假设实际上为真时拒绝零假设的概率(I 类错误)。α 的常见选择是 0.05,表示假阳性风险为 5%。

  •    P 值:
    假设零假设成立,p 值是获得至少与观察到的一样极端的检验统计量的概率。小于 α 的 p 值提供了反对零假设的有力证据。例如,如果 p 值为 0.03 且 α 为 0.05,我们将拒绝零假设。

2.2 假设检验中的错误类型

  1.    类型 I 错误(假阳性):
    当零假设实际上为真时,却拒绝了它。重要性水平 α 表示犯类型 I 错误的概率。

  2.    类型 II 错误(假阴性):
    当零假设实际上为假时,却没有拒绝它。犯类型 II 错误的概率用 β 表示,检验的功效(1 — β)表示正确拒绝错误零假设的概率。
    假设检验公式
    假设检验的一般公式涉及计算检验统计量,然后可以将其与临界值进行比较或用于查找 p 值。检验统计量的公式取决于所执行的检验类型。例如,双样本 t 检验中 t 检验统计量的公式为:

在这里插入图片描述

在这里:
在这里插入图片描述

让我们用一个例子来说明这一点:

2.3 示例:测试新药

假设我们想测试一种新药是否比安慰剂更有效。我们从两组收集数据:一组使用新药治疗,一组使用安慰剂治疗。

零假设(H0):新药没有效果(平均差异 = 0)。
备择假设(H1):新药有效果(平均差异≠0)。
显著性水平(α):0.05。
样本数据:

药物组(n1 = 10):平均值 = 85,标准差 = 5。
安慰剂组(n2 = 10):平均值 = 80,标准差 = 5。
使用 t 检验公式:
在这里插入图片描述

现在我们可以将这个 t 值与 t 分布表中的临界值进行比较,或者计算 p 值。

三、使用 Python 进行假设检验计算

让我们通过一个使用 Python 进行假设检验的实际例子来看一下。

3.1 例子:

假设我们想测试一种新的教学方法是否比传统方法更有效。我们收集两组学生的考试成绩:一组使用传统方法,另一组使用新方法。

import numpy as np 
from scipy import stats 

# 样本数据
traditional_scores = [ 78 , 82 , 85 , 88 , 90 , 79 , 83 , 85 , 87 , 92 ] 
new_method_scores = [ 85 , 87 , 90 , 91 , 93 , 88 , 89 , 90 , 92 , 95 ] 

# 进行独立 t 检验
t_statistic, p_value = stats.ttest_ind(new_method_scores, traditional_scores) #

显著性水平
alpha = 0.05 

print ( f"T-statistic: {t_statistic} " ) 
print ( f"P-value: {p_value} " ) 

if p_value < alpha: 
    print ( "拒绝原假设。新的教学方法显著更有效。" ) 
else : 
    print ( "无法拒绝原假设,教学方法之间没有显著差异。" )

输出:

T 统计量:2.9839815788878217
P 值:0.007957697008687667

拒绝零假设。新的教学方法明显更有效。

在这个例子中,p值(0.004)小于显著性水平(0.05),所以我们拒绝原假设,并得出结论:新的教学方法显著更有效。

3.2 假设检验的类型

根据数据的性质和测试的目的,假设检验大致可分为不同类型。一些常见类型包括:

  1. 单样本 T 检验:检验单个样本的平均值是否与已知值不同。
  2. 双样本 T 检验:比较两个独立样本的平均值。
  3. 配对 T 检验:比较同一组在不同时间的平均值。
  4. 卡方检验:检验分类变量之间的关联。
  5. ANOVA(方差分析):比较三个或更多组之间的平均值。

在我们的下一个教程中,我们将深入研究这些类型的假设检验,解释它们的用例、假设以及使用 Python 的实际实现。

四、结论

假设检验是分析数据和做出明智决策的重要工具。通过了解零假设、备择假设、显著性水平、p 值和错误类型,您可以执行稳健的统计分析。Python 拥有丰富的库,可以轻松执行这些测试并从数据中得出有意义的结论。请继续关注我们的下一个教程,我们将在其中详细探讨不同类型的假设检验。


http://www.kler.cn/a/446191.html

相关文章:

  • go-zero负载均衡实现原理
  • 金碟中间件-AAS-V10.0安装
  • 二八(vue2-04)、scoped、data函数、父子通信、props校验、非父子通信(EventBus、provideinject)、v-model进阶
  • Elasticsearch-DSL高级查询操作
  • 【笔记】深度学习模型评估指标
  • git使用和gitlab部署
  • html+css网页设计 旅游 移动端 雪花旅行社4个页面
  • 数据库基础-索引
  • Windows11 家庭版安装配置 Docker
  • 11_HTML5 拖放 --[HTML5 API 学习之旅]
  • 51c大模型~合集93
  • 电子电气架构---基于PREEvision的线束设计工作流程优化
  • .net core在linux导出excel,System.Drawing.Common is not supported on this platform
  • HTML、CSS页面资料库
  • 如何写一个转盘
  • 用C#绘制曼德布洛集分形
  • vue项目 中 asstes文件夹 与 static文件夹 的联系与区别
  • React 底部加载组件(基于antd)
  • String.prototype.padStart() 方法来实现日不足两位时补充零
  • 算法基础——递归
  • 最新 neo4j 5.26版本下载安装配置步骤【附安装包】
  • 梳理你的思路(从OOP到架构设计)_介绍GoF设计模式
  • 伪逆不能把矩阵变成单位阵
  • 【AI系列】Paddle Speech安装指南
  • Django REST framework(DRF)在处理不同请求方法时的完整流程
  • C#中的ConcurrentDictionary:线程安全实现与高效并发访问