Stability Selection Figs 5-6 - Per-Cell Power Readings

Summary

The paper’s main power evidence is two bar charts. Fig. 5 covers Lasso regression. Fig. 6 covers logistic-Lasso classification and OMP regression. The paper gives no numbers for either. This note transcribes approximate values for every cell, read off the plots at 400 dpi: bar tops measured by pixel and checked by eye, crosses read by eye. Each cell has three values: the base method (dark red bar), stability selection with subsampling (light grey bar), and stability selection with subsampling plus randomisation (black ×; Lasso , OMP ). The measure is P(the first variables are all correct), for and .

  • Fig. 5 (Lasso regression). Stability selection is never visibly below the Lasso. Averaged over the 60 cells in the plot, the readings are Lasso 0.40, SS 0.63 and SS+rand 0.67 at . At they are 0.20, 0.32 and 0.31.
  • Fig. 6 (classification and OMP). The pattern is mostly the same, but with visible exceptions where the base method wins. These cells are listed below. The paper’s summary sentence does not mention them.

Overview

How to read the tables.

  • Values are fractions in [0, 1] and are accurate to about ±0.03.
  • Bars that reach the top line are recorded as 1. The pixel reading can show 0.99 for the same full-height bar, so 0.97-1 should be treated as “at the ceiling”.
  • 0 means no visible bar or cross.
  • “SS” is stability selection with subsampling only. “SS+rand” adds randomisation of the base method.
  • Column order follows the figure header (see designs). Within each , the left bar pair is the harder noise level: SNR 0.5 (or Bayes error 1/3), then SNR 2 (or Bayes error 1/8).

Cell count

Each panel row of Figs 5-6 shows 60 bar pairs: 8 each for (A), (B), (C) and (F), 12 each for (D) and (E), and 4 for (G). The caption of Fig. 5 and the text (p. 19) say “64 different settings” / “64 scenarios”. The ingester counted 60 plotted cells. The remaining 4 may be settings that were run but not plotted, or the count may be a typo.

Main Content

Fig. 5 - Lasso regression (p. 17)

Columns: Lasso / SS / SS+randomised Lasso (), for and .

(A)

BlockSNRLasso 0.1sSS 0.1sSS+rand 0.1sLasso 0.4sSS 0.4sSS+rand 0.4s
p=1000, n=10040.5.93.92.95.44.42.39
p=1000, n=100421.991.89.91.88
p=1000, n=100100.5.45.55.56000
p=1000, n=100102.93.97.95.37.38.31
p=1000, n=1000200.51.991.96.991
p=1000, n=10002021.9911.991
p=1000, n=1000500.5.88.97.980.08.05
p=1000, n=10005021.991.98.991

(B)

BlockSNRLasso 0.1sSS 0.1sSS+rand 0.1sLasso 0.4sSS 0.4sSS+rand 0.4s
p=1000, n=20040.5.91.93.94.58.63.60
p=1000, n=200421.991.95.95.97
p=1000, n=200100.5.55.76.770.02.02
p=1000, n=200102.87.991.24.75.76
p=1000, n=1000200.5.72.94.980.31.24
p=1000, n=1000202.97.991.44.991
p=1000, n=1000500.50.05.10000
p=1000, n=1000502.13.85.90000

(C)

BlockSNRLasso 0.1sSS 0.1sSS+rand 0.1sLasso 0.4sSS 0.4sSS+rand 0.4s
p=1000, n=20040.5.17.20.150.02.02
p=1000, n=20042.30.51.45.05.10.11
p=1000, n=200100.5.05.11.04000
p=1000, n=200102.10.24.20000
p=1000, n=1000200.500.05000
p=1000, n=10002020.13.13000
p=1000, n=1000500.5000000
p=1000, n=1000502000000

(D)

