非参数Bootstrap方法

  • 设总体的分布FFF未知,但按放回抽样的方法抽取了一个容量为nnn的样本,称为Bootstrap样本或称为自助样本。独立地取多个Bootstrap样本,利用这些样本信息对总体FFF进行推断,这种方法称为非参数Bootstrap方法,又称为自助法。这一方法可用于对总体知之甚少地情况
  • 优点:不需要对总体分布有任何假设,而且可以使用于小样本,且能用于各种统计量。

估计量的标准误差的Bootstrap估计

  • 在估计总体位置参数θ\thetaθ时,不仅要给出θ\thetaθ的估计θ^\hat\thetaθ^,还需要这一估计的标准误差,常用σθ^=D(θ^)\sigma_{\hat{\theta}}=\sqrt{D(\hat\theta)}σθ^=D(θ^) 度量。

步骤

  1. 相继、独立地从已知的容量为nnn的样本中抽出B(B≥1000)B(B\ge1000)B(B1000)个容量为nnn的Bootstrap样本

x1∗i,x2∗i,...,xn∗i,i=1,2,...,Bx_1^{*i},x_2^{*i},...,x_n^{*i},i=1,2,...,Bx1i,x2i,...,xni,i=1,2,...,B

  1. 计算

σ^θ^=1B−1∑i=1B(θ^i∗−θˉ∗)2\hat\sigma_{\hat\theta}=\sqrt{\frac{1}{B-1}\sum_{i=1}^B{(\hat\theta_i^*}-\bar\theta^*)^2}σ^θ^=B11i=1B(θ^iθˉ)2
式中: θ^i∗=θ^(x1∗i,x2∗i,...,xn∗i),i=1,2,...,Bθˉ∗=1B∑i=1Bθ^i∗\hat\theta_i^*=\hat\theta (x_1^{*i},x_2^{*i},...,x_n^{*i}),i=1,2,...,B \quad \bar\theta^*=\frac{1}{B}\sum_{i=1}^B{\hat\theta_i^*}θ^i=θ^(x1i,x2i,...,xni),i=1,2,...,Bθˉ=B1i=1Bθ^i

估计量的均方误差的Bootstrap估计

例1

  • 有30窝仔猪出生时各窝猪的存活只数为

9 8 10 12 11 12 7 9 11 8 9 7 7 8 9 7 9 9 10 9 9 9 12 10 10 9 13 11 13 9
(1)试求中位数估计MMM的标准误差的Bootstrap估计。
(2)求均方误差MSE=E[(M−θ)2]MSE=E[(M-\theta)^2]MSE=E[(Mθ)2]的估计。

data=[9  8  10  12  11  12  7  9  11  8  9  7  7  8  9  7  9  9  10  9  9  9  12  10  10  9  13  11  13  9];
b=bootstrp(1000,@(x)quantile(x,0.5),data);%1000组样本,@(x)quantile(x,0.5)求中位数的函数,data原始数据
b_std=std(b);%计算b的标准差
b_var=mean((b-quantile(data,0.5)).^2);%求均方误差


b1=bootstrp(1000,@mean,data);%平均数
b1_mean=std(b1);

Bootstrap置信区间

  • X=(X1,X2,....,Xn)X=(X_1,X_2,....,X_n)X=(X1,X2,....,Xn)是来自总体FFF容量为nnn的样本,x=(x1,x2,...,xn)x=(x_1,x_2,...,x_n)x=(x1,x2,...,xn)是一个已知的样本值。FFF中含有位置参数θ\thetaθθ^=θ^(X1,X2,...,Xn)\hat\theta=\hat\theta (X_1,X_2,...,X_n)θ^=θ^(X1,X2,...,Xn)θ\thetaθ的估计量。现在求θ\thetaθ的置信水平为1−α1-\alpha1α的置信区间。

步骤及原理

  1. 独立从样本xxx中抽出BBB个容量为nnn的Bootstrap样本,对于每个Bootstrap样本求出θ\thetaθ的Bootstrap估计:θ^1∗,θ^2∗,...,θ^B∗\hat\theta_1^*,\hat\theta_2^*,...,\hat\theta_B^*θ^1,θ^2,...,θ^B
  2. 将估计从小到大排序:θ^(1)∗,θ^(2)∗,...,θ^(B)∗\hat\theta_{(1)}^*,\hat\theta_{(2)}^*,...,\hat\theta_{(B)}^*θ^(1),θ^(2),...,θ^(B)
  3. 求出近似分位数θ^α/2∗,θ^1−α/2∗\hat\theta_{\alpha/2}^*,\hat\theta_{1-\alpha/2}^*θ^α/2,θ^1α/2使得
    P{θ^α/2∗<θ^∗<θ^1−α/2∗}=1−αP\{\hat\theta_{\alpha/2}^*<\hat\theta^*<\hat\theta_{1-\alpha/2}^*\}=1-\alphaP{θ^α/2<θ^<θ^1α/2}=1α
    于是近似的有
    P{θ^α/2∗<θ^<θ^1−α/2∗}=1−αP\{\hat\theta_{\alpha/2}^*<\hat\theta<\hat\theta_{1-\alpha/2}^*\}=1-\alphaP{θ^α/2<θ^<θ^1α/2}=1α
  4. k1=[B×α2],k2=[B×(1−α2)]k_1=[B\times \frac{\alpha}{2}],k_2=[B\times(1-\frac{\alpha}{2})]k1=[B×2α],k2=[B×(12α)],以θ^(k1)∗\hat\theta_{(k_1)}^*θ^(k1)θ^(k2)∗\hat\theta_{(k_2)}^*θ^(k2)分别作为分位数θ^α/2∗,θ^1−α/2∗\hat\theta_{\alpha/2}^*,\hat\theta_{1-\alpha/2}^*θ^α/2,θ^1α/2的估计,得到近似等式
    P{θ^(k1)∗<θ^<θ^(k2)∗}=1−αP\{\hat\theta_{(k_1)}^*<\hat\theta<\hat\theta_{(k_2)}^*\}=1-\alphaP{θ^(k1)<θ^<θ^(k2)}=1α
    得到θ\thetaθ的置信水平为1−α1-\alpha1α的Bootstrap置信区间为(θ^(k1)∗,θ^(k1)∗)(\hat\theta_{(k_1)}^*,\hat\theta_{(k_1)}^*)(θ^(k1),θ^(k1)),这种方法称为分位数法。

