“手撕“ BootStrap 方法

article/2025/10/10 5:46:43

文章目录

  • Part.I Introduction
    • Chap.I bootstrap 方法简介
    • Chap.II 预备知识
  • Part.II 非参数 bootstrap 方法
    • Chap.I 估计量标准误差的bootstrap估计
    • Chap.II bootstrap 置信区间
    • Chap.III bootstrap-t 法
    • Chap.IV 一个实例
  • Part.III 参数 bootstrap 方法
    • Chap.I 一个实例

Part.I Introduction

因为课时限制,之前本科的《概率论与数理统计》好像没有学到这里,但是因为后来用到了,参考浙大的课本做点笔记。


Chap.I bootstrap 方法简介

bootstrap方法是Efron在20世纪70年代后期建立的。这一方法可以用于当人们对总体知之甚少的情况,它是近代统计中的一种用于数据处理的重要实用方法。这种方法的实现需要在计算机上作大量的计算,随着计算机威力的增长,它已成为一种流行的方法。

前提:设 x = ( x 1 , x 2 , ⋯ , x n ) \mathbf x=(x_1,x_2,\cdots,x_n) x=(x1,x2,,xn) 是来自分布函数为 F F F 的总体的样本。 R ( x ) R(x) R(x) x x x 的函数, F n F_n Fn 是相应的经验分布函数。我们感兴趣的是 R ( x ) R(x) R(x) 的某些特征,比如均值或中位数等。

bootstrap 方法根据对分布函数的掌握程度分为

  • 非参数 bootstrap 方法:总体的分布函数 F F F 未知;先利用已知的经验分布函数 F n F_n Fn 代替 F F F,在 F n F_n Fn 中抽样,得到数据样本 x ∗ x^* x,然后计算 R ( x ∗ ) R(x^*) R(x) 的均值或中位数,作为所需求的均值或中位数的 bootstrap 估计。
  • 参数 bootstrap 方法:总体的分布函数 F ( x ; β ) F(x;\beta) F(x;β) 形式已知,参数 β \beta β 未知;先利用样本 x x x 求出 β \beta β 的最大似然估计 β ^ \hat \beta β^,以 F ( x ; β ^ ) F(x;\hat \beta) F(x;β^) 代替 F F F,在 F ( x ; β ^ ) F(x;\hat \beta) F(x;β^) 中抽样得到数据样本 x ∗ x^* x,然后计算 R ( x ∗ ) R(x^*) R(x) 的均值或中位数,作为所需求的均值或中位数的 bootstrap 估计。

Chap.II 预备知识

枢轴量 pivotal quantity

概括的说,统计量本身完全是样本的函数,自身不包含任何未知参数(样本一旦确定,统计量的值也就定下来了),但是其分布却往往包含未知参数;枢轴量恰恰相反,枢轴量本身就包含总体中的未知参数,但是其分布的形式一般是确定的,不包含未知参数。

定义:设总体 X X X 有概率密度(或分布律) f ( x ; θ ) f(x;\theta) f(x;θ),其中 θ \theta θ 是待估的未知参数。设 X 1 , ⋯ , X n X_1,\cdots,X_n X1,,Xn 是一个样本,记 G = G ( X 1 , X 2 , ⋯ , X n ; θ ) G=G(X_1,X_2,\cdots,X_n;\theta) G=G(X1,X2,,Xn;θ) 为样本和待估参数 θ \theta θ 的函数,如果 G G G 的分布已知,不依赖与任何参数,就称 G G G 为枢轴量。

由上述定义可以看出枢轴量的几个特点:

  • 与某个待估参数有关(事实上枢轴量法主要被用于未知参数的区间估计);
  • 本身含有未知参数(待估参数),因此不具有“可观察性”,也就是说即使选定了样本也无法计算出确定的值;
  • 其分布是明确的(有具体的数学公式,不包含未知参数)。

一个比较常见的例子:正态分布转换成标准正态分布时,随机变量中还是包含未知参数,但是其分布中却不包含任何未知参数。因此标准化之后的随机变量是一个枢轴量。

摘自:知乎@Belter昕


Part.II 非参数 bootstrap 方法

设总体的分布 F F F 未知,但已经有一个容量为 n n n 的来自分布F的数据样本,自这一样本按放回抽样的方法抽取一个容量为 n n n 的样本,这种样本称为bootstrap样本或称为自助样本。相继地、独立地自原始样本中取很多个bootstrap样本,利用这些样本对总体 F F F 进行统计推断。这种方法称为非参数bootstrap方法,又称自助法