BlockSNRLasso 0.1sSS 0.1sSS+rand 0.1sLasso 0.4sSS 0.4sSS+rand 0.4s
p=100, n=200100.5.43.91.95.05.24.25
p=100, n=200102.6211.30.85.85
p=100, n=200300.5.29.66.66000
p=100, n=200302.36.97.97.05.09.09
p=1000, n=20040.5.53.78.74.15.28.24
p=1000, n=20042.76.98.99.47.82.77
p=1000, n=200100.5.31.80.740.03.04
p=1000, n=200102.56.991.10.60.48
p=1000, n=1000200.5.36.991.07.33.25
p=1000, n=1000202.3911.36.91.95
p=1000, n=1000500.5.13.76.73000
p=1000, n=1000502.14.991.01.29.20

(E)

BlockSNRLasso 0.1sSS 0.1sSS+rand 0.1sLasso 0.4sSS 0.4sSS+rand 0.4s
p=200, n=200100.5.18.57.60000
p=200, n=200102.22.61.940.05.21
p=200, n=200300.50.07.05000
p=200, n=2003020.07.25000
p=1000, n=20040.5.35.58.38.01.05.02
p=1000, n=20042.39.80.96.07.43.56
p=1000, n=200100.5.09.28.29000
p=1000, n=200102.08.56.7800.05
p=1000, n=1000200.5.01.14.51000
p=1000, n=1000202.01.24.9500.05
p=1000, n=1000500.5000000
p=1000, n=100050200.09000

(F)

BlockSNRLasso 0.1sSS 0.1sSS+rand 0.1sLasso 0.4sSS 0.4sSS+rand 0.4s
p=660, n=258740.51.991.99.991
p=660, n=2587421.9911.991
p=660, n=2587100.5.74.991.4911
p=660, n=2587102.92.991.69.991
p=660, n=2587200.5.07.9810.31.32
p=660, n=2587202.13.9910.97.99
p=660, n=2587500.50.02.07000
p=660, n=25875020.24.68000

(G)

BlockSNRLasso 0.1sSS 0.1sSS+rand 0.1sLasso 0.4sSS 0.4sSS+rand 0.4s
p=4088, n=11540.5.20.31.240.02.01
p=4088, n=11542.48.79.71.08.22.16
p=4088, n=115100.5.04.06.06000
p=4088, n=115102.18.47.47000

What the Fig. 5 numbers show

  • (A) independent design. At every cell has all three methods within about 0.1 of each other. The two near-zero cells are at : (, , SNR 0.5), where all three are 0, and (, , SNR 0.5), where the Lasso is 0 and SS is about 0.08. The earlier summary “about equal and often near 1” holds only for the easier cells.
  • (B) block design. The largest gains are at (, , SNR 2) for (Lasso 0.13 against SS 0.85 and SS+rand 0.90) and at (, , SNR 2) for (0.44 against 0.99).
  • (C) Toeplitz, . Every cell is at or below 0.51. The row is essentially 0 everywhere except (, , SNR 2): 0.05, 0.10, 0.11.
  • (D) 2-factor model. SS more than doubles the Lasso in most cells. Example: (, , , SNR 2) at is 0.14 against 0.99.
  • (E) 10-factor model, many irrepresentable violations. This is where the randomised version stands out. At the crosses reach about 0.94-0.96 while the grey bars are 0.24-0.80 and the Lasso is ≤0.39. Example: (, , , SNR 2) is Lasso 0.01, SS 0.24, SS+rand 0.95. At the only clear non-zero cell is (, , , SNR 2): 0.07, 0.43, 0.56.
  • (F) motif regression. Lasso and SS are both about 1 at and . At , SS stays near 1 while the Lasso falls to 0.07-0.13. At the Lasso is 0. SS is 0.02 and 0.24, and SS+rand reaches 0.07 and 0.68 (SNR 2).
  • (G) riboflavin. The randomised cross is not uniformly best here. At (, SNR 2), , SS 0.79 is above SS+rand 0.71, and both are well above the Lasso at 0.48. At all methods are ≤0.22.

