关于Weak Law of Large Numbers与Strong Law of Large Numbers强度对比及Convergence in Probability与Convergence in Distribution模拟演示的技术问询
关于Weak Law of Large Numbers与Strong Law of Large Numbers强度对比及Convergence in Probability与Convergence in Distribution模拟演示的技术问询
嗨,我来帮你梳理下这两个问题的思路和可行的模拟方案,咱们一步一步来拆解~
一、强弱大数定律(SLLN vs WLLN)的对比模拟
首先得明确两者的核心差异:
- 弱大数定律(WLLN):说的是样本均值依概率收敛到总体均值——简单讲,随着样本量增大,样本均值偏离总体均值的概率会越来越小,但不排除偶尔出现大偏离的可能。
- 强大数定律(SLLN):是更强的结论,样本均值几乎必然收敛到总体均值——意味着样本均值最终会“永远”稳定在总体均值附近的小范围内,不会再出现大幅跳变。
所以SLLN是WLLN的充分条件,但反过来不成立:满足SLLN的序列一定满足WLLN,但存在满足WLLN却不满足SLLN的序列。我们可以通过模拟这两类序列的收敛表现,直观对比二者的强度。
模拟代码与结果解释
下面的R代码同时模拟两种情况:
- 满足SLLN的序列:独立同分布的标准正态样本均值(你的原代码就是这类情况)
- 满足WLLN但不满足SLLN的序列:构造一个会偶尔出现大幅跳变的随机变量序列,它的样本均值从概率上趋近于0,但永远不会稳定下来
set.seed(123) n_max <- 1000 # ---------------------- SLLN情况:标准正态样本均值 ---------------------- slln_means <- numeric(n_max) for (i in 1:n_max) { x <- rnorm(i, mean = 0, sd = 1) slln_means[i] <- mean(x) } # ---------------------- WLLN但不SLLN的情况:构造特殊序列 ---------------------- wlln_means <- numeric(n_max) current_sum <- 0 for (i in 2:n_max) { # 生成X_i:以1/(i*log(i))的概率取±i,其余概率取0 prob_non_zero <- 1/(i * log(i)) x_i <- if (runif(1) < prob_non_zero) sample(c(i, -i), 1) else 0 current_sum <- current_sum + x_i wlln_means[i] <- current_sum / i } wlln_means[1] <- 0 # 处理i=1的边界情况 # ---------------------- 画图对比 ---------------------- plot(slln_means, type = "l", col = "blue", lwd = 2, main = "SLLN vs WLLN: Convergence of Sample Means", xlab = "Sample Size", ylab = "Sample Mean", ylim = c(-2, 2)) lines(wlln_means, type = "l", col = "red", lwd = 2, lty = 2) abline(h = 0, col = "black", lty = 3) legend("topright", legend = c("SLLN (Normal Samples)", "WLLN only (Non-SLLN Sequence)"), col = c("blue", "red"), lty = c(1, 2), lwd = 2)
结果解读:
- 蓝色实线(SLLN):样本均值会快速靠近0,并且随着样本量增大稳定在0附近,不会再出现大幅波动。
- 红色虚线(仅WLLN):虽然整体上样本均值的分布会趋近于0,但会时不时出现大幅跳变(因为序列中偶尔会出现±i的极端值),永远无法稳定下来——这就是SLLN比WLLN更强的直观体现。
二、依概率收敛(CP)vs 依分布收敛(CD)的对比模拟
同样先明确核心差异:
- 依概率收敛(CP):要求随机变量序列本身“越来越接近”目标(可以是常数或随机变量),即随着n增大,随机变量与目标的差异超过任意小阈值的概率趋近于0。
- 依分布收敛(CD):是更弱的概念,只要求随机变量的分布函数收敛到目标的分布函数(在连续点),不要求随机变量本身趋近于目标。
CP可以推出CD,但CD不能推出CP。我们可以构造一个满足CD但不满足CP的序列,和CP序列对比,直观展示二者的区别。
模拟代码与结果解释
下面的R代码模拟两种情况:
- 依概率收敛到X的序列:X加上一个随n增大而趋近于0的随机扰动
- 依分布收敛到X但不依概率收敛到X的序列:在X和-X之间交替取值,分布始终和X一致,但永远不会趋近于X
set.seed(456) n_max <- 500 X <- rnorm(1) # 固定一个标准正态随机变量X # ---------------------- 依概率收敛到X的序列 ---------------------- cp_seq <- numeric(n_max) for (i in 1:n_max) { Z_i <- rnorm(1) cp_seq[i] <- X + Z_i / i # 扰动项随n增大趋近于0 } # ---------------------- 依分布收敛到X但不依概率收敛的序列 ---------------------- cd_seq <- numeric(n_max) for (i in 1:n_max) { cd_seq[i] <- if (i %% 2 == 1) X else -X # 交替取X和-X } # ---------------------- 画图对比 ---------------------- plot(cp_seq, type = "l", col = "blue", lwd = 2, main = "Convergence in Probability vs Convergence in Distribution", xlab = "n", ylab = "Value of Sequence", ylim = c(-3, 3)) lines(cd_seq, type = "l", col = "red", lwd = 2, lty = 2) abline(h = X, col = "black", lty = 3) legend("topright", legend = c("Convergence in Probability to X", "Convergence in Distribution to X (not CP)"), col = c("blue", "red"), lty = c(1, 2), lwd = 2)
结果解读:
- 蓝色实线(CP):序列会逐渐靠近X的固定值,最终稳定在X附近,符合“随机变量本身趋近目标”的要求。
- 红色虚线(仅CD):序列一直在X和-X之间跳变,永远不会靠近X,但它的分布始终和X一致(都是标准正态),所以满足依分布收敛到X,但完全不满足依概率收敛——这清晰展示了CP比CD更强的特性。
备注:内容来源于stack exchange,提问作者stats_noob
相关产品推荐
相关产品推荐