Chap.I 估计量标准误差的bootstrap估计

在估计总体未知参数 θ \theta θ 时,人们不但要给出 θ \theta θ 的估计值 θ ^ \hat\theta θ^,还需要指出这一估计 θ ^ \hat\theta θ^ 的精度。通常我们用估计量 θ ^ \hat\theta θ^ 的标准差 D ( θ ^ ) \sqrt{D(\hat\theta)} D(θ^) 来度量估计的精度。估计量 θ ^ \hat\theta θ^ 的标准差 σ θ ^ = D ( θ ^ ) \sigma_{\hat\theta}=\sqrt{D(\hat\theta)} σθ^=D(θ^) 也称为估计量 θ ^ \hat\theta θ^标准误差

下面给出求 D ( θ ^ ) \sqrt{D(\hat\theta)} D(θ^) 的 bootstrap 估计的步骤:

  • 自原始数据样本 x = ( x 1 , x 2 , ⋯ , x n ) \mathbf x=(x_1,x_2,\cdots,x_n) x=(x1,x2,,xn) 按放回抽样的方法,抽得容量为 n n n 的样本 x ∗ = ( x 1 ∗ , x 2 ∗ , ⋯ , x n ∗ ) \mathbf x^*=(x_1^*,x_2^*,\cdots,x_n^*) x=(x1,x2,,xn) (称为bootstrap样本);
  • 相继地、独立地模拟出 B B B 个( B ≥ 1000 B\ge 1000 B1000)容量为 n n n 的bootstrap样本, x ∗ i = ( x 1 ∗ i , x 2 ∗ i , ⋯ , x n ∗ i ) , i = 1 , 2 , ⋯ , B \mathbf x^{*i}=(x_1^{*i},x_2^{*i},\cdots,x_n^{*i}),i=1,2,\cdots,B xi=(x1i,x2i,,xni),i=1,2,,B,对于第 i i i 个bootstrap样本,计算 θ ^ i ∗ = θ ^ ( x 1 ∗ i , x 2 ∗ i , ⋯ , x n ∗ i ) , i = 1 , 2 , ⋯ , B \hat \theta^*_i=\hat \theta(x_1^{*i},x_2^{*i},\cdots,x_n^{*i}),i=1,2,\cdots,B θ^i=θ^(x1i,x2i,,xni),i=1,2,,B θ ^ i ∗ \hat \theta^*_i θ^i 称为 θ \theta θ 的第 i i i 个 bootstrap 估计)
  • 计算 σ ^ θ ^ = 1 B − 1 ∑ i = 1 B ( θ ^ i ∗ − θ ∗ ‾ ) 2 \hat \sigma_{\hat \theta}=\sqrt{\frac{1}{B-1}\sum\limits_{i=1}^B(\hat \theta_i^*-\overline{\theta^*})^2} σ^θ^=B11i=1B(θ^iθ)2 ,其中 θ ∗ ‾ = 1 B ∑ i = 1 B θ ∗ \overline{\theta^*}=\frac{1}{B}\sum\limits_{i=1}^B{\theta^*} θ=B1i=1Bθ

值得注意的是,上面求的是估计量标准误差的bootstrap估计,相似地,对于我们感兴趣的任意随机变量 R = R ( X ) R=R(\mathbf X) R=R(X),我们希望去估计 R R R 的分布的某些特征,例如 R R R 的数学期望 E ( R ) E(R) E(R),就可以按照上面所说的三个步骤进行,只是在:
第二步中对于第 i i i 个bootstrap样本,计算 R i ∗ = R ( x 1 ∗ i , x 2 ∗ i , ⋯ , x n ∗ i ) , i = 1 , 2 , ⋯ , B R^*_i=R(x_1^{*i},x_2^{*i},\cdots,x_n^{*i}),i=1,2,\cdots,B Ri=R(x1i,x2i,,xni),i=1,2,,B,代替计算 θ i ∗ \theta^*_i θi
第三步中计算感兴趣的 R R R 的特征,例如我们希望估计 E ( R ) E(R) E(R) 就可以计算 E ( R ∗ ) = 1 B ∑ i = 1 B R i ∗ E(R^*)=\frac{1}{B}\sum\limits_{i=1}^B{R_i^*} E(R)=B1i=1BRi

Chap.II bootstrap 置信区间

