Questions tagged «bootstrap»

引导程序是一种重采样方法,用于估计统计信息的采样分布。

3
Bootstrap vs.排列假设检验
有几种流行的重采样技术,通常在实践中使用,例如自举,置换测试,折刀等。有许多文章和书籍讨论了这些技术,例如Philip I Good(2010)置换,参数化和自举测试假设 我的问题是,哪种重采样技术已经越来越流行并且更易于实施?自举或置换测试?

5
您可以通过使用CV / Bootstrap训练机器学习算法来过度拟合吗?
这个问题很可能是开放性的,无法得出明确的答案,但希望不会。 机器学习算法(例如SVM,GBM,Random Forest等)通常具有一些免费参数,除了一些经验法则之外,还需要针对每个数据集进行调整。通常使用某种重新采样技术(引导程序,CV等)来完成此过程,以适应给出最佳泛化误差的参数集。 我的问题是,你可以在这里走得太远吗?人们都在谈论进行网格搜索,但是为什么不简单地将其视为优化问题并向下钻取最佳参数集呢?我在这个问题中询问了一些有关此问题的机制,但是并没有引起太多关注。也许这个问题被问得很严峻,但也许问题本身代表了人们通常不会采取的一种不好的做法? 困扰我的是缺乏正规化。通过重新采样,我可能会发现,对于该数据集,GBM中生长的最佳树木数量为647,交互深度为4,但是我如何确定新数据确实如此(假设新种群)与训练集相同)?由于没有合理的“缩水”价值(或者如果您愿意,也没有提供任何先验信息),重新采样似乎是我们可以做的最好的事情。我只是没有听到任何有关此事的消息,所以让我想知道是否缺少某些东西。 显然,要进行多次迭代以将模型的最后预测能力压缩出去,会产生大量的计算成本,因此,如果您有足够的时间/精力来进行优化和每一位操作,那么显然这是您要执行的操作性能改善是很有价值的。

3
随机森林如何对异常值不敏感?
我已经读过一些资料,包括本资料,其中“ 随机森林”对离群值不敏感(例如Logistic回归和其他ML方法都是如此)。 但是,有两种直觉告诉我: 每当构建决策树时,都必须对所有点进行分类。这意味着,甚至离群值也将被分类,因此会影响在增强期间选择它们的决策树。 自举是RandomForest进行子采样的一部分。自举容易受到异常值的影响。 有什么办法可以使我对直觉对异常值敏感的直觉与不同意的消息来源相吻合?

2
确定自举法/建议方法所需的样本量
我知道这是一个非常热门的话题,没有人能真正给出简单的答案。不过,我想知道以下方法是否有用。 引导方法仅在样本或多或少(准确读取)与原始总体相同的分布时才有用。为了确定是这种情况,您需要使样本大小足够大。但是什么足够大? 如果我的前提是正确的,那么在使用中心极限定理来确定总体均值时,您也会遇到相同的问题。只有当样本量足够大时,您才能确定样本均值的总体呈正态分布(在总体均值附近)。换句话说,您的样本需要足够好地代表您的人口(分布)。但是,又有什么足够大的呢? 以我的情况(管理过程:完成需求所需的时间与需求量)为例,我有一个多模式分布的人群(所有需求在2011年完成),其中99%的人相信它会更少我想要研究的数据通常要比人口分布(当前和过去一天之间完成的所有需求,理想情况下此时间跨度要尽可能小)更好。 我的2011年人口总数不足以制作样本,样本数量为n。我选择x的值 ,假设为10(x = 10)。现在,我通过反复试验来确定合适的样本量。我取n = 50,看看是否使用Kolmogorov-Smirnov正态分布样本。如果是这样,我重复相同的步骤,但样本大小为40,如果不重复,则样本大小为60(以此类推)。XXxññnXXx101010x = 10X=10x=10n = 50ñ=50n=50404040606060 一段时间后,我得出结论,是获得或多或少很好地表示我的2011年人口的绝对最小样本量。因为我知道我感兴趣的人群(在今天和过去一天之间完成的所有需求)的方差较小,所以我可以放心地使用n = 45的样本量进行引导。(间接地,n = 45决定了我的时间跨度:完成45个需求所需的时间。)n = 45ñ=45n=45n = 45ñ=45n=45n = 45ñ=45n=45454545 简而言之,这就是我的想法。但是由于我不是统计学家,而是一位工程师,他的统计学课程在随后的日子里发生,所以我不能排除我只是产生了很多垃圾的可能性。你们有什么感想?如果我的前提合理,我是否需要选择一个大于10或更小的?根据您的回答(我是否需要感到尴尬?:-),我将发布更多讨论想法。XXx101010 关于第一个答案的答复感谢您的答复,您的回答对我非常有用,尤其是书链接。 但是我很害怕在提供信息的过程中我完全掩盖了我的问题。我知道引导程序样本将接管总体样本的分布。我完全跟随你,但是... 您的原始人口样本需要足够大,以适度确定您的人口样本分布与人口的“实际”分布相对应(等于)。 这仅是关于如何确定原始样本大小需要多少的想法,以便合理确定样本分布与总体分布相对应。 假设您具有双峰人口分布,并且一个顶部比另一个顶部大很多。如果样本数量为5,则很有可能所有5个单位的值都非常接近大型顶部(随机抽取一个单位的机会最大)。在这种情况下,您的样本分布将看起来是单峰的。 样本数量为一百时,样本分布也是双峰的机会就更大了!!自举的麻烦在于您只有一个样本(并且您将在该样本的基础上进一步构建)。如果样本分布确实与总体分布不符,那么您就有麻烦了。这只是使“不良样本分布”机会尽可能低而又不必使样本大小无限变大的想法。

