Tutorials › Exam ASTAM - Advanced Short-Term Actuarial Mathematics › Integrated Workshop: Bootstrap Estimation With Actuarial Data

Exam ASTAM · Bootstrap and Simulation Inference · Tutorial 646 of 979

Integrated Workshop: Bootstrap Estimation With Actuarial Data

Practice choosing a policy-level resampling scheme, recomputing portfolio statistics, and assessing the uncertainty and limitations of bootstrap results.

Intermediate 11 min read

What You'll Learn

  • Identify the policy as the resampling unit when claim frequency and severities belong together.
  • Distinguish the observed portfolio estimate from its bootstrap replicates and bootstrap standard error.
  • Recompute a ratio statistic from resampled policy-level numerators and denominators.
  • Calculate percentile intervals using ordered bootstrap replicates and interpolation.
  • Diagnose skewness, outliers, and Monte Carlo instability in a bootstrap distribution.
  • Explain why empirical resampling cannot create unobserved tail events or repair an unsuitable sampling design.

Why the Resampling Unit Matters

Actuarial data often record a policy’s claim count alongside the severities of the claims on that policy. These pieces of information are not interchangeable rows: they jointly describe one policy’s experience. If the portfolio statistic concerns policy-level cost, resampling individual claims can discard zero-claim policies, change the frequency mix, and break the relationship between frequency and severity.

The nonparametric policy bootstrap treats the observed policies as the empirical population. It repeatedly samples policies with replacement, usually drawing the same number of policies as in the original data. Each selected policy brings its full record: exposure, claim count, and all associated claim amounts. The target statistic is then recomputed from each resampled portfolio.

Definition: Given \(n\) observed policy records, a policy-level bootstrap replicate is a sample of \(n\) records drawn with replacement from those \(n\) records. The bootstrap estimate \(\hat{\theta}^{*(b)}\) is the statistic calculated from replicate \(b\). With \(B\) replicates, the bootstrap distribution is the collection \(\hat{\theta}^{*(1)},\ldots,\hat{\theta}^{*(B)}\), conditional on the observed data.

The bootstrap is conditional on the data and its sampling scheme. It does not assert that the observed policies are a perfect description of every future portfolio. The examples below concern hypothetical policies and nominal dollar losses. No interest or mortality assumption is used, and no parametric frequency or severity distribution is imposed.

Resample Whole Policies, Then Recompute the Statistic

For policy \(i\), write \(N_i\) for claim frequency and \(X_{ij}\) for the amount of claim \(j\), where \(j=1,\ldots,N_i\). Its aggregate loss is \(L_i=\sum_{j=1}^{N_i}X_{ij}\), with \(L_i=0\) when \(N_i=0\). For equal-exposure policies, the sample mean aggregate loss is \(\hat{\theta}=\sum_{i=1}^{n}L_i/n\). A bootstrap replicate uses the same formula, but with the resampled policy records.

A policy-level resample retains the observed combination of frequency and severity within each selected record. It also retains zeros: if a policy has no claims, drawing that policy contributes zero aggregate loss. This is important when the estimand is a per-policy quantity rather than an average amount per claim.

Worked Example: Bootstrap Uncertainty for Mean Aggregate Loss

A hypothetical insurer studies four equal-exposure policies. Their annual claim records are: A has no claims; B has one claim of \(\$100\); C has claims of \(\$50\) and \(\$150\); D has one claim of \(\$500\). Estimate the mean aggregate loss per policy and illustrate a policy bootstrap with five specified replicates. There is no discounting or mortality model; use the empirical policy records without a parametric loss distribution.

Observed estimate. The policy aggregate losses are \(L_A=0\), \(L_B=100\), \(L_C=50+150=200\), and \(L_D=500\). Thus total loss is \(0+100+200+500=800\), and the observed mean is \(\hat{\theta}=800/4=\$200\) per policy.

Resample and calculate. Each replicate contains four policy records. For the five specified replicates:

  • \((A,A,B,C)\): total \(0+0+100+200=300\), so the mean is \(300/4=\$75\).
  • \((A,B,C,D)\): total \(0+100+200+500=800\), so the mean is \(800/4=\$200\).
  • \((B,B,C,D)\): total \(100+100+200+500=900\), so the mean is \(900/4=\$225\).
  • \((A,C,C,D)\): total \(0+200+200+500=900\), so the mean is \(900/4=\$225\).
  • \((B,C,D,D)\): total \(100+200+500+500=1{,}300\), so the mean is \(1{,}300/4=\$325\).

The bootstrap replicates are \(75,200,225,225,325\). Their average is \(1{,}050/5=\$210\). The estimated bootstrap standard error is the sample standard deviation of the five replicate statistics. Their deviations from 210 are \(-135,-10,15,15,115\), whose squared values sum to \(18{,}225+100+225+225+13{,}225=32{,}000\). Therefore the sample variance is \(32{,}000/(5-1)=8{,}000\), and the standard deviation is \(\sqrt{8{,}000}=\$89.44\) (rounded to cents).