Fig. 6 - Logistic-Lasso classification (p. 18, top two rows)

Same layout. The noise level is the Bayes misclassification rate: 1/3 (harder) or 1/8. Columns: Lasso / SS / SS+randomised Lasso ().

(A)

BlockBayes errLasso 0.1sSS 0.1sSS+rand 0.1sLasso 0.4sSS 0.4sSS+rand 0.4s
p=1000, n=10041/3.38.44.49.09.06.07
p=1000, n=10041/8.9911.88.94.94
p=1000, n=100101/3.20.26.22000
p=1000, n=100101/8.92.96.93.11.09.10
p=1000, n=1000201/3.95.98.98.26.25.21
p=1000, n=1000201/81.9911.49.88
p=1000, n=1000501/3.31.54.51000
p=1000, n=1000501/81.991.71.12.13

(B)

BlockBayes errLasso 0.1sSS 0.1sSS+rand 0.1sLasso 0.4sSS 0.4sSS+rand 0.4s
p=1000, n=20041/3.66.66.68.18.20.18
p=1000, n=20041/8111.86.96.97
p=1000, n=200101/3.28.37.40000
p=1000, n=200101/8.73.981.09.55.57
p=1000, n=1000201/3.28.45.43000
p=1000, n=1000201/8.89.99.92.18.03.02
p=1000, n=1000501/3000000
p=1000, n=1000501/8.07.12.10000

(C)

BlockBayes errLasso 0.1sSS 0.1sSS+rand 0.1sLasso 0.4sSS 0.4sSS+rand 0.4s
p=1000, n=20041/3.05.02.03000
p=1000, n=20041/8.22.47.41.04.10.05
p=1000, n=200101/3.04.03.04000
p=1000, n=200101/8.09.21.22000
p=1000, n=1000201/3.02.02.04000
p=1000, n=1000201/8.02.02.04000
p=1000, n=1000501/3000000
p=1000, n=1000501/8000000

(D)

BlockBayes errLasso 0.1sSS 0.1sSS+rand 0.1sLasso 0.4sSS 0.4sSS+rand 0.4s
p=100, n=200101/3.43.71.71.02.04.05
p=100, n=200101/8.6111.25.67.64
p=100, n=200301/3.23.34.34000
p=100, n=200301/8.32.78.840.03.03
p=1000, n=20041/3.37.48.44.07.07.08
p=1000, n=20041/8.73.99.98.37.82.76
p=1000, n=200101/3.22.37.38000
p=1000, n=200101/8.52.99.95.04.29.23
p=1000, n=1000201/3.21.27.27000
p=1000, n=1000201/8.31.32.27.19.02.02
p=1000, n=1000501/3.04.03.03000
p=1000, n=1000501/8.26.09.10000

(E)

BlockBayes errLasso 0.1sSS 0.1sSS+rand 0.1sLasso 0.4sSS 0.4sSS+rand 0.4s
p=200, n=200101/3.17.38.39000
p=200, n=200101/8.16.63.810.06.09
p=200, n=200301/3000000
p=200, n=200301/8.03.09.17000
p=1000, n=20041/3.15.20.13.01.01.01
p=1000, n=20041/8.39.80.88.02.30.38
p=1000, n=200101/3.08.08.07000
p=1000, n=200101/8.11.37.5100.01
p=1000, n=1000201/3.01.010000
p=1000, n=1000201/8000000
p=1000, n=1000501/3000000
p=1000, n=1000501/8000000

(F)

BlockBayes errLasso 0.1sSS 0.1sSS+rand 0.1sLasso 0.4sSS 0.4sSS+rand 0.4s
p=660, n=258741/3.9911.97.991
p=660, n=258741/81111.991
p=660, n=2587101/3.7311.15.85.81
p=660, n=2587101/8.8811.52.991
p=660, n=2587201/3.13.80.840.07.03
p=660, n=2587201/8.26110.931
p=660, n=2587501/30.02.04000
p=660, n=2587501/80.10.60000

