Bootstrapping populations

From HandWiki
Revision as of 12:52, 24 October 2022 by John Marlo (talk | contribs) (fixing)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Bootstrapping populations in statistics and mathematics starts with a sample [math]\displaystyle{ \{x_1,\ldots,x_m\} }[/math] observed from a random variable.

When X has a given distribution law with a set of non fixed parameters, we denote with a vector [math]\displaystyle{ \boldsymbol\theta }[/math], a parametric inference problem consists of computing suitable values – call them estimates – of these parameters precisely on the basis of the sample. An estimate is suitable if replacing it with the unknown parameter does not cause major damage in next computations. In Algorithmic inference, suitability of an estimate reads in terms of compatibility with the observed sample.

In this framework, resampling methods are aimed at generating a set of candidate values to replace the unknown parameters that we read as compatible replicas of them. They represent a population of specifications of a random vector [math]\displaystyle{ \boldsymbol\Theta }[/math] [1] compatible with an observed sample, where the compatibility of its values has the properties of a probability distribution. By plugging parameters into the expression of the questioned distribution law, we bootstrap entire populations of random variables compatible with the observed sample.

The rationale of the algorithms computing the replicas, which we denote population bootstrap procedures, is to identify a set of statistics [math]\displaystyle{ \{s_1,\ldots,s_k\} }[/math] exhibiting specific properties, denoting a well behavior, w.r.t. the unknown parameters. The statistics are expressed as functions of the observed values [math]\displaystyle{ \{x_1,\ldots,x_m\} }[/math], by definition. The [math]\displaystyle{ x_i }[/math] may be expressed as a function of the unknown parameters and a random seed specification [math]\displaystyle{ z_i }[/math] through the sampling mechanism [math]\displaystyle{ (g_{\boldsymbol\theta},Z) }[/math], in turn. Then, by plugging the second expression in the former, we obtain [math]\displaystyle{ s_j }[/math] expressions as functions of seeds and parameters – the master equations – that we invert to find values of the latter as a function of: i) the statistics, whose values in turn are fixed at the observed ones; and ii) the seeds, which are random according to their own distribution. Hence from a set of seed samples we obtain a set of parameter replicas.

Method

Given a [math]\displaystyle{ \boldsymbol x=\{x_1,\ldots,x_m\} }[/math] of a random variable X and a sampling mechanism [math]\displaystyle{ (g_{\boldsymbol\theta},Z) }[/math] for X, the realization x is given by [math]\displaystyle{ \boldsymbol x=\{g_{\boldsymbol\theta}(z_1),\ldots,g_{\boldsymbol\theta}(z_m)\} }[/math], with [math]\displaystyle{ \boldsymbol\theta=(\theta_1,\ldots,\theta_k) }[/math]. Focusing on well-behaved statistics,

[math]\displaystyle{ s_1=h_1(x_1,\ldots,x_m), }[/math]
  [math]\displaystyle{ \vdots\ \ \ \ \ \ \ \ \ \ \ \ \ \ \vdots }[/math]
[math]\displaystyle{ s_k=h_k(x_1,\ldots,x_m), }[/math]

for their parameters, the master equations read

[math]\displaystyle{ s_1= h_1(g_{\boldsymbol\theta} (z_1),\ldots, g_{\boldsymbol\theta} (z_m))= \rho_1(\boldsymbol\theta;z_1,\ldots,z_m) }[/math]
  [math]\displaystyle{ \vdots\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \vdots \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \vdots }[/math] (1)
[math]\displaystyle{ s_k= h_k(g_{\boldsymbol\theta} (z_1),\ldots, g_{\boldsymbol\theta} (z_m))= \rho_k(\boldsymbol\theta;z_1,\ldots,z_m). }[/math]

For each sample seed [math]\displaystyle{ \{z_1,\ldots,z_m\} }[/math] a vector of parameters [math]\displaystyle{ \boldsymbol\theta }[/math] is obtained from the solution of the above system with [math]\displaystyle{ s_i }[/math] fixed to the observed values. Having computed a huge set of compatible vectors, say N, the empirical marginal distribution of [math]\displaystyle{ \Theta_j }[/math] is obtained by:

[math]\displaystyle{ \widehat F_{\Theta_j}(\theta)=\sum_{i=1}^N\frac{1}{N}I_{(-\infty,\theta]}(\breve\theta_{j,i}) }[/math] (2)

where [math]\displaystyle{ \breve\theta_{j,i} }[/math] is the j-th component of the generic solution of (1) and where [math]\displaystyle{ I_{(-\infty,\theta]}(\breve\theta_{j,i}) }[/math] is the indicator function of [math]\displaystyle{ \breve\theta_{j,i} }[/math] in the interval [math]\displaystyle{ (-\infty,\theta]. }[/math] Some indeterminacies remain if X is discrete and this we will be considered shortly. The whole procedure may be summed up in the form of the following Algorithm, where the index [math]\displaystyle{ \boldsymbol\Theta }[/math] of [math]\displaystyle{ \boldsymbol s_{\boldsymbol\Theta} }[/math] denotes the parameter vector from which the statistics vector is derived.

Algorithm

