统计学中的中心极限定理与假设检验
立即解锁
发布时间: 2025-09-08 01:17:50 阅读量: 12 订阅数: 19 AIGC 


统计方法在机器学习中的应用
# 统计学中的中心极限定理与假设检验
## 1. 中心极限定理:以掷骰子为例
中心极限定理是统计学和概率论中的重要支柱,它描述了样本均值分布的形状为高斯分布(正态分布)。我们可以通过掷骰子的实际例子使这个定理更加具体。
### 1.1 模拟单次掷骰子
一个标准的骰子是一个正方体,每个面分别标有 1 到 6 的数字,每次掷骰子每个数字出现的概率都是 1/6,因此掷骰子出现数字的分布是均匀的。我们可以使用 NumPy 中的 `randint()` 函数来生成指定数量的 1 到 6 之间的随机骰子点数。以下是模拟 50 次掷骰子的代码:
```python
from numpy.random import seed
from numpy.random import randint
from numpy import mean
# 随机数生成器种子
seed(1)
# 生成 50 次掷骰子的样本
rolls = randint(1, 7, 50)
print(rolls)
print(mean(rolls))
```
运行上述代码,会生成并打印 50 次掷骰子的样本以及样本的均值。我们知道,骰子点数分布的理论均值是 (1 + 2 + 3 + 4 + 5 + 6) / 6 = 3.5,但样本的均值可能会与此略有偏差,这是因为样本均值只是总体均值的一个估计。例如,某次运行结果如下:
```plaintext
[6 4 5 1 2 4 6 1 1 2 5 6 5 2 3 5 6 3 5 4 5 3 5 6 3 5 2 2 1 6 2 2 6 2 2 1 5
2 1 1 6 4 3 2 1 4 6 2 2 4]
3.44
```
### 1.2 多次模拟掷骰子
我们可以将上述 50 次掷骰子的过程重复多次,例如 1000 次,这样就会得到 1000 个样本均值。根据中心极限定理,这些样本均值的分布将趋近于高斯分布。以下是实现该实验并绘制样本均值分布直方图的代码:
```python
from numpy.random import seed
from numpy.random import randint
from numpy import mean
from matplotlib import pyplot
# 随机数生成器种子
seed(1)
# 计算 1000 次 50 次掷骰子的均值
means = [mean(randint(1, 7, 50)) for _ in range(1000)]
# 绘制样本均值的分布直方图
pyplot.hist(means)
pyplot.show()
```
运行上述代码,会创建一个样本均值的直方图。从分布的形状可以看出,它近似于高斯分布。同时,我们可以观察到在 1000 次 50 次掷骰子的试验中样本均值的误差情况。此外,中心极限定理还表明,随着每个样本的大小(这里是 50)增加,样本均值将更好地近似于高斯分布。
## 2. 中心极限定理对机器学习的影响
中心极限定理在应用机器学习中具有重要意义。虽然它为线性算法(如线性回归)的解决方案提供了理论支持,但对于像人工神经网络这类使用数值优化方法求解的复杂方法,我们需要通过实验来观察和记录算法的行为,并使用统计方法来解释结果。下面介绍两个重要的应用场景。
### 2.1 显著性检验
在比较一个模型与另一个模型的性能时,我们需要使用统计显著性检验等工具。这些工具用于估计两个模型技能得分样本是否来自相同或不同的潜在分布。如果看起来样本来自同一总体,那么就认为两个模型的技能没有差异,任何实际的差异都可能是由于统计噪声引起的。这种进行推断的能力得益于中心极限定理以及我们对高斯分布的了解,即两个样本均值属于同一高斯分布样本均值的可能性。
### 2.2 置信区间
当我们训练好一个最终模型后,可能希望推断该模型在实际应用中的性能。这种不确定性的表示称为置信区间。我们可以对模型的准确性进行多次独立(或接近独立)的评估,得到一组候选技能估计值。这些技能估计值的均值将是模型在该问题上真实潜在技能的一个估计(带有误差)。根据中心极限定理,样本均值将是高斯分布的一部分,我们可以利用高斯分布的知识,根据样本大小估计样本均值的可能性,并计算围绕模型技能的所需置信区间。
### 2.3 扩展思路
- 建议在应用机器学习中另外两个可能与中心极限定理相关的领域。
- 实现一个利用中心极限定理和从均匀分布中抽取的数字生成随机高斯数的函数。
- 更新掷骰子的演示,以展示样本大小与样本均值高斯分布保真度之间的关系。
## 3. 统
0
0
复制全文
相关推荐