2
如何使用时间序列数据进行引导?
我最近了解了有关使用自举技术来计算估计器的标准误差和置信区间的信息。我了解到的是,如果数据是IID,则可以将样本数据视为总体,并进行替换抽样,这将使您能够对测试统计信息进行多次模拟。 对于时间序列,您显然无法执行此操作,因为可能存在自相关。我有一个时间序列,想计算固定日期前后的数据平均值。是否有使用修改后的引导程序来执行此操作的正确方法?

4
绝对不应该使用百分位引导程序吗?
在MIT OpenCourseWare注释(2014年春季,18.05概率与统计简介)中(当前可在此处获取)中指出: 引导百分位数方法由于其简单性而具有吸引力。但是,这取决于的引导程序分布,该引导分布基于特定的样本,它是真实分布的良好近似。赖斯谈到百分位数方法时说:“尽管这个具有置信度限制的自举抽样分布的分位数的直接方程最初看起来很吸引人,但其原理有些模糊。” [2]简而言之,不要使用自举百分位数方法。请改用经验引导程序(我们已经对这两种方法进行了说明,希望您不要将经验引导程序与百分位数引导程序混淆)。 ˉ XX¯∗x¯∗\bar{x}^{*}X¯x¯\bar{x} [2] John Rice,《数学统计和数据分析》,第2版,第2页。272 经过一番在线搜索之后,这是我发现的唯一引述,它完全表明不应使用百分位数引导程序。 我记得Clarke等人从“ 数据挖掘和机器学习的原理和理论 ”一文中读到的内容。是引导的主要理由是 其中是经验CDF。(我不记得除此之外的细节。) ˚F Ñ1个ñ∑我= 1ñF^ñ(x )→pF(x )1n∑i=1nF^n(x)→pF(x)\dfrac{1}{n}\sum_{i=1}^{n}\hat{F}_n(x) \overset{p}{\to} F(x)F^ñF^n\hat{F}_n 确实不应该使用百分位引导程序方法吗?如果是这样,那么当不一定知道时(即,没有足够的信息可用于执行参数自举),有什么替代方案?FFF 更新资料 由于需要澄清,因此这些MIT注释中的“经验引导程序”涉及以下过程:它们计算和其中是对和的完整样本估计值,得出的估计置信区间为。δ1个= ( θ^∗-θ^)α / 2δ1=(θ^∗−θ^)α/2\delta_1 = (\hat{\theta}^{*}-\hat{\theta})_{\alpha/2}θ * θ θ θ [ θ - δ 2,θ - δ 1 ]δ2= ( θ^∗-θ^)1 - α / 2δ2=(θ^∗-θ^)1个-α/2\delta_2 = …