This is a deliberately tiny illustration, not a stable uncertainty assessment: five replicates give a very rough estimate of the bootstrap spread. The method avoids treating the six individual claims as the sampling units when the target is mean loss per policy.

Why the Bootstrap Spread Estimates Sampling Variability

For the mean of independent, equally sampled policy outcomes, the reason the empirical bootstrap can estimate variability is visible directly from its conditional distribution. Let \(L_1,\ldots,L_n\) be the observed policy losses and \(\bar L\) their mean. A bootstrap draw \(L^*\) selects one of these observed values, each with probability \(1/n\). Consequently, its conditional mean is \(\bar L\), and its conditional variance is the empirical variance with divisor \(n\).

$$ E^*(\bar L^*)=\bar L,\qquad \operatorname{Var}^*(\bar L^*)=\frac{1}{n}\left\{\frac{1}{n}\sum_{i=1}^{n}(L_i-\bar L)^2\right\} =\frac{n-1}{n^2}s^2, \quad s^2=\frac{1}{n-1}\sum_{i=1}^{n}(L_i-\bar L)^2. $$

Here \(E^*\) and \(\operatorname{Var}^*\) refer to randomness from resampling conditional on the observed data. The derivation follows because a replicate mean averages \(n\) independent draws from the empirical distribution: its variance is the variance of one empirical draw divided by \(n\). In practice, the standard deviation across \(B\) simulated replicates estimates this conditional standard deviation. It is not the same thing as uncertainty about whether the observed policies represent the future population.

For a statistic other than a mean, such as a ratio, the statistic must be recalculated from each complete resampled data set. In general, the bootstrap distribution of a ratio is not obtained by separately bootstrapping a numerator and denominator and then combining unrelated results.

Worked Example: Resampling a Portfolio Loss Ratio

Three hypothetical policies have the following annual incurred losses and earned premiums, in dollars: policy A \((100,200)\), policy B \((300,300)\), and policy C \((0,100)\). The statistic is total incurred loss divided by total earned premium. Use four specified policy-level replicates to illustrate its bootstrap distribution. Amounts are nominal; no interest, mortality, or parametric distribution assumption is involved.

Observed ratio. Total loss is \(100+300+0=400\), and total premium is \(200+300+100=600\). Thus the observed loss ratio is \(400/600=0.6667\), or \(66.67\%\) (probabilities and ratios shown to four decimal places where applicable).

Replicate calculations. Keep each loss paired with its own premium, and calculate the ratio of totals in each resampled portfolio:

  • \((A,A,C)\): loss \(100+100+0=200\); premium \(200+200+100=500\); ratio \(200/500=0.4000\).
  • \((A,B,C)\): loss \(100+300+0=400\); premium \(200+300+100=600\); ratio \(400/600=0.6667\).
  • \((B,B,C)\): loss \(300+300+0=600\); premium \(300+300+100=700\); ratio \(600/700=0.8571\).
  • \((A,B,B)\): loss \(100+300+300=700\); premium \(200+300+300=800\); ratio \(700/800=0.8750\).

The mean of these four illustrative replicate ratios is \((0.4000+0.6667+0.8571+0.8750)/4=0.6997\), using unrounded values in the calculation. Their sample standard deviation is approximately \(0.2209\): the squared deviations from the unrounded mean \(0.6997024\) sum to approximately \(0.14643\), which, divided by \(4-1\) and square-rooted, gives \(0.22093\). With only four deliberately selected replicates, this is a computational illustration, not a reliable reported standard error. The essential method is to resample policy pairs and recompute the ratio of totals.

Intervals and Bootstrap Diagnostics

A percentile interval is formed by sorting the \(B\) replicate statistics and taking the desired lower and upper quantiles. One common interpolation convention for probability \(p\) uses position \(h=1+(B-1)p\). If \(h=j+g\), with integer \(j\) and \(0\leq g<1\), interpolate between ordered values \(z_{(j)}\) and \(z_{(j+1)}\): the quantile is \(z_{(j)}+g\{z_{(j+1)}-z_{(j)}\}\). Other software conventions can differ, so the convention should be stated.

Worked Example: Checking a Skewed Bootstrap Distribution

Suppose a hypothetical portfolio has observed estimate \(\hat{\theta}=100\), and a policy bootstrap produces the following eight ordered replicate statistics: \(80,85,90,95,100,110,130,220\). The statistic is measured in nominal dollars; there is no interest or mortality assumption and no parametric distribution is fitted. Use the stated interpolation convention to calculate a 90% percentile interval and assess the replicates.