(G)

BlockBayes errLasso 0.1sSS 0.1sSS+rand 0.1sLasso 0.4sSS 0.4sSS+rand 0.4s
p=4088, n=11541/3.04.05.07000
p=4088, n=11541/8.38.60.54.06.20.11
p=4088, n=115101/3.03.05.05000
p=4088, n=115101/8.08.28.25000

Classification: where the logistic Lasso beats stability selection

These are cells where the base method is more than 0.05 above both stability-selection variants:

  • (A), , , Bayes 1/8, : Lasso about 1.0, SS about 0.49, SS+rand about 0.88.
  • (A), , , Bayes 1/8, : Lasso about 0.71, SS about 0.12, SS+rand about 0.13.
  • (B), , , Bayes 1/8, : Lasso 0.18, SS 0.03, SS+rand 0.02.
  • (D), , , , Bayes 1/8, : 0.19 / 0.02 / 0.02.
  • (D), , , , Bayes 1/8, : 0.26 / 0.09 / 0.10.

All five are large-, , low-noise cells. The gains elsewhere are large. In (F) at , Bayes 1/3, the Lasso is 0.13 against SS 0.80 at , and at the Lasso is 0 against SS 0.93 (Bayes 1/8). In (E), the randomised cross is again above both bars, e.g. 0.81 against 0.63 and 0.16.

Fig. 6 - OMP regression (p. 18, bottom two rows)

Same layout as Fig. 5. Columns: OMP / SS (subsampled OMP) / SS+ROMP (randomised OMP, ).

(A)

BlockSNROMP 0.1sSS 0.1sSS+ROMP 0.1sOMP 0.4sSS 0.4sSS+ROMP 0.4s
p=1000, n=10040.5.90.93.93.52.27.31
p=1000, n=100421.991.99.981
p=1000, n=100100.5.33.21.31000
p=1000, n=100102.96.96.90.46.13.23
p=1000, n=1000200.51.991.95.90.97
p=1000, n=10002021.9911.991
p=1000, n=1000500.5.88.93.9400.02
p=1000, n=10005021.9911.991

(B)

BlockSNROMP 0.1sSS 0.1sSS+ROMP 0.1sOMP 0.4sSS 0.4sSS+ROMP 0.4s
p=1000, n=20040.5.93.991.65.63.59
p=1000, n=200421.991.99.99.97
p=1000, n=200100.5.30.45.4000.01
p=1000, n=200102.91.991.31.46.40
p=1000, n=1000200.5.72.93.92.04.07.04
p=1000, n=1000202.98.991.91.96.98
p=1000, n=1000500.5.0100000
p=1000, n=1000502.20.89.84000

(C)

BlockSNROMP 0.1sSS 0.1sSS+ROMP 0.1sOMP 0.4sSS 0.4sSS+ROMP 0.4s
p=1000, n=20040.5.14.06.03000
p=1000, n=20042.27.28.07.0700
p=1000, n=200100.5000000
p=1000, n=200102.0100000
p=1000, n=1000200.5000000
p=1000, n=1000202000000
p=1000, n=1000500.5000000
p=1000, n=1000502000000

(D)

BlockSNROMP 0.1sSS 0.1sSS+ROMP 0.1sOMP 0.4sSS 0.4sSS+ROMP 0.4s
p=100, n=200100.5.62.81.80.12.07.08
p=100, n=200102.7611.57.67.67
p=100, n=200300.5.12.18.15000
p=100, n=200302.52.73.72.0100
p=1000, n=20040.5.74.76.75.45.40.38
p=1000, n=20042.74.97.98.63.75.72
p=1000, n=200100.5.26.36.31000
p=1000, n=200102.62.95.90.33.26.31
p=1000, n=1000200.5.50.84.85.06.03.02
p=1000, n=1000202.71.991.61.75.74
p=1000, n=1000500.5.14.18.18000
p=1000, n=1000502.42.991.08.08.11