X = ( X 1 , X 2 , ⋯ , X n ) \textbf{X}=(X_1,X_2,\cdots,X_n) X=(X1,X2,,Xn) 是来自总体 F F F 容量为 n n n 的样本, x = ( x 1 , x 2 , ⋯ , x n ) x=(x_1,x_2,\cdots,x_n) x=(x1,x2,,xn) 是一个已知的样本值。 F F F 中含有未知参数 θ \theta θ θ ^ = θ ^ ( X 1 , X 2 , ⋯ , X n ) \hat \theta=\hat \theta(X_1,X_2,\cdots,X_n) θ^=θ^(X1,X2,,Xn) θ \theta θ 的估计量,现在来求 θ \theta θ 的置信水平为 1 − α 1-\alpha 1α 的置信区间。

相继地、独立地从样本 x = ( x 1 , x 2 , ⋯ , x n ) \mathbf x=(x_1,x_2,\cdots,x_n) x=(x1,x2,,xn) 中抽出 B B B 个容量为 n n n 的bootstrap 样本,对于每个 bootstrap 样本求出 θ \theta θ 的bootstrap 估计: θ ^ 1 ∗ , θ ^ 2 ∗ , ⋯ , θ ^ B ∗ \hat \theta_1^*,\hat \theta_2^*,\cdots,\hat \theta_B^* θ^1,θ^2,,θ^B,将它们自小到大排序得到 θ ^ ( 1 ) ∗ , θ ^ ( 2 ) ∗ , ⋯ , θ ^ ( B ) ∗ \hat \theta_{(1)}^*,\hat \theta_{(2)}^*,\cdots,\hat \theta_{(B)}^* θ^(1),θ^(2),,θ^(B)。取 R ( X ) = θ R(\mathbf{X})=\theta R(X)=θ,用相应的 R ( X ∗ ) = θ ^ ∗ R(\mathbf{X^*})=\hat\theta^* R(X)=θ^ 的分布作为 R ( X ) R(\mathbf{X}) R(X) 的分布的近似,求出 R ( X ∗ ) R(\mathbf{X^*}) R(X) 的分布的近似分位数 θ ^ α / 2 ∗ \hat\theta^*_{\alpha/2} θ^α/2 θ ^ 1 − α / 2 ∗ \hat\theta^*_{1-\alpha/2} θ^1α/2 使
P { θ ^ α / 2 ∗ < θ ^ ∗ < θ ^ 1 − α / 2 ∗ } = 1 − α P\{\hat\theta^*_{\alpha/2}<\hat\theta^*<\hat\theta^*_{1-\alpha/2} \}=1-\alpha P{θ^α/2<θ^<θ^1α/2}=1α
于是近似地有
P { θ ^ α / 2 ∗ < θ < θ ^ 1 − α / 2 ∗ } = 1 − α (1.5) P\{\hat\theta^*_{\alpha/2}<\theta<\hat\theta^*_{1-\alpha/2} \}=1-\alpha\tag{1.5} P{θ^α/2<θ<θ^1α/2}=1α(1.5)
k 1 = [ B × α 2 ] , k 2 = [ B × ( 1 − α 2 ) ] k_1=[B\times\frac{\alpha}{2}],k_2=[B\times(1-\frac{\alpha}{2})] k1=[B×2α],k2=[B×(12α)],在式(1.5)中以 θ ^ ( k 1 ) ∗ \hat\theta^*_{(k_1)} θ^(k1) θ ^ ( k 2 ) ∗ \hat\theta^*_{(k_2)} θ^(k2) 分别作为分位数 θ ^ α / 2 ∗ \hat\theta^*_{\alpha/2} θ^α/2 θ ^ 1 − α / 2 ∗ \hat\theta^*_{1-\alpha/2} θ^1α/2 的估计,得到近似等式
P { θ ^ ( k 1 ) ∗ < θ < θ ^ ( k 2 ) ∗ } = 1 − α (1.6) P\{\hat\theta^*_{(k_1)}<\theta<\hat\theta^*_{(k_2)} \}=1-\alpha\tag{1.6} P{θ^(k1)<θ<θ^(k2)}=1α(1.6)
于是由上式就得到 θ \theta θ 的置信水平为 1 − α 1-\alpha 1α 的近似置信区间
( θ ( k 1 ) ∗ , θ ^ ( k 2 ) ∗ ) (1.7) (\theta^*_{(k_1)},\hat\theta^*_{(k_2)} )\tag{1.7} (θ(k1),θ^(k2))(1.7)
这一区间称为 θ \theta θ 的置信水平为 1 − α 1-\alpha 1αbootstrap 置信区间。这种求置信区间的方法称为分位数法

Chap.III bootstrap-t 法

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

