From b6ac4a97dde433e974d48a34f72b75c710f72281 Mon Sep 17 00:00:00 2001 From: Phillip Alday Date: Wed, 5 Jul 2023 10:12:58 -0500 Subject: [PATCH] text tweak --- docs/src/bootstrap.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/src/bootstrap.md b/docs/src/bootstrap.md index ef71112cc..dbdacf4f7 100644 --- a/docs/src/bootstrap.md +++ b/docs/src/bootstrap.md @@ -167,8 +167,8 @@ count(issingular(samp2)) ## Reduced Precision Bootstrap -`parametricbootstrap` accepts an optional keyword argument `optsum_overrides`, which can be used to override the convergence criteria for bootstrap replicates. One possibility is setting `ftol_rel=1e-8`, i.e., considering the model converged when the relative change in the objective between optimizer iterations is smaller than 0.00000001. -This threshold corresponds approximately to the precision from treating the value of the objective as a single precision (`Float32`) number, while not changing the precision of the intermediate computations. +`parametricbootstrap` accepts an optional keyword argument `optsum_overrides`, which can be used to override the convergence criteria for bootstrap replicates. One possibility is setting `ftol_rel=1e-8`, i.e., considering the model converged when the relative change in the objective between optimizer iterations is smaller than 0.00000001. +This threshold corresponds approximately to the precision from treating the value of the objective as a single precision (`Float32`) number, while not changing the precision of the intermediate computations. The resultant loss in precision will generally be smaller than the variation that the bootstrap captures, but can greatly speed up the fitting process for each replicates, especially for large models. More directly, lowering the fit quality for each replicate will reduce the quality of each replicate, but this may be more than compensated for by the ability to fit a much larger number of replicates in the same time. @@ -185,7 +185,7 @@ t.time ## Distributed Computing and the Bootstrap -Earlier versions of mixed models supported a multi-threaded bootstrap via the `use_threads` kwarg. +Earlier versions of MixedModels.jl supported a multi-threaded bootstrap via the `use_threads` keyword argument. However, with improved BLAS multithreading, the Julia-level threads often wound up competing with the BLAS threads, leading to no improvement or even a worsening of performance when `use_threads=true`. Nonetheless, the bootstrap is a classic example of an [embarrassingly parallel](https://en.wikipedia.org/wiki/Embarrassingly_parallel) problem and so we provide a few convenience methods for combining results computed separately. In particular, there are `vcat` and an optimized `reduce(::typeof(vcat))` methods for `MixedModelBootstrap` objects.