Generating parameter populations through a bootstrap
Given a sample [math]\displaystyle{ \{x_1,\ldots,x_m\} }[/math] from a random variable with parameter vector [math]\displaystyle{ \boldsymbol\theta }[/math] unknown,
  1. Identify a vector of well-behaved statistics [math]\displaystyle{ \boldsymbol S }[/math] for [math]\displaystyle{ \boldsymbol\Theta }[/math];
  2. compute a specification [math]\displaystyle{ \boldsymbol s_{\boldsymbol\Theta} }[/math] of [math]\displaystyle{ \boldsymbol S }[/math] from the sample;
  3. repeat for a satisfactory number N of iterations:
    • draw a sample seed [math]\displaystyle{ \breve{\boldsymbol z}_i }[/math] of size m from the seed random variable;
    • get [math]\displaystyle{ \breve{\boldsymbol\theta}_i=\mathrm{Inv}(\boldsymbol s,\boldsymbol z_i) }[/math] as a solution of (1) in θ with [math]\displaystyle{ \boldsymbol s=\boldsymbol s_{\boldsymbol\Theta} }[/math] and [math]\displaystyle{ \boldsymbol z_i = \{\breve z_1,\ldots,\breve z_m\} }[/math];
    • add [math]\displaystyle{ \breve{\boldsymbol\theta}_i }[/math] to [math]\displaystyle{ \boldsymbol\Theta }[/math]; population.
Cumulative distribution function of the parameter Λ of an Exponential random variable when statistic [math]\displaystyle{ s_\Lambda=6.36 }[/math]
Cumulative distribution function of the parameter A of a uniform continuous random variable when statistic [math]\displaystyle{ s_A=9.91 }[/math]

You may easily see from a table of sufficient statistics that we obtain the curve in the picture on the left by computing the empirical distribution (2) on the population obtained through the above algorithm when: i) X is an Exponential random variable, ii) [math]\displaystyle{ s_\Lambda= \sum_{j=1}^m x_j }[/math], and

[math]\displaystyle{ \text{ iii) Inv}(s_\Lambda,\boldsymbol u_i) =\sum_{j=1}^m(-\log u_{ij})/s_\Lambda }[/math],

and the curve in the picture on the right when: i) X is a Uniform random variable in [math]\displaystyle{ [0,a] }[/math], ii) [math]\displaystyle{ s_A= \max_{j=1, \ldots, m} x_j }[/math], and

[math]\displaystyle{ \text{iii) Inv}(s_A,\boldsymbol u_i) =s_A/\max_{j=1,\ldots,m}\{u_{ij}\} }[/math].

Remark

Note that the accuracy with which a parameter distribution law of populations compatible with a sample is obtained is not a function of the sample size. Instead, it is a function of the number of seeds we draw. In turn, this number is purely a matter of computational time but does not require any extension of the observed data. With other bootstrapping methods focusing on a generation of sample replicas (like those proposed by (Efron Tibshirani)) the accuracy of the estimate distributions depends on the sample size.

Example

For [math]\displaystyle{ \boldsymbol x }[/math] expected to represent a Pareto distribution, whose specification requires values for the parameters [math]\displaystyle{ a }[/math] and k,[2] we have that the cumulative distribution function reads:

Joint empirical cumulative distribution function of parameters [math]\displaystyle{ (A,K) }[/math] of a Pareto random variable when [math]\displaystyle{ m=30, s_1=83.24 }[/math] and [math]\displaystyle{ s_{2}=8.37 }[/math] based on 5,000 replicas.
[math]\displaystyle{ F_X(x)=1-\left(\frac{k}{x}\right)^a }[/math].

A sampling mechanism [math]\displaystyle{ (g_{(a,k)}, U) }[/math] has [math]\displaystyle{ [0,1] }[/math] uniform seed U and explaining function [math]\displaystyle{ g_{(a,k)} }[/math] described by:

[math]\displaystyle{ x= g_{(a,k)}=(1 - u)^{-\frac{1}{a}} k }[/math]

A relevant statistic [math]\displaystyle{ \boldsymbol s_\boldsymbol\Theta }[/math] is constituted by the pair of joint sufficient statistics for [math]\displaystyle{ A }[/math] and K, respectively [math]\displaystyle{ s_1=\sum_{i=1}^m \log x_i, s_{2}=\min\{x_i\} }[/math]. The master equations read

[math]\displaystyle{ s_1=\sum_{i=1}^m -\frac{1}{a}\log(1 - u_i)+m \log k }[/math]
[math]\displaystyle{ s_{2}=(1 - u_{\min})^{-\frac{1}{a}} k }[/math]

with [math]\displaystyle{ u_{\min}=\min\{u_i\} }[/math].

Figure on the right reports the three-dimensional plot of the empirical cumulative distribution function (2) of [math]\displaystyle{ (A,K) }[/math].

Notes

  1. By default, capital letters (such as U, X) will denote random variables and small letters (u, x) their corresponding realizations.
  2. We denote here with symbols a and k the Pareto parameters elsewhere indicated through k and [math]\displaystyle{ x_{\mathrm{min}} }[/math].

References

  • Efron, B.; Tibshirani, R. (1993). An introduction to the Bootsrap. Freeman, New York: Chapman and Hall. 
  • Apolloni, B.; Malchiodi, D.; Gaito, S. (2006). Algorithmic Inference in Machine Learning. International Series on Advanced Intelligence. 5 (2nd ed.). Adelaide: Magill. "Advanced Knowledge International" 
  • Apolloni, B.; Bassis, S.; Gaito. S.; Malchiodi, D. (2007). "Appreciation of medical treatments by learning underlying functions with good confidence". Current Pharmaceutical Design 13 (15): 1545–1570. doi:10.2174/138161207780765891. PMID 17504150.