Skip to content
Source Separation Lab

Step 05Added in 2026 · bias and variance

What the penalty buys and costs

In 2021 I wrote that a penalty “will increase the bias to decrease the variance”. Because the data are simulated, that sentence can be measured. Refit every estimator on many noisy copies of the same sources and split its error into a systematic part and a part that changes with the noise.

Write θ^r\hat\theta_r for the retrieved maps (or time courses) in realisation rr, θˉ\bar\theta for their average over RR realisations and θ∗\theta^\ast for the target. Summed over every entry, the mean squared error splits exactly into two parts:

1R∑r∥θ^r−θ∗∥2⏟MSE=∥θˉ−θ∗∥2⏟bias2+1R∑r∥θ^r−θˉ∥2⏟variance\begin{aligned} \underbrace{\frac1R\sum_r \lVert \hat\theta_r - \theta^\ast\rVert^2}_{\text{MSE}} &= \underbrace{\lVert \bar\theta - \theta^\ast \rVert^2}_{\text{bias}^2} \\ &\quad + \underbrace{\frac1R \sum_r \lVert \hat\theta_r - \bar\theta \rVert^2}_{\text{variance}} \end{aligned}

The target is what the same pipeline returns without noise. Standardise X0=TC⋅SMX_0 = \mathrm{TC}\cdot\mathrm{SM} and regress it on the time courses, giving A∗=(D⊤D)−1D⊤X0A^\ast = (D^\top D)^{-1}D^\top X_0, which works out as the true maps scaled by N/(N−1)\sqrt{N/(N-1)}, and D∗=X0A∗⊤D^\ast = X_0 A^{\ast\top}. Errors are divided by ∥θ∗∥2\lVert\theta^\ast\rVert^2, so 1.0 means an error as large as the target itself, which is exactly what you get by returning all zeros. The MSE carries a 95% interval over realisations. Bias² and variance are shown as point estimates of its two parts. Averaging only RR realisations leaves noise in θˉ\bar\theta, which inflates the plug-in bias² by about tr⁡Σ/R\operatorname{tr}\Sigma / R, where Σ\Sigma is the covariance of θ^r\hat\theta_r. The table also gives a debiased bias², ∥θˉ−θ∗∥2−∑ese2/R\lVert \bar\theta - \theta^\ast\rVert^2 - \sum_e s_e^2 / R, with se2s_e^2 the sample variance of entry ee across realisations.

Every estimator and penalty is fitted to the same datasets (common random numbers), so the curves differ only because the estimators differ. Realisation 1 is the dataset from step 1. The full design, and why the lasso here comes in two versions, are on the methods page.

Using the 2021 parameters. Results match the report.

Realisations50

Noise seed 30034. Realisation 1 is the dataset from step 1. Every estimator and penalty sees the same datasets.

What is being estimated

Errors are relative to the noise-free target, so 1.0 is an error as large as the target itself.

Figure 5.1

Ridge: bias² and variance of the spatial maps as λ grows

  • MSE (with 95% interval)
  • Bias²
  • Variance
  • Least squares MSE
Running the Monte-Carlo…
Computing…

Figure 5.2

Lasso: bias² and variance of the spatial maps as ρ grows

  • MSE (with 95% interval)
  • Bias²
  • Variance
  • Least squares MSE
Running the Monte-Carlo…
Computing…

Optional. Needs your own Anthropic or OpenAI key, and sends only the instructions and figure summary shown below.

Next · Step 06

Recovery

Per-source recovery with intervals, the 2021 claims re-checked, and a noise sensitivity map.