4
偏差的自举估计何时有效?
人们通常认为自举可以在估计器中提供偏差的估计。 如果吨是一些统计的估计,以及是自举复制品(与),则偏压的自举估计是 似乎非常简单而强大,令人不安。t^t^\hat tt~it~i\tilde t_ii∈{1,⋯,N}i∈{1,⋯,N}i\in\{1,\cdots,N\}biast≈1N∑it~i−t^biast≈1N∑it~i−t^\begin{equation} \mathrm{bias}_t \approx \frac{1}{N}\sum_i \tilde{t}_i-\hat t \end{equation} 在没有对统计信息进行无偏估计的情况下,我无法理解如何做到这一点。例如,如果我的估计器简单地返回一个独立于观察值的常数,则上述偏差估计显然是无效的。 尽管此示例是病态的,但我看不到有关估计量和分布的合理假设,这些假设将保证自举估计是合理的。 我尝试阅读正式的参考书,但我既不是统计学家,也不是数学家,因此没有任何澄清。 谁能提供何时可以预期该估计有效的高级摘要?如果您知道关于该主题的好的参考文献,那也很好。 编辑: 估计器的平滑度通常被引用为引导程序正常工作的要求。难道还需要某种形式的局部可逆性转换吗?常量映射显然不满足于此。
31 bootstrap  bias 

2
偏态分布的均值是否存在可靠的非参数置信区间?
极偏斜的分布(例如对数正态分布)不会导致准确的引导置信区间。这是一个示例,说明无论您在R中尝试哪种引导方法,左右尾部区域都离理想的0.025较远: require(boot) n <- 25 B <- 1000 nsim <- 1000 set.seed(1) which <- c('basic', 'perc', 'norm', 'bca', 'stud') mul <- 0; sdl <- 1.65 # on log scale dist <- c('normal', 'lognormal')[2] switch(dist, normal = {g <- function(x) x; mu <- mul}, lognormal = {g <- exp; mu <- …

3
对同行评审开放源期刊的建议?
我有一个用于测试均值假设的自举方法的手稿,我想将其发送以供发表,但我有一个道德困境。我已经签署了抗议Elsevier的不道德商业行为的抗议书,并且阅读了整个问题确实使我质疑其他营利性学术期刊的道德。因此,我想在非营利性期刊(最好是开源期刊)上发表文章,即使我了解,就声望而言,这类期刊尚未与较成熟的期刊相提并论。幸运的是,由于我已经任职,所以这对我来说不是一个大考虑。 我将不胜感激任何建议。

3
为什么不报告引导分布的平均值?
当一个自举参数获取标准误差时,我们得到该参数的分布。为什么我们不使用该分布的均值作为我们试图获取的参数的结果或估计呢?分布不应该近似真实分布吗?因此,我们将对“真实”价值有一个很好的估计吗?但是,我们报告了从样本中获得的原始参数。这是为什么? 谢谢

2
自举如何很好地估计估计量的采样分布?
最近研究了引导程序后,我想到了一个概念性问题,但仍然使我感到困惑: 您有一个人口,并且想知道一个人口属性,即,在这里我用代表人口。例如,这个可能是人口平均值。通常,您无法从总体中获取所有数据。因此,您从总体中得出了大小为的样本为了简单起见,假设您有iid示例。然后,您获得估算器。您想使用来推断,因此您想知道的可变性 。P θ X Ñ θ = 克(X )θ θ θθ = 克(P)θ=g(P)\theta=g(P)PPPθθ\thetaXXXñNNθ^= 克(X)θ^=g(X)\hat{\theta}=g(X)θ^θ^\hat{\theta}θθ\thetaθ^θ^\hat{\theta} 首先,存在的真实采样分布。从概念上讲,您可以从总体中抽取许多样本(每个样本的大小均为)。每次您都有因为每次您都有不同的样本。然后最后,您将能够恢复的真实分布。好的,至少这是估算分布的概念基准。让我重申一下:最终目标是使用各种方法来估计或近似的真实分布。 Ñ θ =克(X)θ^θ^\hat{\theta}ñNNθ^= 克(X)θ^=g(X)\hat{\theta}=g(X) θθ^θ^\hat{\theta}θ^θ^\hat{\theta}θ^θ^\hat{\theta} 现在,问题来了。通常,只有一个样本包含数据点。然后,您可以多次从该样本中重新采样,然后得出的引导分布。我的问题是:此引导分布与的真实采样分布有多接近?有没有量化的方法?Ñ θXXXNNNθ^θ^\hat{\theta}θ^θ^\hat{\theta}