(E)

BlockSNROMP 0.1sSS 0.1sSS+ROMP 0.1sOMP 0.4sSS 0.4sSS+ROMP 0.4s
p=200, n=200100.5.12.09.14000
p=200, n=200102.07.55.580.03.04
p=200, n=200300.5000000
p=200, n=200302.04.09.06000
p=1000, n=20040.5.23.21.20.06.02.02
p=1000, n=20042.53.77.72.19.23.22
p=1000, n=200100.5.0100000
p=1000, n=200102.03.19.2200.03
p=1000, n=1000200.50.01.06000
p=1000, n=10002020.37.6600.01
p=1000, n=1000500.5000000
p=1000, n=10005020.08.15000

(F)

BlockSNROMP 0.1sSS 0.1sSS+ROMP 0.1sOMP 0.4sSS 0.4sSS+ROMP 0.4s
p=660, n=258740.51.9911.991
p=660, n=2587421.9911.991
p=660, n=2587100.5.97.991.91.89.96
p=660, n=25871021.991111
p=660, n=2587200.5.58.96.97.15.14.13
p=660, n=2587202.89.991.89.98.99
p=660, n=2587500.5000000
p=660, n=2587502.06.66.67000

(G)

BlockSNROMP 0.1sSS 0.1sSS+ROMP 0.1sOMP 0.4sSS 0.4sSS+ROMP 0.4s
p=4088, n=11540.5.3000.0200
p=4088, n=11542.52.30.25.280.01
p=4088, n=115100.5000000
p=4088, n=115102.0200000

OMP: size of the subsampling and ROMP effects

  • Gains.
    • (B) (, , SNR 2), : OMP 0.20 against SS 0.89 and ROMP 0.84.
    • (D) (, , , SNR 2), : 0.42 against 0.99 and 1.
    • (F) (, SNR 2), : 0.06 against 0.66 and 0.67.
    • (E) (, , , SNR 2), : 0 against SS 0.37 and ROMP 0.66. This is the clearest cell where added randomisation helps beyond subsampling.
  • Where ROMP adds little. In most cells the ROMP cross sits on or just below the grey bar, i.e. within ±0.05. The mild weakness changes the greedy path only slightly.
  • Where OMP beats stability selection.
    • (A) (, , SNR 0.5), : OMP about 0.52 against SS 0.27 and ROMP 0.31.
    • (A) (, , SNR 2), : 0.46 against 0.13 and 0.23.
    • (G) (), : OMP 0.30 against 0 (SNR 0.5), and 0.52 against 0.30 and 0.25 (SNR 2).
    • (G) (, SNR 2), : 0.28 against 0 and 0.01.
    • (C) (), (SNR 0.5): 0.14 against 0.06 and 0.03.
  • Averages over the 60 cells. At : OMP 0.43, SS 0.53, ROMP 0.53. At : 0.27, 0.26, 0.27. For OMP the overall advantage of stability selection is much smaller than for the Lasso, and at it disappears on average.

Reading against the paper's summary

The §4 text (p. 20) says that stability selection finds “as many or more correct variables than the underlying method itself in all cases except for scenario (A)“. The readings support this for Fig. 5. For Fig. 6 they show exceptions outside (A): classification in (B) and (D), and OMP in (C) and (G). The exceptions are concentrated at and in the riboflavin design. This is an ingester reading of the plots, not a claim made by the paper.

Examples

Using these tables to set expectations for a driver screen

Suppose a marketing-mix screen has a design like (E): many candidate drivers loading on a handful of latent factors, such as macro conditions and seasonality. The tables say:

  • Plain Lasso will rarely put even the top 10% of true drivers first without a false one (≤0.39).
  • Subsampling alone helps moderately.
  • Randomised penalties help most.

For a near-orthogonal design like (A), stability selection buys little power. Its value there is the error bound, not the ranking.

Connections

See Also