Percentile endpoints. Here \(B=8\). For the 5th percentile, \(h=1+(8-1)(0.05)=1.35\). Interpolate 35% of the way from \(z_{(1)}=80\) to \(z_{(2)}=85\): \(80+0.35(85-80)=81.75\). For the 95th percentile, \(h=1+7(0.95)=7.65\). Interpolate 65% of the way from \(z_{(7)}=130\) to \(z_{(8)}=220\): \(130+0.65(220-130)=188.50\). The illustrative 90% percentile interval is therefore \([81.75,188.50]\).

Shape checks. The replicate mean is \((80+85+90+95+100+110+130+220)/8=910/8=113.75\), which is above the observed estimate of 100. The median is \((95+100)/2=97.5\). The isolated high value of 220 makes the upper tail much longer than the lower tail. These features suggest right skew and a potentially influential replicate. They should prompt inspection of which policy records generated that result, not automatic deletion of the replicate.

This interval is extremely unstable because it uses only eight replicates. In a real analysis, use enough replicates to make the relevant quantiles reasonably stable, and compare repeated runs or inspect the quantile estimates for Monte Carlo variability. A large number of replicates reduces simulation noise in the computed bootstrap summaries; it does not fix biased, dependent, or unrepresentative policy data.

Choosing and Checking the Scheme

The bootstrap unit should match the unit that was sampled and the dependence structure relevant to the estimand. If policies are independent sampling units and policy-level outcomes are the target, resample whole policy records. If policies are sampled under strata or distinct risk classes that must be preserved, resample within the appropriate groups rather than allowing the bootstrap to erase the design. If observations are dependent within a group, resampling individual rows as if independent may understate uncertainty; the group or another defensible dependence-preserving unit may be needed.

A useful workflow is to define the estimand first, verify that each record contains the information needed to calculate it, choose a resampling unit consistent with the data collection, and recompute the complete statistic in every replicate. Then inspect the bootstrap distribution for skewness, outliers, boundary values, and unstable endpoints. Report what was resampled, the number of replicates, the uncertainty summary, and relevant limitations.

1
Define the target.
Specify whether the statistic is, for example, mean aggregate loss per policy or a ratio of portfolio totals.
2
Choose the resampling unit.
For policy-level frequency-severity inference, preserve each policy’s count, claims, and other paired measurements together.
3
Recalculate in every replicate.
Apply the original statistic to each complete resampled portfolio, including its denominator when the target is a ratio.
4
Assess stability and scope.
Check the replicate distribution and explain which uncertainty sources the empirical resampling does not represent.

Common Traps and Limits

A frequent error is resampling claims as though they were independent policies. This can omit zero-claim policies and treats multiple claims from one policy as separate sampling units. For a per-policy aggregate-loss estimand, the correction is to resample policy records and retain every selected policy’s claim count and claim amounts.

Another error is to resample losses and premiums separately for a loss ratio. That breaks the observed pairing and can create artificial combinations. Resample the policy rows containing both values, then calculate total loss divided by total premium within each replicate. Likewise, do not mistake a small-bootstrap percentile for a precise interval: a few replicates can make endpoints highly sensitive to a single order statistic or interpolation choice.

Finally, an empirical bootstrap cannot generate values absent from the observed sample. If no policy in the data has a very large claim, ordinary resampling cannot reveal the possible size of such a claim. It also cannot correct systematic data errors, make a nonrepresentative portfolio representative, or reproduce dependence that the resampling scheme ignores. For rare events and tail estimates, the apparent precision of a bootstrap result can therefore be misleading. The uncertainty statement should be limited to what the observed policies and chosen resampling design can support.

Key takeaway: For policy-level frequency-severity data, resample complete policy records when policies are the independent sampling units. Recompute the portfolio statistic from each replicate, diagnose its distribution, and distinguish conditional bootstrap variability from limitations in the data or model.

Check Your Understanding

For each question, identify the relevant resampling calculation or limitation before checking the answer.

  1. Three equal-exposure policies have aggregate losses \(\$0,\$40,\$80\). One bootstrap replicate draws all three policies once each. What is its mean aggregate loss? (Answer: \(\$40\) per policy.)
  2. Four observed policy outcomes are \(10,20,30,40\). A replicate draws \(10,10,30,40\). Calculate the replicate mean. (Answer: \(22.5\).)
  3. Four ordered bootstrap statistics are \(12,18,21,29\). Using \(h=1+(B-1)p\) with linear interpolation, calculate the 50th percentile. (Answer: \(19.5\).)
  4. Policy records are (loss, premium): \((0,100),(120,200),(180,300)\). A replicate draws the first policy and the second policy twice. What is its ratio of total loss to total premium? (Answer: \(240/500=0.4800\).)
  5. A sample of policies contains no claims above \(\$50{,}000\). Can ordinary empirical policy resampling estimate the possible severity of claims exceeding \(\$1{,}000{,}000\)? State the central limitation. (Answer: No; resampling cannot generate an unobserved tail claim amount.)
Clinical Biostats