bootstrap由美国数学家Efron于20世界70年代创建。
bootstrap方法用于样本数较少时的数学统计和参数估计。其数学原理基于经验分布下的格里汶科定理。
经验分布函数:
设 X 1 , X 2 , X 3 , . . . , X n X_1,X_2,X_3,...,X_n X1,X2,X3,...,Xn是总体F的一个样本,用S(x), − ∞ < x < + ∞ -\infty < x < +\infty −∞<x<+∞表示 X 1 , X 2 , X 3 , . . . , X n X_1,X_2,X_3,...,X_n X1,X2,X3,...,Xn中不大于x的随机变量的个数,则经验分布函数为:
F n ( x ) = 1 n S ( x ) , − ∞ < x < + ∞ F_n(x)=\frac{1}{n}S(x), -\infty < x < +\infty Fn(x)=n1S(x),−∞<x<+∞
注意:
机器学习关于“评估方法”一节中多处提到的“自助法”即bootstrap抽样统计。
自助法的算法流程:
格里汶科( G l i v e n k o )定理: \color{red}格里汶科(Glivenko)定理: 格里汶科(Glivenko)定理:
对于任意实数x当 n → ∞ n \to \infty n→∞时 F n ( x ) F_n(x) Fn(x)以概率1一致收敛于分布F(x),即:
P { lim n → ∞ sup − ∞ < x < ∞ ∣ F n ( x ) − F ( x ) ∣ = 0 } = 1 P \{ \lim_{ n \to \infty} \quad \sup_{-\infty < x < \infty} | F_n(x) - F(x)| = 0\} = 1 P{n→∞lim−∞<x<∞sup∣Fn(x)−F(x)∣=0}=1
该定理的含义是: \color{red}该定理的含义是: 该定理的含义是:
对于任意实数x当n充分大时,经验分布函数的任一观察值 F n ( x ) F_n(x) Fn(x)与总体分布函数F(x)只有微小的差别,在实际上可以当多F(x)来使用。
证明:
对于任意x, − ∞ < x < ∞ , S ( x ) ∼ b ( n , F ( x ) ) -\infty < x < \infty,S(x) \sim b(n,F(x)) −∞<x<∞,S(x)∼b(n,F(x)),从而可知对于任意x有:
E ( F n ( x ) ) = E ( S ( x ) n ) = 1 n E ( S ( x ) ) = 1 n E ( n F ( x ) ) = F ( x ) E(F_n(x)) = E(\frac{S(x)}{n}) = \frac{1}{n}E(S(x)) = \frac{1}{n}E(n F(x)) = F(x) E(Fn(x))=E(nS(x))=n1E(S(x))=n1E(nF(x))=F(x)
在实践中,bootstrap统计数据有效的前提是n足够大,一般情况下,n要大于1000(当然越大越好),因此bootstrap特别适合使用计算机来计算(假设n为 1 0 8 10^8 108,如果用人工统计那还不得累死!)。
另外,bootstrap方法还需要依赖于随即数表。已知n的前提下,随即数表的生成方式如下所述:
可参考如下c语言版随机数生成方法:https://editor.csdn.net/md/?articleId=130525806
以下知识来自于浙江大学版的《概率论与数理统计》一书第10章"Bootstrap方法"。
暂且为空
暂且为空
暂且为空
偏差的定义:
设 X 是来自于总体 F 的样本, θ ^ 是参数 θ 的估计量。 θ 的估计 θ ^ 关于 θ 的偏差定义为: b = E ( θ ^ − θ ) = E ( θ ^ ) − θ \color{red}设X是来自于总体F的样本,\hat \theta是参数\theta的估计量。\theta的估计\hat \theta关于\theta的偏差定义为 :\\ \\ b =E(\hat \theta - \theta) = E(\hat \theta) - \theta 设X是来自于总体F的样本,θ^是参数θ的估计量。θ的估计θ^关于θ的偏差定义为:b=E(θ^−θ)=E(θ^)−θ