续例1

  • 以样本均值xˉ\bar xxˉ作为总体均值μ\muμ的估计,以标准差sss作为总体标准差σ\sigmaσ的估计,按分位数法求μ,σ\mu,\sigmaμσ的置信水平为0.90的Bootstrap置信区间。
b=bootci(1000,{@(x)[mean(x),std(x)],data},'alpha',0.1)%bootci得到Bootstrap置信区间

结果:第一列是均值的置信区间,第二列是标准差的置信区间
b =
    9.0667    1.4368
   10.0667    2.0609

参数Bootstrap方法

  • 假设所研究的总体的分布函数F=(x;β)F=(x;\beta)F=(x;β)的形式已知,但其中高喊未知参数β\betaβ。现在已知有一个来自总体的样本X1,X2,...,XnX_1,X_2,...,X_nX1,X2,...,Xn

步骤

  1. 由该样本得到β\betaβ的极大似然估计β^\hat\betaβ^
  2. 在总体分布为F(x;β^)F(x;\hat\beta)F(x;β^)中产生B(B≥1000)B(B\ge1000)B(B1000)个容量为nnn的样本
    X1∗,X2∗,...,Xn∗∼F(x;β^)X_1^*,X_2^*,...,X_n^*\sim F(x;\hat\beta)X1,X2,...,XnF(x;β^)
  3. 用非参数Bootstrap置信区间的方法得到β\betaβ的Bootstrap置信区间。

例2:

  • 已知某电子原件的寿命服从威布尔分布,其分布函数如下
    F(x)={1−e−(x/η)βx>00其他β>0,η>0F(x)=\begin{cases} 1-e^{-(x/\eta)^{\beta}}&x>0\\ 0&其他 \end{cases}\quad\beta>0,\eta>0F(x)={1e(x/η)β0x>0β>0,η>0
    已知参数β=2\beta=2β=2。今有样本142.84 97.04 32.46 69.14 85.67 114.43 41.76 163.07 108.22 63.28。
    (1)确定参数η\etaη的最大似然估计。
    (2)对于时刻t0=50t_0=50t0=50,求可靠性R(50)=1−F(50)=e−(50/η)2R(50)=1-F(50)=e^{-(50/\eta)^2}R(50)=1F(50)=e(50/η)2的置信水平为0.95的Bootstrap单侧置信区间。
    解:
    (1)求似然估计是概率论中的基础,不在此详细阐述,结果为η^=∑i=1nxi2n=100.0696\hat\eta=\sqrt{\frac{\sum_{i=1}^nx_i^2}{n}} =100.0696η^=ni=1nxi2 =100.0696
    (2)对于参数β=2,η=η^=100.0696\beta=2,\eta=\hat\eta=100.0696β=2,η=η^=100.0696,产生服从对应韦布尔分布的5000个容量为10的Bootstrap样本。
    对于每个样本计算η\etaη的Bootstrap估计η^i∗=∑j=110(xj∗i)210\hat\eta_i^*=\sqrt{\frac{\sum_{j=1}^{10}(x_j^{*i})^2}{10}}η^i=10j=110(xji)2
    将5000个ηi∗\eta_i^*ηi自小到大排列,取坐起第250([5000×0.05]=250)位,得η(250)∗=73.3758\eta_{(250)}^*=73.3758η(250)=73.3758
    所以置信水平位0.95得Bootstrap单侧置信下限为e−(50/η^(250)∗)2=0.6286e^{-(50/\hat\eta^*_{(250)})^2}=0.6286e(50/η^(250))2=0.6286
clc,clear
a=[142.84  97.04  32.46  69.14  85.67  114.43  41.76  163.07  108.22  63.28];
eta=sqrt(mean(a.^2));
beta=2;B=5000;alpha=0.05;
b=wblrnd(eta,beta,[B,10]);%产生shape=(B,10)的韦布尔分布的随机数
etahat=sqrt(mean(b.^2,2));%计算每个样本对应的最大似然估计
seteta=sort(etahat);%把etahat从小到大排序
k=floor(B*alpha);%取整数部分
se=seteta(k);%提取相应位置的估计量
Rt0=exp(-(50/se)^2);
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