Chap.IV 一个实例

在这里插入图片描述

Part.III 参数 bootstrap 方法

当所研究的总体的分布函数 F ( x ; β ) F(x;\beta) F(x;β) 的形式已知,但是其中包含未知参数 β \beta β β \beta β可以是向量)。现在已知有一个来自 F ( x ; β ) F(x;\beta) F(x;β) 的样本 X 1 , X 2 , ⋯ , X n X_1,X_2,\cdots,X_n X1,X2,,Xn,利用这一样本求出 β \beta β 的最大似然估计 β ^ \hat\beta β^。在 F ( x ; β ) F(x;\beta) F(x;β) 中以 β ^ \hat\beta β^ 代替 β \beta β 得到 F ( x ; β ^ ) F(x;\hat\beta) F(x;β^),接着在 F ( x ; β ^ ) F(x;\hat\beta) F(x;β^) 中产生容量为 n n n 的样本 X 1 ∗ , X 2 ∗ , ⋯ , X n ∗ ∼ F ( x ; β ^ ) X_1^*,X_2^*,\cdots,X_n^*\sim F(x;\hat\beta) X1,X2,,XnF(x;β^)。这种样本可以产生很多个,就可以利用这些样本对总体进行统计推断,其做法与非参数bootstrap方法一样,这种方法称为参数bootstrap方法

Chap.I 一个实例

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


http://chatgpt.dhexx.cn/article/vm84WfBh.shtml

相关文章

Bootstrap的基本使用方法,5分钟帮你搞懂怎么用

原文地址&#xff1a; http://blog.csdn.net/codebycoder/article/details/51001256 作为Coder&#xff0c;我们都接触过Web design&#xff0c;如何快速的构建Web应用成了我们比较头疼的一个问题&#xff0c;不仅要考虑各种浏览器的兼容性&#xff0c;同时还要考虑各种手机的…

Bootstrap的基本使用方法介绍

作为Coder&#xff0c;我们都接触过Web design&#xff0c;如何快速的构建Web应用成了我们比较头疼的一个问题&#xff0c;不仅要考虑各种浏览器的兼容性&#xff0c;同时还要考虑各种手机的页面适配&#xff0c;毕竟现在已经到了互联网手机满天飞的时代了。 我有会听嵩哥的歌…

Django中引入bootstrap的方法

一、下载bootstrap 下载地址:https://v3.bootcss.com/getting-started/#download,选择第二个,下载带有源码的bootstrap,只能通过这种方式(django是封闭的) 下载的目录结构: dist文件是bootstrap的核心文件 二、创建一个简单Demo项目 1.在根项目下创建一个static目录,再在stat…

Bootstrap基本用法

Bootstrap Bootstrap是简洁、直观、强悍的前端开发框架&#xff0c;让web开发更迅速、简单。 Bootstrap 是最受欢迎的 HTML、CSS 和 JS 框架&#xff0c;用于开发响应式布局、移动设备优先的 WEB 项目。 Bootstrap栅格系统 Bootstrap 提供了一套响应式、移动设备优先的流式栅…

BootStrap基本使用

目录 BootStrap框架 BootStrap特点 bootstrap的使用 布局容器 固定宽度 完整宽度 栅格网格系统 前言 列的形式 列组合和列偏移 列排序 列嵌套 排版 标题 段落 强调 对齐效果 列表 去点列表 内联列表 定义列表 代码 表格 表单标签 文本框和文本域 单…

统计学中的Bootstrap方法介绍及其应用

说明&#xff1a;本来这只是一篇学生时期对研究方向进行总结的文章&#xff0c;没想到能够给其他人带来了一些的帮助。两年多以来&#xff0c;有许多人留言及私信问我相关的问题&#xff0c;我也不止一次地改正文章中的一些纰漏。但限于时间久远以及水平有限&#xff0c;这篇文…

bootstrap的使用方法

Bootstrap 有趣的栅格网格系统 Bootstrap 提供了一套响应式、移动设备优先的流式栅格系统&#xff0c;随着屏幕 或视口&#xff08;viewport&#xff09;尺寸的增加&#xff0c;系统会自动分为最多 12 列。栅格系统用于通 过一系列的行&#xff08;row&#xff09;与列&#xf…

SetupFactory简单制作安装包流程

最近让我给项目做安装包&#xff0c;小白一个&#xff0c;开始找各种安装包打包工具。有的简单&#xff0c;但是功能差点意思&#xff0c;有的功能很强大&#xff0c;但是略复杂而且有的还收费。就发现SetupFactory&#xff08;安装工厂&#xff09;&#xff0c;这个工具还挺好…