5
为什么我的引导时间间隔覆盖范围很差?
我想做一个课堂演示,在其中我将t间隔与引导间隔进行比较,并计算两者的覆盖率。我希望数据来自偏斜的分布,因此我选择将数据生成为exp(rnorm(10, 0, 2)) + 1对数正态偏移后的大小为10的样本。我编写了一个脚本来绘制1000个样本,并针对每个样本,基于1000个重复计算出95%的t间隔和95%的bootstrap百分位间隔。 当我运行脚本时,这两种方法的间隔都非常相似,并且覆盖率均为50-60%。我感到很惊讶,因为我认为引导间隔会更好。 我的问题是 在代码中犯了错误? 在计算间隔时出错了? 期望引导间隔具有更好的覆盖范围特性而犯了一个错误? 另外,在这种情况下是否有办法构建更可靠的配置项? tCI.total <- 0 bootCI.total <- 0 m <- 10 # sample size true.mean <- exp(2) + 1 for (i in 1:1000){ samp <- exp(rnorm(m,0,2)) + 1 tCI <- mean(samp) + c(1,-1)*qt(0.025,df=9)*sd(samp)/sqrt(10) boot.means <- rep(0,1000) for (j in 1:1000) boot.means[j] …

1
自举预测间隔
是否有任何引导技术可用于计算点预测的预测间隔,例如通过线性回归或其他回归方法(k近邻,回归树等)获得的点预测? 我以某种方式感到,有时建议的仅引导点预测的方法(例如,参见kNN回归的预测间隔)不是提供预测间隔,而是提供置信区间。 R中的一个例子 # STEP 1: GENERATE DATA set.seed(34345) n <- 100 x <- runif(n) y <- 1 + 0.2*x + rnorm(n) data <- data.frame(x, y) # STEP 2: COMPUTE CLASSIC 95%-PREDICTION INTERVAL fit <- lm(y ~ x) plot(fit) # not shown but looks fine with respect to all relevant …

3
使用带有R的引导程序计算p值
我使用“ boot”包来计算近似的两面自举p值,但是结果与使用t.test的p值相差太远。我无法弄清楚我在R代码中做错了什么。有人可以给我一个提示吗 time = c(14,18,11,13,18,17,21,9,16,17,14,15, 12,12,14,13,6,18,14,16,10,7,15,10) group=c(rep(1:2, each=12)) sleep = data.frame(time, group) require(boot) diff = function(d1,i){ d = d1[i,] Mean= tapply(X=d$time, INDEX=d$group, mean) Diff = Mean[1]-Mean[2] Diff } set.seed(1234) b3 = boot(data = sleep, statistic = diff, R = 5000, strata=sleep$group) pvalue = mean(abs(b3$t) > abs(b3$t0)) pvalue 两面自举的p值(pvalue)= 0.4804,但t.test的两面p值为0.04342。两个p值的差约为11倍。怎么会这样

1
自由度可以是非整数吗?
当我使用GAM时,它给了我剩余的DF为(代码的最后一行)。这意味着什么?超越GAM示例,通常,自由度可以是非整数吗?26.626.626.6 > library(gam) > summary(gam(mpg~lo(wt),data=mtcars)) Call: gam(formula = mpg ~ lo(wt), data = mtcars) Deviance Residuals: Min 1Q Median 3Q Max -4.1470 -1.6217 -0.8971 1.2445 6.0516 (Dispersion Parameter for gaussian family taken to be 6.6717) Null Deviance: 1126.047 on 31 degrees of freedom Residual Deviance: 177.4662 on 26.6 degrees of …
27 r  degrees-of-freedom  gam  machine-learning  pca  lasso  probability  self-study  bootstrap  expected-value  regression  machine-learning  linear-model  probability  simulation  random-generation  machine-learning  distributions  svm  libsvm  classification  pca  multivariate-analysis  feature-selection  archaeology  r  regression  dataset  simulation  r  regression  time-series  forecasting  predictive-models  r  mean  sem  lavaan  machine-learning  regularization  regression  conv-neural-network  convolution  classification  deep-learning  conv-neural-network  regression  categorical-data  econometrics  r  confirmatory-factor  scale-invariance  self-study  unbiased-estimator  mse  regression  residuals  sampling  random-variable  sample  probability  random-variable  convergence  r  survival  weibull  references  autocorrelation  hypothesis-testing  distributions  correlation  regression  statistical-significance  regression-coefficients  univariate  categorical-data  chi-squared  regression  machine-learning  multiple-regression  categorical-data  linear-model  pca  factor-analysis  factor-rotation  classification  scikit-learn  logistic  p-value  regression  panel-data  multilevel-analysis  variance  bootstrap  bias  probability  r  distributions  interquartile  time-series  hypothesis-testing  normal-distribution  normality-assumption  kurtosis  arima  panel-data  stata  clustered-standard-errors  machine-learning  optimization  lasso  multivariate-analysis  ancova  machine-learning  cross-validation 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.