Bootstrap 概要:Bootstrap 在英语英语翻译为「自样本」,「lengths法」,「靴带法」。若将其单纯视作两个英语术语,它的原意是「拔靴带」—— 透过巴塔衣袖,他们把他们松开来。这听出来啥有点儿「力拔山兮气温商网」的刘邦大英雄人物前年邀旁人决斗精神力量时订下的准则:趴在桌子上,双腿倾斜度,看谁能仅凭罗阿坦岛把桌子和他们松开来。又或是没人民间传说,刘邦的精神力量大到能「他们拽着他们的指甲就能把他们抬走发射塔」。
尽管前述实战经验样品」为依据内部结构统计统计数据量的国际标准误或概率密度函数,以达至统计统计数据推测的目地。
偷偷摸摸的论述是这种的:Bootstrap 是一类新的段展样品统计统计数据方式,为化解小样品难题提供更多了较好的路子。它亦然模块统计统计数据中一类关键的估算统计统计数据量国际标准差从而展开区段估算的统计统计数据方式。对重回数学模型:对非线性重回数学模型:
E(ut∣Xt)=0,E(usut=0)∀s≠tE\left(u_{t} \mid X_{t}\right)=0, E\left(u_{s} u_{t}=0\right) \forall s \neq t \\
能透过多种不同方式来创建 Bootstrap 的统计数据聚合操作过程 (DGP) 。简而言之的 Bootstrap DGP 是对末知的 「真实世界 DGP」的一类估算。假如 Bootstrap DGP 在某种程度上吻合真实世界的 DGP,所以由 Bootstrap DGP 聚合的统计数据将与真实世界 DGP 聚合的统计数据相近(假如未知不然)。如果是这种,则展开演示采用 Bootstrap DGP 赢得的P\mathrm{P} 值与真实世界 P\mathrm{P} 值足够吻合,能展开准确的推理。
Bootstrap 的基本思想是:假如 观测样品 是从母体中随机抽取的,所以它将包含母体的全部的信 息,所以我们不妨就把这个观测样品视作“总体”。能简单地概括为:既然样品是抽出来的,那我 何不从样品中再样本。
具体而言,Bootstrap 的第一步是聚合一系列 Bootstrap 实战经验样品 (Empirical Sample) (有时也被形象地称为 「伪样品」),每个样品都是初始统计数据的一次有放回样本。透过对 实战经验样品 的计算,赢得统计统计数据量的分布。例如,要展开 1000 次 Bootstrap,求平均值的概率密度函数,能对每个实战经验样品 计算平均值。这种就赢得了 1000 个平均值。对这 1000 个平均值的分位数展开计算, 即可赢得概率密度函数。已经证明,在初始样品足够大且初始样品是从母体中随机抽取的情况下,Bootstrap 样本能够无偏吻合总体的分布。
Bootstrap 的基本步骤如下:
Step 1: 采用有放回样本方式从原始样品中抽取一定数量的子样本。Step 2: 根据抽出的样品计算想要的统计统计数据量。Step 3: 重复前两步 K 次,得到 K 个统计统计数据量的估算值。Step 4: 根据 K 个估算值赢得统计统计数据量的分布,并计算概率密度函数。有放回样本
简而言之 「有放回样本」 (Samping with replacement) 指的是在逐个抽取个体时,每次被抽到的个体放 回总体中后,再展开下次抽取的样本方式。
举个例子, 对由 0.10.1 和 0.30.3这两个数字构成的观测样品而言, 记为S0=(0.1,0.3)S_{0}=(0.1,0.3) 。则采用有放 回样本 (Bootstrapping), 能得到如下三种不同的实战经验样品: S1BS=(0.1,0.1),S2BS=(0.1,0.3)S_{1}^{B S}=(0.1,0.1), S_{2}^{B S}=(0.1,0.3) ,S3BS=(0.3,0.3)S_{3}^{B S}=(0.3,0.3)
实际应用操作过程中, 对包含N\mathrm{N} 个观察值的 观测样品 而言, Bootstrap 样本得到的实战经验样品也会包含 N\mathrm{N} 个观察值。这意味着,在某个 实战经验样品中,有些观察值可能被多次抽中,而有些观察值则可能一 次都没有被抽中。例如,在上例中, 实战经验样品S1BSS_{1}^{B S} 中的观察值 0.10.1 被抽中了两次, 而 0.30.3 则一次都 没有被抽中。
国际标准差与国际标准误
简言之,统计统计数据量的国际标准差就称为 国际标准误。详情参见 「知平 – 统计统计数据学上国际标准差与国际标准误的区别与联系 是什么?」,以及「CSDN – 国际标准差(Standard Deviation) 和国际标准误差(Standard Error)」。
编写 Bootstrap 程序
Stata 的 Bootstrap 命令非常方便,它不仅能与估算命令(例如 OLS 重回和 logistic 重回)还与非估算命令(比如 summarize)无缝衔接。Bootstrap 能自动执行自样本操作过程,得到想要的统计统计数据量,并计算相关的统计统计数据指标(例如偏差和概率密度函数)。然而尽管这个命令非常方便,但在某些情况下想要赢得的统计统计数据量却不能透过 Bootstrap 实现。对这些情况,您需要自行编写Bootstrap程序。
本篇Stata FAQ 将演示如何自行编写Bootstrap 程序。在第两个例子中,我们将 Bootstrap的结果与自行编写 Bootstrap程序的结果展开对比。透过比较, 能发现自行编写 Bootstrap 程序非常容易。接下来的两个示例将展示当Bootstrap无法赢得想要的统计统计数据量时,如何自行编写 Bootstrap 程序。
为了使后续结果呈现更加美观,在执行Stata范例之前,我们能先执行如下格式设定命令:
Stata 范例 1:OLS 重回的 RMSE 的国际标准误
在例一中,将透过采用 Bootstrap和自行编写的Bootstrap程序来比较结果。我们采用Stata 自带的nlsw88.dta 统计数据中的年龄(age)、种族 (race)、婚姻状况 (married) 和工作实战经验(tenure) 对妇女工资(wage) 展开重回,并透过 Bootstrap 赢得均方根误差(rmse)的国际标准误。对 Bootstrap 我们要求重复 100 次并且指定随机种子数,以确保结果开重现。
首先,展开初始重回。
结果如下:
结果如下:
透过 estat Bootstrap 得到前述 Bootstrap 操作过程产生的所有信息。
详细内容参见连享会推文
专题:Stata程序 Stata: Bootstrap-自样本-lengths法相关推文
Note:产生如下推文列表的 Stata 命令为:
. lianxh 演示
. songbl 演示
安装最新版 lianxh/ songbl 命令:
. ssc install lianxh, replace
. ssc install songbl, replace
专题:Stata教程 Stata博文系列:边演示边学计算方法经济学-Econometrics-By-Simulation专题:Stata程序 Stata:蒙特卡洛演示A-(Monte-Carlo-Simulation)没所以神秘Stata程序:Monte-Carlo-演示之产生符合特定分布的随机数Stata:蒙特卡洛演示分析 (Monte Carlo Simulation)专题:重回分析 Stata:在线可视化演示-OLS-的性质专题:时间序列 Stata: VAR – 演示、估算和推测专题:Python-R-Matlab MATLAB:Ramsey数学模型的求解与演示