setuptools的下载安装

setuptools的下载安装 *第一步&#xff0c;登录网址&#xff1a;https://pypi.org/project/setuptools/#files并下载压缩包。 第二步&#xff0c;将下载下来的压缩包解压到桌面。 第三步&#xff0c;按住shift键鼠标右键进入命令行窗口。 第四步&#xff0c;在命令行窗口输入…

使用setup

文章目录 setup函数返回值是一个对象setup函数返回值是一个渲染函数 setup是一个配置项&#xff0c;其值是一个函数。 组件用到的数据、方法等都放在setup这个配置项中。 setup函数的返回值&#xff0c;可以是一个对象&#xff0c;也可以是一个函数&#xff08;且是渲染函数&a…

初始setup

setup setup作为vue3里面的一个配置项&#xff0c;可以在里面写方法&#xff0c;变量&#xff0c;声明周期&#xff0c;计算属性等等 export default {name: setup,// setup作为vue3里面的一个配置项&#xff0c;可以在里面写方法&#xff0c;变量&#xff0c;声明周期&#…

Setup函数

Setup vue 3.0 setup是一个新的组件选项&#xff0c;作为组件中使用组合API的起点。 从组件生命周期来看&#xff0c;它的执行在组件实例创建之前vue2.x的beforeCreate执行。这就意味着在setup函数中this 还不是组件实例&#xff0c;this此时是undefined 在模版中需要使用的数…

setup factory使用方法(转)

推荐使用“Setup Factory ”&#xff0c;它是一个强大的安装程序制作工具。提供了安装制作向导界面&#xff0c;即使你对安装制作不了解&#xff0c;也可以生成专业性质的安装程序。可建立快捷方式&#xff0c;也可直接在Windows 系统的Register加入内容&#xff0c;还能在Win.…

安装包制作工具 SetupFactory 使用详解

Setup Factory是一个强大的安装程序制作工具。提供了安装制作向导界面&#xff0c;即使你对安装制作不了解&#xff0c;也可以生成专业性质的安装程序。可建立快捷方式&#xff0c;也可直接在 Windows 系统的注册表加入内容&#xff0c;还能在 Win.ini 和 System.ini 内加入设定…

1、setup

setup函数的两种返回值 1、若返回一个对象&#xff0c;则对象中的属性&#xff0c;放在&#xff0c;在模板中均可以直接使用&#xff08;重点关注&#xff09; <template><div class"setup"><div>姓名&#xff1a;{{name}}</div><div>…

使用Setup Factory 给应用程序打包

1.这几天闲得慌&#xff0c;突然又想着怎么给生成的exe打包成安装包&#xff0c;好久以前学着用InstallShield打包&#xff0c;学起来还真是麻烦&#xff0c;索性放弃了&#xff0c;这次就直接想找个简单好用的&#xff0c;最后选择了Setup Factory –》这里是Setup Factory v…

Setup Factory安装结束自动启动程序

用Setup Factory制作安装程序时&#xff0c;怎么实现制作出的程序安装时自动运行安装程序里的某个程序或脚本&#xff1f; 例如&#xff1a;现在要使用Setup Factory 制作一个安装程序&#xff0c;安装程序包里有一个exe需要在安装结束时运行它&#xff0c;以便我们把开发出的程…

安装setuptools

使用setuptools安装第三方插件&#xff0c;如何安装setuptools恩。一样的方法。 http://blog.csdn.net/DongGeGe214/article/details/52199439 下载setuptools源码setuptools-25.2.0.tar.gz 地址&#xff1a;https://pypi.python.org/pypi/setuptools 这是一个压缩文件&#x…

教你玩转 Setup factory 7.0

作品做到一定阶段了&#xff0c;也尝试着生成exe文件去运行&#xff0c;可是当我们将exe运行程序移到别的电脑或者其他地方时&#xff0c;就不能正常的运行了。后来想到很多软件都是需要我们安装才能用&#xff0c;所以网上一查&#xff0c;加上同学老师的点拨&#xff0c;我找…

使用Setup Factory如何制作程序安装包

步骤一&#xff1a;自己网上下载Setup Factory工具并安装 可下载地址&#xff08;若时间比较久网站不可用&#xff0c;就自己在网上找一下下载地址&#xff09;&#xff1a;setup factory中文版下载-setup factory汉化版(安装包制作工具)下载v9.5.3 正式版-极限软件园​​​​…